diff --git a/idea/src/jet/lang/Library.jet b/idea/src/jet/lang/Library.jet index e20955439c9..212dbd82d92 100644 --- a/idea/src/jet/lang/Library.jet +++ b/idea/src/jet/lang/Library.jet @@ -38,13 +38,13 @@ class IntRange : Range, Iterable { } class Number { - val d : Double - val f : Float - val l : Long - val i : Int - val c : Char - val s : Short - val b : Byte + val dbl : Double + val flt : Float + val lng : Long + val int : Int + val chr : Char + val sht : Short + val byt : Byte } class Double : Number, Comparable { diff --git a/idea/src/org/jetbrains/jet/lexer/Jet.flex b/idea/src/org/jetbrains/jet/lexer/Jet.flex index 41ea7b7c0fc..271d7867c0e 100644 --- a/idea/src/org/jetbrains/jet/lexer/Jet.flex +++ b/idea/src/org/jetbrains/jet/lexer/Jet.flex @@ -42,17 +42,19 @@ HEX_INTEGER_LITERAL=0[Xx]({HEX_DIGIT})* BIN_INTEGER_LITERAL=0[Bb]({DIGIT})* LONG_LITERAL=({INTEGER_LITERAL})[Ll] -FLOAT_LITERAL=(({FLOATING_POINT_LITERAL1})[Ff])|(({FLOATING_POINT_LITERAL2})[Ff])|(({FLOATING_POINT_LITERAL3})[Ff])|(({FLOATING_POINT_LITERAL4})[Ff]) -DOUBLE_LITERAL=(({FLOATING_POINT_LITERAL1})[Dd]?)|(({FLOATING_POINT_LITERAL2})[Dd]?)|(({FLOATING_POINT_LITERAL3})[Dd]?)|(({FLOATING_POINT_LITERAL4})[Dd]) +//FLOAT_LITERAL=(({FLOATING_POINT_LITERAL1})[Ff])|(({FLOATING_POINT_LITERAL2})[Ff])|(({FLOATING_POINT_LITERAL3})[Ff])|(({FLOATING_POINT_LITERAL4})[Ff]) +//DOUBLE_LITERAL=(({FLOATING_POINT_LITERAL1})[Dd]?)|(({FLOATING_POINT_LITERAL2})[Dd]?)|(({FLOATING_POINT_LITERAL3})[Dd]?)|(({FLOATING_POINT_LITERAL4})[Dd]) +DOUBLE_LITERAL={FLOATING_POINT_LITERAL1}|{FLOATING_POINT_LITERAL2}|{FLOATING_POINT_LITERAL3}|{FLOATING_POINT_LITERAL4} FLOATING_POINT_LITERAL1=({DIGIT})+"."({DIGIT})+({EXPONENT_PART})? FLOATING_POINT_LITERAL2="."({DIGIT})+({EXPONENT_PART})? FLOATING_POINT_LITERAL3=({DIGIT})+({EXPONENT_PART}) FLOATING_POINT_LITERAL4=({DIGIT})+ EXPONENT_PART=[Ee]["+""-"]?({DIGIT})* HEX_FLOAT_LITERAL={HEX_SIGNIFICAND}{BINARY_EXPONENT}[Ff] -HEX_DOUBLE_LITERAL={HEX_SIGNIFICAND}{BINARY_EXPONENT}[Dd]? +//HEX_DOUBLE_LITERAL={HEX_SIGNIFICAND}{BINARY_EXPONENT}[Dd]? +HEX_DOUBLE_LITERAL={HEX_SIGNIFICAND}{BINARY_EXPONENT}? BINARY_EXPONENT=[Pp][+-]?{DIGIT}+ -HEX_SIGNIFICAND={HEX_INTEGER_LITERAL}|{HEX_INTEGER_LITERAL}.|0[Xx]{HEX_DIGIT}*.{HEX_DIGIT}+ +HEX_SIGNIFICAND={HEX_INTEGER_LITERAL}|{HEX_INTEGER_LITERAL}\.|0[Xx]{HEX_DIGIT}*\.{HEX_DIGIT}+ CHARACTER_LITERAL="'"([^\\\'\n]|{ESCAPE_SEQUENCE})*("'"|\\)? // TODO: introduce symbols (e.g. 'foo) as another way to write string literals @@ -76,10 +78,10 @@ RAW_STRING_LITERAL = {THREE_QUO} {QUO_STRING_CHAR}* {THREE_QUO}? {INTEGER_LITERAL}\.\. { yypushback(2); return JetTokens.INTEGER_LITERAL; } {INTEGER_LITERAL} { return JetTokens.INTEGER_LITERAL; } - {LONG_LITERAL} { return JetTokens.LONG_LITERAL; } +// {LONG_LITERAL} { return JetTokens.LONG_LITERAL; } - {FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } - {HEX_FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } +// {FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } +// {HEX_FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } {DOUBLE_LITERAL} { return JetTokens.FLOAT_LITERAL; } {HEX_DOUBLE_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 d286218bdd8..5a09986d6b4 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 3/5/11 4:42 PM */ +/* The following code was generated by JFlex 1.4.3 on 3/16/11 3:06 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 3/5/11 4:42 PM from the specification file + * on 3/16/11 3:06 PM from the specification file * /Users/abreslav/work/jet/idea/src/org/jetbrains/jet/lexer/Jet.flex */ class _JetLexer implements FlexLexer { @@ -37,96 +37,96 @@ class _JetLexer implements FlexLexer { * Translates characters to character classes */ private static final String ZZ_CMAP_PACKED = - "\11\5\1\3\1\13\1\0\1\3\1\0\16\5\4\0\1\3\1\61"+ - "\1\27\1\102\1\7\1\71\1\65\1\25\1\76\1\77\1\12\1\62"+ - "\1\101\1\23\1\21\1\11\1\14\11\1\1\70\1\100\1\63\1\60"+ - "\1\64\1\67\1\10\1\2\1\16\1\2\1\20\1\22\1\20\5\4"+ - "\1\17\3\4\1\24\3\4\1\55\3\4\1\15\2\4\1\72\1\26"+ - "\1\73\1\0\1\4\1\6\1\31\1\47\1\36\1\57\1\33\1\46"+ - "\1\4\1\52\1\41\1\50\1\54\1\53\1\32\1\30\1\42\1\35"+ - "\1\4\1\44\1\34\1\40\1\43\1\56\1\51\1\37\1\45\1\4"+ - "\1\74\1\66\1\75\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\24\4\1\0\54\4\1\0\46\4\1\0\5\4\4\0"+ - "\202\4\1\0\4\5\3\0\105\4\1\0\46\4\2\0\2\4\6\0"+ - "\20\4\41\0\46\4\2\0\1\4\7\0\47\4\11\0\21\5\1\0"+ - "\27\5\1\0\3\5\1\0\1\5\1\0\2\5\1\0\1\5\13\0"+ - "\33\4\5\0\3\4\15\0\4\5\14\0\6\5\13\0\32\4\5\0"+ - "\13\4\16\5\7\0\12\5\4\0\2\4\1\5\143\4\1\0\1\4"+ - "\10\5\1\0\6\5\2\4\2\5\1\0\4\5\2\4\12\5\3\4"+ - "\2\0\1\4\17\0\1\5\1\4\1\5\36\4\33\5\2\0\3\4"+ - "\60\0\46\4\13\5\1\4\u014f\0\3\5\66\4\2\0\1\5\1\4"+ - "\20\5\2\0\1\4\4\5\3\0\12\4\2\5\2\0\12\5\21\0"+ - "\3\5\1\0\10\4\2\0\2\4\2\0\26\4\1\0\7\4\1\0"+ - "\1\4\3\0\4\4\2\0\1\5\1\4\7\5\2\0\2\5\2\0"+ - "\3\5\11\0\1\5\4\0\2\4\1\0\3\4\2\5\2\0\12\5"+ - "\4\4\15\0\3\5\1\0\6\4\4\0\2\4\2\0\26\4\1\0"+ - "\7\4\1\0\2\4\1\0\2\4\1\0\2\4\2\0\1\5\1\0"+ - "\5\5\4\0\2\5\2\0\3\5\13\0\4\4\1\0\1\4\7\0"+ - "\14\5\3\4\14\0\3\5\1\0\11\4\1\0\3\4\1\0\26\4"+ - "\1\0\7\4\1\0\2\4\1\0\5\4\2\0\1\5\1\4\10\5"+ - "\1\0\3\5\1\0\3\5\2\0\1\4\17\0\2\4\2\5\2\0"+ - "\12\5\1\0\1\4\17\0\3\5\1\0\10\4\2\0\2\4\2\0"+ - "\26\4\1\0\7\4\1\0\2\4\1\0\5\4\2\0\1\5\1\4"+ - "\6\5\3\0\2\5\2\0\3\5\10\0\2\5\4\0\2\4\1\0"+ - "\3\4\4\0\12\5\1\0\1\4\20\0\1\5\1\4\1\0\6\4"+ - "\3\0\3\4\1\0\4\4\3\0\2\4\1\0\1\4\1\0\2\4"+ - "\3\0\2\4\3\0\3\4\3\0\10\4\1\0\3\4\4\0\5\5"+ - "\3\0\3\5\1\0\4\5\11\0\1\5\17\0\11\5\11\0\1\4"+ - "\7\0\3\5\1\0\10\4\1\0\3\4\1\0\27\4\1\0\12\4"+ - "\1\0\5\4\4\0\7\5\1\0\3\5\1\0\4\5\7\0\2\5"+ - "\11\0\2\4\4\0\12\5\22\0\2\5\1\0\10\4\1\0\3\4"+ - "\1\0\27\4\1\0\12\4\1\0\5\4\2\0\1\5\1\4\7\5"+ - "\1\0\3\5\1\0\4\5\7\0\2\5\7\0\1\4\1\0\2\4"+ - "\4\0\12\5\22\0\2\5\1\0\10\4\1\0\3\4\1\0\27\4"+ - "\1\0\20\4\4\0\6\5\2\0\3\5\1\0\4\5\11\0\1\5"+ - "\10\0\2\4\4\0\12\5\22\0\2\5\1\0\22\4\3\0\30\4"+ - "\1\0\11\4\1\0\1\4\2\0\7\4\3\0\1\5\4\0\6\5"+ - "\1\0\1\5\1\0\10\5\22\0\2\5\15\0\60\4\1\5\2\4"+ - "\7\5\4\0\10\4\10\5\1\0\12\5\47\0\2\4\1\0\1\4"+ - "\2\0\2\4\1\0\1\4\2\0\1\4\6\0\4\4\1\0\7\4"+ - "\1\0\3\4\1\0\1\4\1\0\1\4\2\0\2\4\1\0\4\4"+ - "\1\5\2\4\6\5\1\0\2\5\1\4\2\0\5\4\1\0\1\4"+ - "\1\0\6\5\2\0\12\5\2\0\2\4\42\0\1\4\27\0\2\5"+ - "\6\0\12\5\13\0\1\5\1\0\1\5\1\0\1\5\4\0\2\5"+ - "\10\4\1\0\42\4\6\0\24\5\1\0\2\5\4\4\4\0\10\5"+ - "\1\0\44\5\11\0\1\5\71\0\42\4\1\0\5\4\1\0\2\4"+ - "\1\0\7\5\3\0\4\5\6\0\12\5\6\0\6\4\4\5\106\0"+ - "\46\4\12\0\51\4\7\0\132\4\5\0\104\4\5\0\122\4\6\0"+ - "\7\4\1\0\77\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0"+ - "\1\4\1\0\4\4\2\0\47\4\1\0\1\4\1\0\4\4\2\0"+ - "\37\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0\1\4\1\0"+ - "\4\4\2\0\7\4\1\0\7\4\1\0\27\4\1\0\37\4\1\0"+ - "\1\4\1\0\4\4\2\0\7\4\1\0\47\4\1\0\23\4\16\0"+ - "\11\5\56\0\125\4\14\0\u026c\4\2\0\10\4\12\0\32\4\5\0"+ - "\113\4\3\0\3\4\17\0\15\4\1\0\4\4\3\5\13\0\22\4"+ - "\3\5\13\0\22\4\2\5\14\0\15\4\1\0\3\4\1\0\2\5"+ - "\14\0\64\4\40\5\3\0\1\4\3\0\2\4\1\5\2\0\12\5"+ - "\41\0\3\5\2\0\12\5\6\0\130\4\10\0\51\4\1\5\126\0"+ - "\35\4\3\0\14\5\4\0\14\5\12\0\12\5\36\4\2\0\5\4"+ - "\u038b\0\154\4\224\0\234\4\4\0\132\4\6\0\26\4\2\0\6\4"+ - "\2\0\46\4\2\0\6\4\2\0\10\4\1\0\1\4\1\0\1\4"+ - "\1\0\1\4\1\0\37\4\2\0\65\4\1\0\7\4\1\0\1\4"+ - "\3\0\3\4\1\0\7\4\3\0\4\4\2\0\6\4\4\0\15\4"+ - "\5\0\3\4\1\0\7\4\17\0\4\5\32\0\5\5\20\0\2\4"+ - "\23\0\1\4\13\0\4\5\6\0\6\5\1\0\1\4\15\0\1\4"+ - "\40\0\22\4\36\0\15\5\4\0\1\5\3\0\6\5\27\0\1\4"+ - "\4\0\1\4\2\0\12\4\1\0\1\4\3\0\5\4\6\0\1\4"+ - "\1\0\1\4\1\0\1\4\1\0\4\4\1\0\3\4\1\0\7\4"+ - "\3\0\3\4\5\0\5\4\26\0\44\4\u0e81\0\3\4\31\0\11\4"+ - "\6\5\1\0\5\4\2\0\5\4\4\0\126\4\2\0\2\5\2\0"+ - "\3\4\1\0\137\4\5\0\50\4\4\0\136\4\21\0\30\4\70\0"+ - "\20\4\u0200\0\u19b6\4\112\0\u51a6\4\132\0\u048d\4\u0773\0\u2ba4\4\u215c\0"+ - "\u012e\4\2\0\73\4\225\0\7\4\14\0\5\4\5\0\1\4\1\5"+ - "\12\4\1\0\15\4\1\0\5\4\1\0\1\4\1\0\2\4\1\0"+ - "\2\4\1\0\154\4\41\0\u016b\4\22\0\100\4\2\0\66\4\50\0"+ - "\15\4\3\0\20\5\20\0\4\5\17\0\2\4\30\0\3\4\31\0"+ - "\1\4\6\0\5\4\1\0\207\4\2\0\1\5\4\0\1\4\13\0"+ - "\12\5\7\0\32\4\4\0\1\4\1\0\32\4\12\0\132\4\3\0"+ - "\6\4\2\0\6\4\2\0\6\4\2\0\3\4\3\0\2\4\3\0"+ - "\2\4\22\0\3\5\4\0"; + "\11\5\1\3\1\13\1\0\1\3\1\0\16\5\4\0\1\3\1\57"+ + "\1\25\1\100\1\7\1\67\1\63\1\23\1\74\1\75\1\12\1\60"+ + "\1\77\1\21\1\17\1\11\1\14\11\1\1\66\1\76\1\61\1\56"+ + "\1\62\1\65\1\10\1\2\1\16\2\2\1\20\1\2\5\4\1\4"+ + "\3\4\1\22\3\4\1\53\3\4\1\15\2\4\1\70\1\24\1\71"+ + "\1\0\1\4\1\6\1\27\1\45\1\34\1\55\1\31\1\44\1\4"+ + "\1\50\1\37\1\46\1\52\1\51\1\30\1\26\1\40\1\33\1\4"+ + "\1\42\1\32\1\36\1\41\1\54\1\47\1\35\1\43\1\4\1\72"+ + "\1\64\1\73\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\24\4\1\0\54\4\1\0\46\4\1\0\5\4\4\0\202\4"+ + "\1\0\4\5\3\0\105\4\1\0\46\4\2\0\2\4\6\0\20\4"+ + "\41\0\46\4\2\0\1\4\7\0\47\4\11\0\21\5\1\0\27\5"+ + "\1\0\3\5\1\0\1\5\1\0\2\5\1\0\1\5\13\0\33\4"+ + "\5\0\3\4\15\0\4\5\14\0\6\5\13\0\32\4\5\0\13\4"+ + "\16\5\7\0\12\5\4\0\2\4\1\5\143\4\1\0\1\4\10\5"+ + "\1\0\6\5\2\4\2\5\1\0\4\5\2\4\12\5\3\4\2\0"+ + "\1\4\17\0\1\5\1\4\1\5\36\4\33\5\2\0\3\4\60\0"+ + "\46\4\13\5\1\4\u014f\0\3\5\66\4\2\0\1\5\1\4\20\5"+ + "\2\0\1\4\4\5\3\0\12\4\2\5\2\0\12\5\21\0\3\5"+ + "\1\0\10\4\2\0\2\4\2\0\26\4\1\0\7\4\1\0\1\4"+ + "\3\0\4\4\2\0\1\5\1\4\7\5\2\0\2\5\2\0\3\5"+ + "\11\0\1\5\4\0\2\4\1\0\3\4\2\5\2\0\12\5\4\4"+ + "\15\0\3\5\1\0\6\4\4\0\2\4\2\0\26\4\1\0\7\4"+ + "\1\0\2\4\1\0\2\4\1\0\2\4\2\0\1\5\1\0\5\5"+ + "\4\0\2\5\2\0\3\5\13\0\4\4\1\0\1\4\7\0\14\5"+ + "\3\4\14\0\3\5\1\0\11\4\1\0\3\4\1\0\26\4\1\0"+ + "\7\4\1\0\2\4\1\0\5\4\2\0\1\5\1\4\10\5\1\0"+ + "\3\5\1\0\3\5\2\0\1\4\17\0\2\4\2\5\2\0\12\5"+ + "\1\0\1\4\17\0\3\5\1\0\10\4\2\0\2\4\2\0\26\4"+ + "\1\0\7\4\1\0\2\4\1\0\5\4\2\0\1\5\1\4\6\5"+ + "\3\0\2\5\2\0\3\5\10\0\2\5\4\0\2\4\1\0\3\4"+ + "\4\0\12\5\1\0\1\4\20\0\1\5\1\4\1\0\6\4\3\0"+ + "\3\4\1\0\4\4\3\0\2\4\1\0\1\4\1\0\2\4\3\0"+ + "\2\4\3\0\3\4\3\0\10\4\1\0\3\4\4\0\5\5\3\0"+ + "\3\5\1\0\4\5\11\0\1\5\17\0\11\5\11\0\1\4\7\0"+ + "\3\5\1\0\10\4\1\0\3\4\1\0\27\4\1\0\12\4\1\0"+ + "\5\4\4\0\7\5\1\0\3\5\1\0\4\5\7\0\2\5\11\0"+ + "\2\4\4\0\12\5\22\0\2\5\1\0\10\4\1\0\3\4\1\0"+ + "\27\4\1\0\12\4\1\0\5\4\2\0\1\5\1\4\7\5\1\0"+ + "\3\5\1\0\4\5\7\0\2\5\7\0\1\4\1\0\2\4\4\0"+ + "\12\5\22\0\2\5\1\0\10\4\1\0\3\4\1\0\27\4\1\0"+ + "\20\4\4\0\6\5\2\0\3\5\1\0\4\5\11\0\1\5\10\0"+ + "\2\4\4\0\12\5\22\0\2\5\1\0\22\4\3\0\30\4\1\0"+ + "\11\4\1\0\1\4\2\0\7\4\3\0\1\5\4\0\6\5\1\0"+ + "\1\5\1\0\10\5\22\0\2\5\15\0\60\4\1\5\2\4\7\5"+ + "\4\0\10\4\10\5\1\0\12\5\47\0\2\4\1\0\1\4\2\0"+ + "\2\4\1\0\1\4\2\0\1\4\6\0\4\4\1\0\7\4\1\0"+ + "\3\4\1\0\1\4\1\0\1\4\2\0\2\4\1\0\4\4\1\5"+ + "\2\4\6\5\1\0\2\5\1\4\2\0\5\4\1\0\1\4\1\0"+ + "\6\5\2\0\12\5\2\0\2\4\42\0\1\4\27\0\2\5\6\0"+ + "\12\5\13\0\1\5\1\0\1\5\1\0\1\5\4\0\2\5\10\4"+ + "\1\0\42\4\6\0\24\5\1\0\2\5\4\4\4\0\10\5\1\0"+ + "\44\5\11\0\1\5\71\0\42\4\1\0\5\4\1\0\2\4\1\0"+ + "\7\5\3\0\4\5\6\0\12\5\6\0\6\4\4\5\106\0\46\4"+ + "\12\0\51\4\7\0\132\4\5\0\104\4\5\0\122\4\6\0\7\4"+ + "\1\0\77\4\1\0\1\4\1\0\4\4\2\0\7\4\1\0\1\4"+ + "\1\0\4\4\2\0\47\4\1\0\1\4\1\0\4\4\2\0\37\4"+ + "\1\0\1\4\1\0\4\4\2\0\7\4\1\0\1\4\1\0\4\4"+ + "\2\0\7\4\1\0\7\4\1\0\27\4\1\0\37\4\1\0\1\4"+ + "\1\0\4\4\2\0\7\4\1\0\47\4\1\0\23\4\16\0\11\5"+ + "\56\0\125\4\14\0\u026c\4\2\0\10\4\12\0\32\4\5\0\113\4"+ + "\3\0\3\4\17\0\15\4\1\0\4\4\3\5\13\0\22\4\3\5"+ + "\13\0\22\4\2\5\14\0\15\4\1\0\3\4\1\0\2\5\14\0"+ + "\64\4\40\5\3\0\1\4\3\0\2\4\1\5\2\0\12\5\41\0"+ + "\3\5\2\0\12\5\6\0\130\4\10\0\51\4\1\5\126\0\35\4"+ + "\3\0\14\5\4\0\14\5\12\0\12\5\36\4\2\0\5\4\u038b\0"+ + "\154\4\224\0\234\4\4\0\132\4\6\0\26\4\2\0\6\4\2\0"+ + "\46\4\2\0\6\4\2\0\10\4\1\0\1\4\1\0\1\4\1\0"+ + "\1\4\1\0\37\4\2\0\65\4\1\0\7\4\1\0\1\4\3\0"+ + "\3\4\1\0\7\4\3\0\4\4\2\0\6\4\4\0\15\4\5\0"+ + "\3\4\1\0\7\4\17\0\4\5\32\0\5\5\20\0\2\4\23\0"+ + "\1\4\13\0\4\5\6\0\6\5\1\0\1\4\15\0\1\4\40\0"+ + "\22\4\36\0\15\5\4\0\1\5\3\0\6\5\27\0\1\4\4\0"+ + "\1\4\2\0\12\4\1\0\1\4\3\0\5\4\6\0\1\4\1\0"+ + "\1\4\1\0\1\4\1\0\4\4\1\0\3\4\1\0\7\4\3\0"+ + "\3\4\5\0\5\4\26\0\44\4\u0e81\0\3\4\31\0\11\4\6\5"+ + "\1\0\5\4\2\0\5\4\4\0\126\4\2\0\2\5\2\0\3\4"+ + "\1\0\137\4\5\0\50\4\4\0\136\4\21\0\30\4\70\0\20\4"+ + "\u0200\0\u19b6\4\112\0\u51a6\4\132\0\u048d\4\u0773\0\u2ba4\4\u215c\0\u012e\4"+ + "\2\0\73\4\225\0\7\4\14\0\5\4\5\0\1\4\1\5\12\4"+ + "\1\0\15\4\1\0\5\4\1\0\1\4\1\0\2\4\1\0\2\4"+ + "\1\0\154\4\41\0\u016b\4\22\0\100\4\2\0\66\4\50\0\15\4"+ + "\3\0\20\5\20\0\4\5\17\0\2\4\30\0\3\4\31\0\1\4"+ + "\6\0\5\4\1\0\207\4\2\0\1\5\4\0\1\4\13\0\12\5"+ + "\7\0\32\4\4\0\1\4\1\0\32\4\12\0\132\4\3\0\6\4"+ + "\2\0\6\4\2\0\6\4\2\0\3\4\3\0\2\4\3\0\2\4"+ + "\22\0\3\5\4\0"; /** * Translates characters to character classes @@ -143,23 +143,23 @@ class _JetLexer implements FlexLexer { "\1\6\1\7\1\2\1\10\1\11\1\12\1\13\16\3"+ "\1\14\1\15\1\16\1\17\1\20\2\1\1\21\1\22"+ "\1\23\1\24\1\25\1\26\1\27\1\30\1\31\1\32"+ - "\1\33\1\34\1\35\1\36\1\0\1\36\1\0\1\37"+ - "\1\0\1\40\1\0\1\41\1\42\1\43\1\44\1\45"+ - "\1\0\2\2\1\36\1\46\1\47\1\50\1\51\2\12"+ - "\3\13\3\3\1\52\7\3\1\53\1\54\1\55\11\3"+ - "\1\56\1\57\1\60\1\0\1\61\1\62\1\63\1\64"+ - "\1\65\1\66\1\67\1\70\1\71\1\72\1\73\1\36"+ - "\1\3\2\0\1\43\1\74\2\0\1\35\3\0\1\13"+ - "\1\75\1\3\1\76\6\3\1\77\6\3\1\100\1\101"+ - "\4\3\1\102\1\103\1\104\1\105\1\106\1\107\1\37"+ - "\1\40\1\0\2\74\1\0\1\36\2\0\1\3\1\110"+ - "\1\3\1\111\2\3\1\112\1\113\1\114\5\3\1\115"+ - "\1\3\1\116\1\43\1\0\1\36\1\0\3\3\1\117"+ - "\1\3\1\120\2\3\1\121\1\122\1\123\1\75\3\3"+ - "\1\124\1\125\1\126\5\3\1\127\1\130\1\131"; + "\1\33\1\34\1\0\1\35\1\0\1\36\1\0\1\37"+ + "\1\0\1\40\1\41\1\42\1\43\1\44\1\35\2\2"+ + "\1\35\1\45\1\46\1\47\1\50\2\12\3\13\3\3"+ + "\1\51\7\3\1\52\1\53\1\54\11\3\1\55\1\56"+ + "\1\57\1\0\1\60\1\61\1\62\1\63\1\64\1\65"+ + "\1\66\1\67\1\70\1\71\1\72\1\35\1\3\2\0"+ + "\1\42\1\73\1\0\1\35\2\0\1\13\1\74\1\3"+ + "\1\75\6\3\1\76\6\3\1\77\1\100\4\3\1\101"+ + "\1\102\1\103\1\104\1\105\1\106\1\36\1\37\1\0"+ + "\2\73\1\35\2\0\1\3\1\107\1\3\1\110\2\3"+ + "\1\111\1\112\1\113\5\3\1\114\1\3\1\115\1\42"+ + "\2\0\3\3\1\116\1\3\1\117\2\3\1\120\1\121"+ + "\1\122\1\74\3\3\1\123\1\124\1\125\5\3\1\126"+ + "\1\127\1\130"; private static int [] zzUnpackAction() { - int [] result = new int[210]; + int [] result = new int[204]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -184,36 +184,35 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\103\0\206\0\311\0\u010c\0\u014f\0\u0192\0\u01d5"+ - "\0\u0218\0\u025b\0\u029e\0\u02e1\0\u0324\0\u0367\0\u03aa\0\u03ed"+ - "\0\u0430\0\u0473\0\u04b6\0\u04f9\0\u053c\0\u057f\0\u05c2\0\u0605"+ - "\0\u0648\0\u068b\0\u06ce\0\u0711\0\u0754\0\u0797\0\u07da\0\u081d"+ - "\0\u0860\0\u08a3\0\u08e6\0\u0929\0\u096c\0\103\0\u09af\0\103"+ - "\0\103\0\103\0\103\0\103\0\103\0\103\0\103\0\103"+ - "\0\103\0\103\0\u09f2\0\u0a35\0\u0a78\0\u0abb\0\u0afe\0\u0b41"+ - "\0\u0b84\0\103\0\u0bc7\0\u0c0a\0\103\0\103\0\u0c4d\0\u0c90"+ - "\0\u0cd3\0\u0d16\0\103\0\103\0\103\0\103\0\103\0\u0d59"+ - "\0\u0d9c\0\u0ddf\0\u0e22\0\u0e65\0\u0ea8\0\u0eeb\0\311\0\u0f2e"+ - "\0\u0f71\0\u0fb4\0\u0ff7\0\u103a\0\u107d\0\u10c0\0\311\0\311"+ - "\0\311\0\u1103\0\u1146\0\u1189\0\u11cc\0\u120f\0\u1252\0\u1295"+ - "\0\u12d8\0\u131b\0\311\0\u135e\0\103\0\u13a1\0\u13e4\0\103"+ - "\0\103\0\103\0\103\0\103\0\103\0\103\0\103\0\103"+ - "\0\103\0\u1427\0\103\0\u146a\0\u14ad\0\u14f0\0\u1533\0\u1576"+ - "\0\u15b9\0\u15b9\0\u15fc\0\u163f\0\u1682\0\103\0\u16c5\0\u1708"+ - "\0\311\0\u174b\0\u178e\0\u17d1\0\u1814\0\u1857\0\u189a\0\311"+ - "\0\u18dd\0\u1920\0\u1963\0\u19a6\0\u19e9\0\u1a2c\0\311\0\311"+ - "\0\u1a6f\0\u1ab2\0\u1af5\0\u1b38\0\311\0\311\0\103\0\103"+ - "\0\103\0\103\0\103\0\103\0\u1b7b\0\u1bbe\0\103\0\u1c01"+ - "\0\u1c44\0\u1c87\0\u1cca\0\u1d0d\0\311\0\u1d50\0\311\0\u1d93"+ - "\0\u1dd6\0\311\0\u1e19\0\311\0\u1e5c\0\u1e9f\0\u1ee2\0\u1f25"+ - "\0\u1f68\0\311\0\u1fab\0\311\0\103\0\u1fee\0\u15b9\0\u2031"+ - "\0\u2074\0\u20b7\0\u20fa\0\311\0\u213d\0\311\0\u2180\0\u21c3"+ - "\0\311\0\311\0\311\0\103\0\u2206\0\u2249\0\u228c\0\311"+ - "\0\311\0\311\0\u22cf\0\u2312\0\u2355\0\u2398\0\u23db\0\311"+ - "\0\311\0\311"; + "\0\0\0\101\0\202\0\303\0\u0104\0\u0145\0\u0186\0\u01c7"+ + "\0\u0208\0\u0249\0\u028a\0\u02cb\0\u030c\0\u034d\0\u038e\0\u03cf"+ + "\0\u0410\0\u0451\0\u0492\0\u04d3\0\u0514\0\u0555\0\u0596\0\u05d7"+ + "\0\u0618\0\u0659\0\u069a\0\u06db\0\u071c\0\u075d\0\u079e\0\u07df"+ + "\0\u0820\0\u0861\0\u08a2\0\u08e3\0\u0924\0\101\0\u0965\0\101"+ + "\0\101\0\101\0\101\0\101\0\101\0\101\0\101\0\101"+ + "\0\u09a6\0\u09e7\0\u0a28\0\u0a69\0\u0aaa\0\u0aeb\0\u0b2c\0\101"+ + "\0\u0b6d\0\u0bae\0\101\0\101\0\u0bef\0\u0c30\0\u0c71\0\u0cb2"+ + "\0\101\0\101\0\101\0\101\0\101\0\u0cf3\0\u0d34\0\u0d75"+ + "\0\u0db6\0\u0df7\0\u0e38\0\u0e79\0\303\0\u0eba\0\u0efb\0\u0f3c"+ + "\0\u0f7d\0\u0fbe\0\u0fff\0\u1040\0\303\0\303\0\303\0\u1081"+ + "\0\u10c2\0\u1103\0\u1144\0\u1185\0\u11c6\0\u1207\0\u1248\0\u1289"+ + "\0\303\0\u12ca\0\101\0\u130b\0\u134c\0\101\0\101\0\101"+ + "\0\101\0\101\0\101\0\101\0\101\0\101\0\101\0\u138d"+ + "\0\101\0\u13ce\0\u140f\0\u1450\0\u1491\0\u14d2\0\u1513\0\u1554"+ + "\0\u1595\0\101\0\u15d6\0\u1617\0\303\0\u1658\0\u1699\0\u16da"+ + "\0\u171b\0\u175c\0\u179d\0\303\0\u17de\0\u181f\0\u1860\0\u18a1"+ + "\0\u18e2\0\u1923\0\303\0\303\0\u1964\0\u19a5\0\u19e6\0\u1a27"+ + "\0\303\0\303\0\101\0\101\0\101\0\101\0\101\0\101"+ + "\0\u1a68\0\u1aa9\0\101\0\u1aea\0\u138d\0\u1b2b\0\u1b6c\0\303"+ + "\0\u1bad\0\303\0\u1bee\0\u1c2f\0\303\0\u1c70\0\303\0\u1cb1"+ + "\0\u1cf2\0\u1d33\0\u1d74\0\u1db5\0\303\0\u1df6\0\303\0\101"+ + "\0\u1e37\0\u1e78\0\u1eb9\0\u1efa\0\u1f3b\0\303\0\u1f7c\0\303"+ + "\0\u1fbd\0\u1ffe\0\303\0\303\0\303\0\101\0\u203f\0\u2080"+ + "\0\u20c1\0\303\0\303\0\303\0\u2102\0\u2143\0\u2184\0\u21c5"+ + "\0\u2206\0\303\0\303\0\303"; private static int [] zzUnpackRowMap() { - int [] result = new int[210]; + int [] result = new int[204]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -237,235 +236,221 @@ 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\10\1\11\1\12\1\5\1\13\4\4\1\14\1\4"+ + "\1\10\1\11\1\12\1\5\1\13\2\4\1\14\1\4"+ "\1\15\1\4\1\16\1\2\1\17\1\20\1\21\1\4"+ "\1\22\2\4\1\23\1\4\1\24\1\25\1\26\1\4"+ "\1\27\1\4\1\30\1\31\1\4\1\32\3\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\1\55\1\56\1\57\1\60\104\0\1\3\12\0"+ - "\1\3\2\0\1\61\1\62\1\63\1\64\10\0\1\64"+ - "\12\0\1\62\4\0\1\61\3\0\1\62\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ + "\1\54\1\55\1\56\1\57\1\60\102\0\1\3\12\0"+ + "\1\3\2\0\1\61\1\62\10\0\1\62\50\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ "\1\0\1\4\3\0\30\4\26\0\1\5\7\0\1\5"+ - "\71\0\1\65\1\0\1\65\2\0\1\65\5\0\4\65"+ - "\1\0\1\65\1\0\1\65\3\0\30\65\24\0\1\4"+ - "\1\66\1\0\1\66\1\4\1\67\1\66\4\0\1\4"+ - "\4\66\1\0\1\66\1\0\1\66\3\0\30\66\25\0"+ - "\1\70\1\0\1\70\1\0\1\71\1\70\1\72\4\0"+ - "\4\70\1\0\1\70\1\0\1\70\3\0\30\70\34\0"+ - "\1\73\1\74\45\0\1\75\102\0\1\76\23\0\1\77"+ - "\12\0\1\77\1\100\1\101\1\61\1\62\1\63\1\64"+ - "\10\0\1\64\3\0\1\100\6\0\1\62\1\101\3\0"+ - "\1\61\3\0\1\62\24\0\1\102\12\0\1\102\4\0"+ - "\1\103\104\0\1\104\34\0\1\105\3\0\1\106\16\0"+ - "\13\16\1\0\11\16\1\107\1\110\54\16\13\111\1\0"+ - "\12\111\1\112\1\113\53\111\1\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\4\1\114\1\4\1\115\7\4\1\116\14\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\4\4\1\117\23\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\7\4\1\120\13\4"+ - "\1\121\4\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\12\4"+ - "\1\122\10\4\1\123\4\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\14\4\1\124\1\125\4\4\1\126\5\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\4\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\1\127\3\4\1\130\11\4"+ - "\1\131\11\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\17\4"+ - "\1\132\10\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\3\4"+ - "\1\133\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\1\4"+ - "\1\134\10\4\1\135\1\136\14\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\14\4\1\137\13\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\22\4\1\140\5\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\22\4\1\141\5\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\4\1\142\26\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\12\4\1\143\15\4\103\0\1\144\3\0"+ - "\1\145\57\0\1\146\16\0\1\147\102\0\1\150\1\0"+ - "\1\151\100\0\1\152\102\0\1\153\107\0\1\154\103\0"+ - "\1\155\35\0\1\156\46\0\1\157\72\0\1\160\23\0"+ - "\1\102\12\0\1\102\4\0\1\161\62\0\1\162\12\0"+ - "\1\162\3\0\1\62\2\0\1\162\22\0\1\62\10\0"+ - "\1\62\2\0\1\162\21\0\2\65\1\0\2\65\1\163"+ - "\1\65\4\0\5\65\1\0\1\65\1\0\1\65\3\0"+ - "\30\65\24\0\2\66\1\0\2\66\1\0\1\66\4\0"+ - "\5\66\1\0\1\66\1\0\1\66\3\0\30\66\25\0"+ - "\1\164\1\0\1\164\2\0\1\164\5\0\4\164\1\0"+ - "\1\164\1\0\1\164\3\0\30\164\24\0\2\70\1\0"+ - "\2\70\1\0\1\70\4\0\5\70\1\0\1\70\1\0"+ - "\1\70\3\0\30\70\25\0\1\165\1\0\1\165\2\0"+ - "\1\165\5\0\4\165\1\0\1\165\1\0\1\165\3\0"+ - "\30\165\23\0\13\73\1\0\67\73\12\166\1\167\70\166"+ - "\1\0\1\77\12\0\1\77\3\0\1\62\1\170\1\64"+ - "\10\0\1\64\12\0\1\62\10\0\1\62\23\0\1\171"+ - "\2\100\10\171\1\0\1\100\1\171\1\100\1\172\1\100"+ - "\1\173\1\100\1\171\1\174\4\171\1\100\1\171\1\100"+ - "\1\171\1\174\1\100\7\171\2\100\3\171\1\172\3\171"+ - "\1\100\23\171\1\0\1\101\12\0\1\101\2\0\1\61"+ - "\1\0\1\175\31\0\1\61\30\0\1\102\12\0\1\102"+ - "\3\0\1\62\1\0\1\64\10\0\1\64\12\0\1\62"+ - "\10\0\1\62\23\0\13\16\1\0\67\16\13\111\1\0"+ - "\12\111\1\112\1\176\66\111\1\0\67\111\27\0\1\177"+ - "\54\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\2\4\1\200\25\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\21\4\1\201\6\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\23\4\1\202\4\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\10\4\1\203\17\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\4\4\1\204\23\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\205\27\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\4\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\1\4\1\206\26\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\4\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\13\4\1\207\1\4\1\210"+ - "\12\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ - "\5\4\1\0\1\4\1\0\1\4\3\0\5\4\1\211"+ + "\67\0\1\63\1\0\1\63\2\0\1\63\5\0\2\63"+ + "\1\0\1\63\1\0\1\63\3\0\30\63\24\0\1\4"+ + "\1\64\1\0\1\64\1\4\1\65\1\64\4\0\1\4"+ + "\2\64\1\0\1\64\1\0\1\64\3\0\30\64\25\0"+ + "\1\66\1\0\1\66\1\0\1\67\1\66\1\70\4\0"+ + "\2\66\1\0\1\66\1\0\1\66\3\0\30\66\34\0"+ + "\1\71\1\72\43\0\1\73\100\0\1\74\23\0\1\75"+ + "\12\0\1\75\1\76\1\77\1\61\1\62\10\0\1\62"+ + "\3\0\1\76\7\0\1\77\34\0\1\100\12\0\1\100"+ + "\2\0\1\101\102\0\1\102\34\0\1\103\3\0\1\104"+ + "\16\0\13\16\1\0\7\16\1\105\1\106\54\16\13\107"+ + "\1\0\10\107\1\110\1\111\53\107\1\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\1\4\1\112\1\4\1\113\7\4\1\114"+ + "\14\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\4\4\1\115"+ + "\23\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\7\4\1\116"+ + "\13\4\1\117\4\4\24\0\2\4\1\0\2\4\1\0"+ + "\1\4\4\0\3\4\1\0\1\4\1\0\1\4\3\0"+ + "\12\4\1\120\10\4\1\121\4\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\14\4\1\122\1\123\4\4\1\124\5\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\125\3\4\1\126"+ + "\11\4\1\127\11\4\24\0\2\4\1\0\2\4\1\0"+ + "\1\4\4\0\3\4\1\0\1\4\1\0\1\4\3\0"+ + "\17\4\1\130\10\4\24\0\2\4\1\0\2\4\1\0"+ + "\1\4\4\0\3\4\1\0\1\4\1\0\1\4\3\0"+ + "\3\4\1\131\24\4\24\0\2\4\1\0\2\4\1\0"+ + "\1\4\4\0\3\4\1\0\1\4\1\0\1\4\3\0"+ + "\1\4\1\132\10\4\1\133\1\134\14\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\14\4\1\135\13\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\22\4\1\136\5\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\22\4\1\137\5\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\4\1\140\26\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\12\4\1\141\15\4\101\0\1\142"+ + "\3\0\1\143\55\0\1\144\16\0\1\145\100\0\1\146"+ + "\1\0\1\147\76\0\1\150\100\0\1\151\105\0\1\152"+ + "\101\0\1\153\33\0\1\154\46\0\1\155\70\0\1\156"+ + "\23\0\1\100\12\0\1\100\2\0\1\157\62\0\1\160"+ + "\12\0\1\160\4\0\1\160\36\0\1\160\21\0\2\63"+ + "\1\0\2\63\1\161\1\63\4\0\3\63\1\0\1\63"+ + "\1\0\1\63\3\0\30\63\24\0\2\64\1\0\2\64"+ + "\1\0\1\64\4\0\3\64\1\0\1\64\1\0\1\64"+ + "\3\0\30\64\25\0\1\162\1\0\1\162\2\0\1\162"+ + "\5\0\2\162\1\0\1\162\1\0\1\162\3\0\30\162"+ + "\24\0\2\66\1\0\2\66\1\0\1\66\4\0\3\66"+ + "\1\0\1\66\1\0\1\66\3\0\30\66\25\0\1\163"+ + "\1\0\1\163\2\0\1\163\5\0\2\163\1\0\1\163"+ + "\1\0\1\163\3\0\30\163\23\0\13\71\1\0\65\71"+ + "\12\164\1\165\66\164\1\0\1\75\12\0\1\75\2\0"+ + "\1\166\1\62\10\0\1\62\50\0\2\76\11\0\1\76"+ + "\1\0\1\76\1\167\1\76\1\0\1\170\4\0\1\76"+ + "\1\0\1\76\1\0\1\170\1\76\7\0\2\76\7\0"+ + "\1\76\24\0\1\77\12\0\1\77\2\0\1\171\62\0"+ + "\1\100\12\0\1\100\3\0\1\62\10\0\1\62\47\0"+ + "\13\16\1\0\65\16\13\107\1\0\10\107\1\110\1\172"+ + "\66\107\1\0\65\107\25\0\1\173\54\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\2\4\1\174\25\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\21\4\1\175\6\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\23\4\1\176\4\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\10\4\1\177\17\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\4\4\1\200\23\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\4\0\3\4\1\0\1\4\1\0"+ + "\1\4\3\0\1\201\27\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\4\0\3\4\1\0\1\4\1\0\1\4"+ + "\3\0\1\4\1\202\26\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\4\0\3\4\1\0\1\4\1\0\1\4"+ + "\3\0\13\4\1\203\1\4\1\204\12\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\5\4\1\205\22\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\4\0\3\4\1\0\1\4"+ + "\1\0\1\4\3\0\11\4\1\206\2\4\1\207\13\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\20\4\1\210\7\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\10\4\1\211\17\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\23\4\1\212\4\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\14\4\1\213\13\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\214\27\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\215\24\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\216\5\4\1\217"+ + "\16\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\11\4\1\220"+ + "\16\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\14\4\1\221"+ + "\6\4\1\222\4\4\101\0\1\223\50\0\1\224\3\0"+ + "\1\225\124\0\1\226\23\0\1\160\12\0\1\160\65\0"+ + "\2\162\1\0\2\162\1\227\1\162\4\0\3\162\1\0"+ + "\1\162\1\0\1\162\3\0\30\162\24\0\2\163\1\0"+ + "\2\163\1\230\1\163\4\0\3\163\1\0\1\163\1\0"+ + "\1\163\3\0\30\163\23\0\12\164\1\231\66\164\11\232"+ + "\1\233\1\165\66\232\1\0\1\100\12\0\1\100\65\0"+ + "\2\234\11\0\1\234\1\0\1\234\1\157\1\234\1\0"+ + "\1\170\4\0\1\234\1\0\1\234\1\0\1\170\1\234"+ + "\7\0\2\234\7\0\1\234\24\0\1\160\12\0\1\160"+ + "\4\0\1\235\36\0\1\235\37\0\1\157\61\0\25\173"+ + "\1\236\53\173\1\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\237\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\23\4"+ + "\1\240\4\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\241\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\242\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\10\4"+ + "\1\243\17\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\4\4"+ + "\1\244\23\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\245\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\246\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\4\4"+ + "\1\247\23\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\12\4"+ + "\1\250\15\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\251\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\13\4"+ + "\1\252\14\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\4\4"+ + "\1\253\23\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\1\4"+ + "\1\254\26\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\1\255"+ + "\27\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\23\4\1\256"+ + "\4\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\4\4\1\257"+ + "\23\4\23\0\11\164\1\260\1\231\66\164\12\232\1\261"+ + "\66\232\1\0\2\234\11\0\1\234\1\0\1\234\1\0"+ + "\1\234\1\0\1\170\4\0\1\234\1\0\1\234\1\0"+ + "\1\170\1\234\7\0\2\234\7\0\1\234\23\0\25\173"+ + "\1\262\53\173\1\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\4\4"+ + "\1\263\23\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\4\0\3\4\1\0\1\4\1\0\1\4\3\0\1\264"+ + "\27\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\11\4\1\265"+ + "\16\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\4\4\1\266"+ + "\23\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\12\4\1\267"+ + "\15\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\21\4\1\270"+ + "\6\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\6\4\1\271"+ + "\21\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\14\4\1\272"+ + "\13\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\3\4\1\273"+ + "\24\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\24\4\1\274"+ + "\3\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\3\4\1\275"+ + "\24\4\23\0\11\232\1\233\1\261\66\232\25\173\1\276"+ + "\53\173\1\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\5\4\1\277"+ "\22\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ - "\5\4\1\0\1\4\1\0\1\4\3\0\11\4\1\212"+ - "\2\4\1\213\13\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\20\4\1\214\7\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\10\4\1\215\17\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\23\4\1\216\4\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\14\4\1\217\13\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\220\27\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\3\4"+ - "\1\221\24\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\4\0\5\4\1\0\1\4\1\0\1\4\3\0\3\4"+ - "\1\222\5\4\1\223\16\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\11\4\1\224\16\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\14\4\1\225\6\4\1\226\4\4\103\0\1\227"+ - "\52\0\1\230\3\0\1\231\126\0\1\232\23\0\1\162"+ - "\12\0\1\162\3\0\1\62\25\0\1\62\10\0\1\62"+ - "\24\0\2\164\1\0\2\164\1\233\1\164\4\0\5\164"+ - "\1\0\1\164\1\0\1\164\3\0\30\164\24\0\2\165"+ - "\1\0\2\165\1\234\1\165\4\0\5\165\1\0\1\165"+ - "\1\0\1\165\3\0\30\165\23\0\12\166\1\235\70\166"+ - "\11\236\1\237\1\167\70\236\1\0\1\102\12\0\1\102"+ - "\67\0\2\171\11\0\1\171\1\0\1\171\1\0\1\171"+ - "\1\0\1\171\1\0\1\240\4\0\1\171\1\0\1\171"+ - "\1\0\1\240\1\171\7\0\2\171\7\0\1\171\24\0"+ - "\2\171\11\0\1\171\1\0\1\171\1\0\1\171\1\161"+ - "\1\171\1\0\1\240\4\0\1\171\1\0\1\171\1\0"+ - "\1\240\1\171\7\0\2\171\7\0\1\171\24\0\1\241"+ - "\1\171\11\0\1\241\1\0\1\171\1\0\1\171\1\0"+ - "\1\171\1\242\1\240\4\0\1\171\1\0\1\171\1\0"+ - "\1\240\1\171\7\0\2\171\7\0\1\171\2\0\1\242"+ - "\41\0\1\161\61\0\27\177\1\243\53\177\1\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\244\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\23\4\1\245\4\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\246\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\247\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\10\4\1\250\17\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\4\4\1\251\23\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\252\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\253\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\4\4\1\254\23\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\12\4\1\255\15\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\256\24\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\13\4\1\257\14\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\4\4\1\260\23\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\1\4\1\261\26\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\1\262\27\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\23\4\1\263\4\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\4\4\1\264\23\4\23\0\11\166\1\265"+ - "\1\235\70\166\12\236\1\266\70\236\1\0\1\162\12\0"+ - "\1\162\6\0\1\242\36\0\1\242\21\0\1\241\1\171"+ - "\11\0\1\241\1\0\1\171\1\0\1\267\1\0\1\171"+ - "\1\0\1\240\4\0\1\171\1\0\1\171\1\0\1\240"+ - "\1\171\7\0\1\267\1\171\7\0\1\267\24\0\1\162"+ - "\12\0\1\162\66\0\27\177\1\270\53\177\1\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\4\4\1\271\23\4\24\0\2\4"+ - "\1\0\2\4\1\0\1\4\4\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\1\272\27\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\11\4\1\273\16\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\4\4\1\274\23\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\12\4\1\275\15\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\21\4\1\276\6\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\6\4\1\277\21\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\14\4\1\300\13\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\301\24\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\24\4\1\302\3\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\303\24\4\23\0\11\236\1\237"+ - "\1\266\70\236\27\177\1\304\53\177\1\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\5\4\1\305\22\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\4\4\1\306\23\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\4\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\307\27\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\16\4\1\310\11\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\10\4\1\311\17\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\4\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\312\27\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\4\1\313\26\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\11\4\1\314\16\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\13\4\1\315\14\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\6\4\1\316\21\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\12\4\1\317\15\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\3\4\1\320\24\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\3\4\1\321\24\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\4\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\322\27\4\23\0"; + "\3\4\1\0\1\4\1\0\1\4\3\0\4\4\1\300"+ + "\23\4\24\0\2\4\1\0\2\4\1\0\1\4\4\0"+ + "\3\4\1\0\1\4\1\0\1\4\3\0\1\301\27\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\16\4\1\302\11\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\10\4\1\303\17\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\4\0\3\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\304\27\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\4\1\305\26\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\11\4\1\306\16\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\13\4\1\307\14\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\6\4\1\310\21\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\12\4\1\311\15\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\312\24\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\313\24\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\4\0\3\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\314\27\4\23\0"; private static int [] zzUnpackTrans() { - int [] result = new int[9246]; + int [] result = new int[8775]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -506,15 +491,15 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\1\0\1\11\43\1\1\11\1\1\13\11\1\0\1\1"+ + "\1\0\1\11\43\1\1\11\1\1\11\11\1\0\1\1"+ "\1\0\1\1\1\0\1\1\1\0\1\11\2\1\2\11"+ - "\1\0\3\1\5\11\35\1\1\11\1\0\1\1\12\11"+ - "\1\1\1\11\2\0\2\1\2\0\1\1\3\0\1\11"+ - "\30\1\6\11\1\0\1\1\1\11\1\0\1\1\2\0"+ - "\21\1\1\11\1\0\1\1\1\0\13\1\1\11\16\1"; + "\4\1\5\11\35\1\1\11\1\0\1\1\12\11\1\1"+ + "\1\11\2\0\2\1\1\0\1\1\2\0\1\11\30\1"+ + "\6\11\1\0\1\1\1\11\1\1\2\0\21\1\1\11"+ + "\2\0\13\1\1\11\16\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[210]; + int [] result = new int[204]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -597,7 +582,7 @@ class _JetLexer implements FlexLexer { char [] map = new char[0x10000]; int i = 0; /* index in packed string */ int j = 0; /* index in unpacked array */ - while (i < 1788) { + while (i < 1786) { int count = packed.charAt(i++); char value = packed.charAt(i++); do map[j++] = value; while (--count > 0); @@ -822,359 +807,355 @@ class _JetLexer implements FlexLexer { case 3: { return JetTokens.IDENTIFIER; } - case 90: break; - case 64: + case 89: break; + case 63: { return JetTokens.FOR_KEYWORD ; } - case 91: break; - case 86: + case 90: break; + case 85: { return JetTokens.RETURN_KEYWORD ; } - case 92: break; - case 72: + case 91: break; + case 71: { return JetTokens.NULL_KEYWORD ; } - case 93: break; + case 92: break; case 15: { return JetTokens.LT ; } - case 94: break; - case 46: + case 93: break; + case 45: { return JetTokens.DO_KEYWORD ; } - case 95: break; + case 94: break; case 14: { return JetTokens.PLUS ; } - case 96: break; - case 29: - { return JetTokens.LONG_LITERAL; - } - case 97: break; - case 61: + case 95: break; + case 60: { return JetTokens.RAW_STRING_LITERAL; } - case 98: break; - case 50: + case 96: break; + case 49: { return JetTokens.PLUSEQ ; } - case 99: break; + case 97: break; case 27: { return JetTokens.COMMA ; } - case 100: break; + case 98: break; case 16: { return JetTokens.GT ; } - case 101: break; + case 99: break; case 4: { return JetTokens.WHITE_SPACE; } - case 102: break; - case 84: + case 100: break; + case 83: { return JetTokens.TYPEOF_KEYWORD ; } - case 103: break; + case 101: break; case 25: { return JetTokens.RPAR ; } - case 104: break; - case 48: + case 102: break; + case 47: { return JetTokens.DOUBLE_ARROW; } - case 105: break; - case 74: + case 103: break; + case 73: { return JetTokens.TRUE_KEYWORD ; } - case 106: break; - case 31: + case 104: break; + case 30: { return JetTokens.FIELD_IDENTIFIER; } - case 107: break; - case 54: + case 105: break; + case 53: { return JetTokens.ANDAND ; } - case 108: break; - case 60: + case 106: break; + case 59: { return JetTokens.DOC_COMMENT; } - case 109: break; - case 30: + case 107: break; + case 29: { return JetTokens.FLOAT_LITERAL; } - case 110: break; - case 34: + case 108: break; + case 33: { return JetTokens.EOL_COMMENT; } - case 111: break; - case 77: + case 109: break; + case 76: { return JetTokens.WHEN_KEYWORD ; } - case 112: break; + case 110: break; case 18: { return JetTokens.COLON ; } - case 113: break; - case 52: + case 111: break; + case 51: { return JetTokens.LTEQ ; } - case 114: break; - case 41: + case 112: break; + case 40: { return JetTokens.ARROW ; } - case 115: break; + case 113: break; case 20: { return JetTokens.LBRACKET ; } - case 116: break; - case 59: + case 114: break; + case 58: { yypushback(2); return JetTokens.INTEGER_LITERAL; } - case 117: break; + case 115: break; case 10: { return JetTokens.CHARACTER_LITERAL; } - case 118: break; - case 66: + case 116: break; + case 65: { return JetTokens.VAR_KEYWORD ; } - case 119: break; - case 53: + case 117: break; + case 52: { return JetTokens.GTEQ ; } - case 120: break; + case 118: break; case 2: { return JetTokens.INTEGER_LITERAL; } - case 121: break; + case 119: break; case 23: { return JetTokens.RBRACE ; } - case 122: break; - case 79: + case 120: break; + case 78: { return JetTokens.CLASS_KEYWORD ; } - case 123: break; + case 121: break; case 13: { return JetTokens.EXCL ; } - case 124: break; - case 63: + case 122: break; + case 62: { return JetTokens.TRY_KEYWORD ; } - case 125: break; - case 49: + case 123: break; + case 48: { return JetTokens.EXCLEQ ; } - case 126: break; - case 40: + case 124: break; + case 39: { return JetTokens.MINUSEQ ; } - case 127: break; - case 80: + case 125: break; + case 79: { return JetTokens.THROW_KEYWORD ; } - case 128: break; - case 83: + case 126: break; + case 82: { return JetTokens.WHILE_KEYWORD ; } - case 129: break; - case 39: + case 127: break; + case 38: { return JetTokens.MINUSMINUS; } - case 130: break; - case 87: + case 128: break; + case 86: { return JetTokens.CONTINUE_KEYWORD ; } - case 131: break; - case 33: + case 129: break; + case 32: { return JetTokens.ATAT ; } - case 132: break; - case 69: + case 130: break; + case 68: { return JetTokens.NOT_IN; } - case 133: break; + case 131: break; case 6: { return JetTokens.DIV ; } - case 134: break; - case 57: + case 132: break; + case 56: { return JetTokens.ELVIS ; } - case 135: break; - case 32: + case 133: break; + case 31: { return JetTokens.LABEL_IDENTIFIER; } - case 136: break; + case 134: break; case 17: { return JetTokens.QUEST ; } - case 137: break; - case 55: + case 135: break; + case 54: { return JetTokens.OROR ; } - case 138: break; + case 136: break; case 19: { return JetTokens.PERC ; } - case 139: break; - case 71: + case 137: break; + case 70: { return JetTokens.EXCLEQEQEQ; } - case 140: break; - case 58: + case 138: break; + case 57: { return JetTokens.PERCEQ ; } - case 141: break; - case 38: + case 139: break; + case 37: { return JetTokens.RANGE ; } - case 142: break; + case 140: break; case 1: { return TokenType.BAD_CHARACTER; } - case 143: break; - case 56: + case 141: break; + case 55: { return JetTokens.SAFE_ACCESS; } - case 144: break; - case 88: + case 142: break; + case 87: { return JetTokens.NAMESPACE_KEYWORD ; } - case 145: break; - case 70: + case 143: break; + case 69: { return JetTokens.NOT_IS; } - case 146: break; + case 144: break; case 7: { return JetTokens.MUL ; } - case 147: break; + case 145: break; case 21: { return JetTokens.RBRACKET ; } - case 148: break; - case 51: + case 146: break; + case 50: { return JetTokens.PLUSPLUS ; } - case 149: break; - case 76: + case 147: break; + case 75: { return JetTokens.THIS_KEYWORD ; } - case 150: break; + case 148: break; case 8: { return JetTokens.DOT ; } - case 151: break; + case 149: break; case 26: { return JetTokens.SEMICOLON ; } - case 152: break; - case 45: + case 150: break; + case 44: { return JetTokens.IF_KEYWORD ; } - case 153: break; + case 151: break; case 12: { return JetTokens.EQ ; } - case 154: break; + case 152: break; case 5: { return JetTokens.AT ; } - case 155: break; + case 153: break; case 24: { return JetTokens.LPAR ; } - case 156: break; + case 154: break; case 9: { return JetTokens.MINUS ; } - case 157: break; - case 81: + case 155: break; + case 80: { return JetTokens.FALSE_KEYWORD ; } - case 158: break; - case 75: + case 156: break; + case 74: { return JetTokens.TYPE_KEYWORD ; } - case 159: break; - case 65: + case 157: break; + case 64: { return JetTokens.FUN_KEYWORD ; } - case 160: break; - case 44: + case 158: break; + case 43: { return JetTokens.IS_KEYWORD ; } - case 161: break; - case 36: + case 159: break; + case 35: { return JetTokens.DIVEQ ; } - case 162: break; - case 89: + case 160: break; + case 88: { return JetTokens.EXTENSION_KEYWORD ; } - case 163: break; - case 73: + case 161: break; + case 72: { return JetTokens.ELSE_KEYWORD ; } - case 164: break; - case 42: + case 162: break; + case 41: { return JetTokens.AS_KEYWORD ; } - case 165: break; - case 43: + case 163: break; + case 42: { return JetTokens.IN_KEYWORD ; } - case 166: break; - case 47: + case 164: break; + case 46: { return JetTokens.EQEQ ; } - case 167: break; - case 67: + case 165: break; + case 66: { return JetTokens.VAL_KEYWORD ; } - case 168: break; - case 68: + case 166: break; + case 67: { return JetTokens.EQEQEQ ; } - case 169: break; - case 78: + case 167: break; + case 77: { return JetTokens.CAPITALIZED_THIS_KEYWORD ; } - case 170: break; - case 62: + case 168: break; + case 61: { return JetTokens.NEW_KEYWORD ; } - case 171: break; - case 37: + case 169: break; + case 36: { return JetTokens.MULTEQ ; } - case 172: break; + case 170: break; case 11: { return JetTokens.STRING_LITERAL; } - case 173: break; + case 171: break; case 22: { return JetTokens.LBRACE ; } - case 174: break; - case 85: + case 172: break; + case 84: { return JetTokens.OBJECT_KEYWORD ; } - case 175: break; - case 82: + case 173: break; + case 81: { return JetTokens.BREAK_KEYWORD ; } - case 176: break; - case 35: + case 174: break; + case 34: { return JetTokens.BLOCK_COMMENT; } - case 177: break; + case 175: break; case 28: { return JetTokens.HASH ; } - case 178: break; + case 176: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true; diff --git a/idea/testData/psi/SimpleExpressions.jet b/idea/testData/psi/SimpleExpressions.jet index db877d3764f..4b8bd7bc992 100644 --- a/idea/testData/psi/SimpleExpressions.jet +++ b/idea/testData/psi/SimpleExpressions.jet @@ -7,10 +7,10 @@ fun a( a : foo = "dsf", a : foo = """dsf""", a : foo = 10.0, - a : foo = 10d, - a : foo = 10f, - a : foo = 10.0d, - a : foo = 10L, + a : foo = 10.dbl, + a : foo = 10.flt, + a : foo = 10.0.dbl, + a : foo = 10.lng, a : foo = true, a : foo = false, a : foo = null, diff --git a/idea/testData/psi/SimpleExpressions.txt b/idea/testData/psi/SimpleExpressions.txt index a90cabc98b3..9bb32f16610 100644 --- a/idea/testData/psi/SimpleExpressions.txt +++ b/idea/testData/psi/SimpleExpressions.txt @@ -134,8 +134,12 @@ JetFile: SimpleExpressions.jet PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') - FLOAT_CONSTANT - PsiElement(FLOAT_CONSTANT)('10d') + DOT_QIALIFIED_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('10') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('dbl') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') VALUE_PARAMETER @@ -150,8 +154,12 @@ JetFile: SimpleExpressions.jet PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') - FLOAT_CONSTANT - PsiElement(FLOAT_CONSTANT)('10f') + DOT_QIALIFIED_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('10') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('flt') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') VALUE_PARAMETER @@ -166,8 +174,12 @@ JetFile: SimpleExpressions.jet PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') - FLOAT_CONSTANT - PsiElement(FLOAT_CONSTANT)('10.0d') + DOT_QIALIFIED_EXPRESSION + FLOAT_CONSTANT + PsiElement(FLOAT_CONSTANT)('10.0') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('dbl') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') VALUE_PARAMETER @@ -182,8 +194,12 @@ JetFile: SimpleExpressions.jet PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') - LONG_CONSTANT - PsiElement(LONG_LITERAL)('10L') + DOT_QIALIFIED_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('10') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('lng') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') VALUE_PARAMETER diff --git a/idea/testData/psi/When.jet b/idea/testData/psi/When.jet index f3b1ab6590c..6c1cb41b5bf 100644 --- a/idea/testData/psi/When.jet +++ b/idea/testData/psi/When.jet @@ -21,7 +21,6 @@ fun foo() { is null => foo is 1 => foo is A.b => foo - is 1l => foo is 1.0 => foo is 'c' => foo is "sadfsa" => foo diff --git a/idea/testData/psi/When.txt b/idea/testData/psi/When.txt index dcf0152027d..cc16a001afe 100644 --- a/idea/testData/psi/When.txt +++ b/idea/testData/psi/When.txt @@ -266,19 +266,6 @@ JetFile: When.jet REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace('\n ') - WHEN_ENTRY - WHEN_CONDITION - PsiElement(is)('is') - PsiWhiteSpace(' ') - EXPRESSION_PATTERN - LONG_CONSTANT - PsiElement(LONG_LITERAL)('1l') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') WHEN_ENTRY WHEN_CONDITION PsiElement(is)('is') diff --git a/idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java b/idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java index f0b99b90dff..9697ddc7028 100644 --- a/idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java +++ b/idea/tests/org/jetbrains/jet/types/JetTypeCheckerTest.java @@ -54,17 +54,14 @@ public class JetTypeCheckerTest extends LightDaemonAnalyzerTestCase { assertType("0b1", library.getIntType()); assertType("0B1", library.getIntType()); - assertType("1l", library.getLongType()); - assertType("1L", library.getLongType()); + assertType("1.lng", library.getLongType()); assertType("1.0", library.getDoubleType()); - assertType("1.0d", library.getDoubleType()); - assertType("1.0D", library.getDoubleType()); + assertType("1.0.dbl", library.getDoubleType()); assertType("0x1.fffffffffffffp1023", library.getDoubleType()); - assertType("1.0f", library.getFloatType()); - assertType("1.0F", library.getFloatType()); - assertType("0x1.fffffffffffffp1023f", library.getFloatType()); + assertType("1.0.flt", library.getFloatType()); + assertType("0x1.fffffffffffffp1023.flt", library.getFloatType()); assertType("true", library.getBooleanType()); assertType("false", library.getBooleanType()); @@ -341,62 +338,62 @@ public class JetTypeCheckerTest extends LightDaemonAnalyzerTestCase { public void testOverloads() throws Exception { assertType("new Functions().f()", "Unit"); assertType("new Functions().f(1)", "Int"); - assertType("new Functions().f(1d)", (String) null); + assertType("new Functions().f(1.0)", (String) null); assertType("new Functions().f((1, 1))", "Double"); - assertType("new Functions().f(1d)", "Any"); + assertType("new Functions().f(1.0)", "Any"); assertType("new Functions().f(\"\")", "Byte"); assertType("new Functions().f(1)", (String) null); assertType("f()", "Unit"); assertType("f(1)", "Int"); - assertType("f(1f, 1)", "Float"); - assertType("f(1f)", "String"); + assertType("f(1.flt, 1)", "Float"); + assertType("f(1.flt)", "String"); assertType("f(1.0)", (String) null); } public void testPlus() throws Exception { - assertType("1d.plus(1d)", "Double"); - assertType("1d.plus(1f)", "Double"); - assertType("1d.plus(1L)", "Double"); - assertType("1d.plus(1)", "Double"); + assertType("1.0.plus(1.dbl)", "Double"); + assertType("1.0.plus(1.flt)", "Double"); + assertType("1.0.plus(1.lng)", "Double"); + assertType("1.0.plus(1)", "Double"); - assertType("1f.plus(1d)", "Double"); - assertType("1f.plus(1f)", "Float"); - assertType("1f.plus(1L)", "Float"); - assertType("1f.plus(1)", "Float"); + assertType("1.flt.plus(1.dbl)", "Double"); + assertType("1.flt.plus(1.flt)", "Float"); + assertType("1.flt.plus(1.lng)", "Float"); + assertType("1.flt.plus(1)", "Float"); - assertType("1L.plus(1d)", "Double"); - assertType("1L.plus(1f)", "Float"); - assertType("1L.plus(1L)", "Long"); - assertType("1L.plus(1)", "Long"); + assertType("1.lng.plus(1.dbl)", "Double"); + assertType("1.lng.plus(1.flt)", "Float"); + assertType("1.lng.plus(1.lng)", "Long"); + assertType("1.lng.plus(1)", "Long"); - assertType("1.plus(1d)", "Double"); - assertType("1.plus(1f)", "Float"); - assertType("1.plus(1L)", "Long"); + assertType("1.plus(1.dbl)", "Double"); + assertType("1.plus(1.flt)", "Float"); + assertType("1.plus(1.lng)", "Long"); assertType("1.plus(1)", "Int"); - assertType("'1'.plus(1d)", "Double"); - assertType("'1'.plus(1f)", "Float"); - assertType("'1'.plus(1L)", "Long"); + assertType("'1'.plus(1.dbl)", "Double"); + assertType("'1'.plus(1.flt)", "Float"); + assertType("'1'.plus(1.lng)", "Long"); assertType("'1'.plus(1)", "Int"); assertType("'1'.plus('1')", "Int"); - assertType("(1:Short).plus(1d)", "Double"); - assertType("(1:Short).plus(1f)", "Float"); - assertType("(1:Short).plus(1L)", "Long"); + assertType("(1:Short).plus(1.dbl)", "Double"); + assertType("(1:Short).plus(1.flt)", "Float"); + assertType("(1:Short).plus(1.lng)", "Long"); assertType("(1:Short).plus(1)", "Int"); assertType("(1:Short).plus(1:Short)", "Int"); - assertType("(1:Byte).plus(1d)", "Double"); - assertType("(1:Byte).plus(1f)", "Float"); - assertType("(1:Byte).plus(1L)", "Long"); + assertType("(1:Byte).plus(1.dbl)", "Double"); + assertType("(1:Byte).plus(1.flt)", "Float"); + assertType("(1:Byte).plus(1.lng)", "Long"); assertType("(1:Byte).plus(1)", "Int"); assertType("(1:Byte).plus(1:Short)", "Int"); assertType("(1:Byte).plus(1:Byte)", "Int"); - assertType("\"1\".plus(1d)", "String"); - assertType("\"1\".plus(1f)", "String"); - assertType("\"1\".plus(1L)", "String"); + assertType("\"1\".plus(1.dbl)", "String"); + assertType("\"1\".plus(1.flt)", "String"); + assertType("\"1\".plus(1.lng)", "String"); assertType("\"1\".plus(1)", "String"); assertType("\"1\".plus('1')", "String"); }