Mercurial > hg > mpdl-group
diff software/eXist/mpdl-modules/src/de/mpg/mpiwg/berlin/mpdl/lt/analyzer/lang/MpdlNormalizerLexIT.java @ 14:5df60f24e997
diverse Fehlerbehebungen
author | Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de> |
---|---|
date | Mon, 29 Aug 2011 17:40:02 +0200 |
parents | 1ec29fdd0db8 |
children |
line wrap: on
line diff
--- a/software/eXist/mpdl-modules/src/de/mpg/mpiwg/berlin/mpdl/lt/analyzer/lang/MpdlNormalizerLexIT.java Tue Apr 19 16:51:59 2011 +0200 +++ b/software/eXist/mpdl-modules/src/de/mpg/mpiwg/berlin/mpdl/lt/analyzer/lang/MpdlNormalizerLexIT.java Mon Aug 29 17:40:02 2011 +0200 @@ -1,12 +1,11 @@ -/* The following code was generated by JFlex 1.4.3 on 22.02.11 12:03 */ +/* The following code was generated by JFlex 1.4.3 on 21.07.11 11:22 */ /* * Normalization rules for Italian text * [this is a JFlex specification] * * Wolfgang Schmidle - * version 0.96 - * 2011-02-21 + * version 2011-07-12 * */ @@ -16,7 +15,7 @@ /** * This class is a scanner generated by * <a href="http://www.jflex.de/">JFlex</a> 1.4.3 - * on 22.02.11 12:03 from the specification file + * on 21.07.11 11:22 from the specification file * <tt>MpdlNormalizerLexIT.lex</tt> */ public class MpdlNormalizerLexIT { @@ -47,15 +46,15 @@ * Translates characters to character classes */ private static final String ZZ_CMAP_PACKED = - "\12\0\1\5\42\0\1\4\22\0\1\51\1\1\3\2\1\1\3\2"+ - "\1\40\1\0\1\2\1\3\2\2\1\41\1\2\1\47\1\3\1\2"+ - "\1\37\1\44\1\50\2\2\1\0\1\2\6\0\1\43\3\2\1\11"+ - "\2\2\1\42\1\6\1\35\1\2\1\3\1\2\1\7\1\36\1\13"+ - "\1\45\1\12\1\2\1\10\1\15\1\46\2\2\1\0\1\2\62\0"+ - "\1\4\22\0\1\16\5\0\1\32\1\0\1\17\3\0\1\20\5\0"+ - "\1\21\6\0\1\22\5\0\1\30\1\23\5\0\1\31\1\0\1\24"+ - "\3\0\1\25\5\0\1\26\6\0\1\27\37\0\1\1\70\0\1\34"+ - "\1\33\53\0\1\14\ufe80\0"; + "\12\0\1\6\25\0\1\5\14\0\1\4\22\0\1\52\1\1\3\2"+ + "\1\1\3\2\1\41\1\0\1\2\1\3\2\2\1\42\1\2\1\50"+ + "\1\3\1\2\1\40\1\45\1\51\2\2\1\0\1\2\6\0\1\44"+ + "\3\2\1\12\2\2\1\43\1\7\1\36\1\2\1\3\1\2\1\10"+ + "\1\37\1\14\1\46\1\13\1\2\1\11\1\16\1\47\2\2\1\0"+ + "\1\2\62\0\1\4\22\0\1\17\5\0\1\33\1\0\1\20\3\0"+ + "\1\21\5\0\1\22\6\0\1\23\5\0\1\31\1\24\5\0\1\32"+ + "\1\0\1\25\3\0\1\26\5\0\1\27\6\0\1\30\37\0\1\1"+ + "\70\0\1\35\1\34\53\0\1\15\ufe80\0"; /** * Translates characters to character classes @@ -68,17 +67,17 @@ private static final int [] ZZ_ACTION = zzUnpackAction(); private static final String ZZ_ACTION_PACKED_0 = - "\11\0\1\1\1\2\2\3\1\4\1\5\1\2\1\3"+ - "\1\6\1\2\1\7\1\10\1\11\1\12\1\13\5\3"+ - "\1\14\1\2\1\3\1\6\1\2\1\15\1\16\1\17"+ - "\1\20\1\21\1\22\1\23\1\24\1\25\1\26\1\27"+ - "\1\30\4\0\1\31\1\32\1\0\1\33\1\0\1\34"+ - "\1\35\1\0\1\36\1\37\1\40\4\0\1\41\5\0"+ - "\1\42\1\43\2\0\1\44\1\0\1\45\5\0\1\44"+ - "\1\46\3\0\1\47"; + "\11\0\1\1\1\2\2\3\1\1\1\4\1\2\1\3"+ + "\1\5\1\2\1\6\1\7\1\10\1\11\1\12\5\3"+ + "\1\13\1\2\1\3\1\5\1\2\1\14\1\15\1\16"+ + "\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\26"+ + "\1\27\1\30\4\0\1\31\1\32\1\33\1\0\1\34"+ + "\1\0\1\35\1\36\1\0\1\37\1\40\1\41\4\0"+ + "\1\42\6\0\1\43\1\44\4\0\1\45\1\0\1\46"+ + "\10\0\1\47\4\0\1\45\2\0\1\50"; private static int [] zzUnpackAction() { - int [] result = new int[89]; + int [] result = new int[100]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -103,21 +102,22 @@ private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\52\0\124\0\176\0\250\0\322\0\374\0\u0126"+ - "\0\u0150\0\0\0\0\0\0\0\u017a\0\0\0\0\0\u01a4"+ - "\0\u01ce\0\0\0\u01f8\0\0\0\0\0\0\0\0\0\0"+ - "\0\u0222\0\u024c\0\u0276\0\u02a0\0\u02ca\0\0\0\u02f4\0\u031e"+ - "\0\u0348\0\u0372\0\u039c\0\0\0\0\0\0\0\0\0\0"+ - "\0\0\0\0\0\0\0\0\0\0\0\0\0\u03c6\0\u03f0"+ - "\0\u041a\0\0\0\0\0\0\0\u0444\0\0\0\u046e\0\0"+ - "\0\0\0\u0498\0\0\0\0\0\0\0\u04c2\0\u04ec\0\u0516"+ - "\0\u0540\0\0\0\u056a\0\u0594\0\u05be\0\u05e8\0\u0612\0\0"+ - "\0\0\0\u063c\0\u031e\0\u0666\0\u0690\0\0\0\u06ba\0\u06e4"+ - "\0\u070e\0\0\0\u0738\0\0\0\0\0\u0762\0\u078c\0\u07b6"+ - "\0\0"; + "\0\0\0\53\0\126\0\201\0\254\0\327\0\u0102\0\u012d"+ + "\0\u0158\0\0\0\0\0\0\0\u0183\0\u01ae\0\0\0\u01d9"+ + "\0\u0204\0\0\0\u022f\0\0\0\0\0\0\0\0\0\0"+ + "\0\u025a\0\u0285\0\u02b0\0\u02db\0\u0306\0\0\0\u0331\0\u035c"+ + "\0\u0387\0\u03b2\0\u03dd\0\0\0\0\0\0\0\0\0\0"+ + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\u0408"+ + "\0\u0433\0\u045e\0\u0489\0\0\0\0\0\0\0\u04b4\0\0"+ + "\0\u04df\0\0\0\0\0\u050a\0\0\0\0\0\0\0\u0535"+ + "\0\u0560\0\u058b\0\u05b6\0\0\0\u05e1\0\u060c\0\u0637\0\u0662"+ + "\0\u068d\0\0\0\0\0\0\0\u06b8\0\u06e3\0\u070e\0\u035c"+ + "\0\u0739\0\u0764\0\0\0\u078f\0\u07ba\0\u07e5\0\0\0\u0810"+ + "\0\u083b\0\u0866\0\u0891\0\0\0\u08bc\0\u08e7\0\u0912\0\u093d"+ + "\0\0\0\u0968\0\u0993\0\0"; private static int [] zzUnpackRowMap() { - int [] result = new int[89]; + int [] result = new int[100]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -140,63 +140,67 @@ private static final int [] ZZ_TRANS = zzUnpackTrans(); private static final String ZZ_TRANS_PACKED_0 = - "\52\0\1\12\1\13\1\14\1\15\1\16\1\17\1\20"+ - "\1\14\1\21\1\13\1\15\1\14\1\22\1\23\5\12"+ - "\2\13\1\12\2\13\1\24\1\25\1\26\1\27\1\30"+ - "\1\12\1\13\1\31\2\13\1\14\1\13\1\23\1\32"+ - "\1\33\1\34\1\35\1\36\1\12\1\13\1\14\1\15"+ - "\1\16\1\17\1\37\1\14\1\21\1\13\1\15\1\40"+ - "\1\41\1\42\5\12\2\13\1\12\2\13\1\24\1\25"+ - "\1\26\1\27\1\30\1\12\1\13\1\31\2\13\1\43"+ - "\1\13\1\42\1\32\1\33\1\34\1\35\1\36\1\12"+ - "\1\13\1\14\1\15\1\16\1\44\1\20\1\14\1\21"+ - "\1\13\1\15\1\14\1\22\1\23\1\45\1\46\1\47"+ - "\1\50\1\51\1\52\1\53\1\54\1\55\1\56\1\24"+ - "\1\25\1\26\1\27\1\30\1\12\1\13\1\31\2\13"+ - "\1\14\1\13\1\23\1\32\1\33\1\34\1\35\1\36"+ - "\1\12\1\13\1\14\1\15\1\16\1\44\1\37\1\14"+ + "\53\0\1\12\1\13\1\14\1\15\1\16\1\12\1\17"+ + "\1\20\1\14\1\21\1\13\1\15\1\14\1\22\1\23"+ + "\5\12\2\13\1\12\2\13\1\24\1\25\1\26\1\27"+ + "\1\30\1\12\1\13\1\31\2\13\1\14\1\13\1\23"+ + "\1\32\1\33\1\34\1\35\1\36\1\12\1\13\1\14"+ + "\1\15\1\16\1\12\1\17\1\37\1\14\1\21\1\13"+ + "\1\15\1\40\1\41\1\42\5\12\2\13\1\12\2\13"+ + "\1\24\1\25\1\26\1\27\1\30\1\12\1\13\1\31"+ + "\2\13\1\43\1\13\1\42\1\32\1\33\1\34\1\35"+ + "\1\36\1\12\1\13\1\14\1\15\1\16\1\12\1\44"+ + "\1\20\1\14\1\21\1\13\1\15\1\14\1\22\1\23"+ + "\1\45\1\46\1\47\1\50\1\51\1\52\1\53\1\54"+ + "\1\55\1\56\1\24\1\25\1\26\1\27\1\30\1\12"+ + "\1\13\1\31\2\13\1\14\1\13\1\23\1\32\1\33"+ + "\1\34\1\35\1\36\1\12\1\13\1\14\1\15\1\16"+ + "\1\12\1\44\1\37\1\14\1\21\1\13\1\15\1\40"+ + "\1\41\1\42\1\45\1\46\1\47\1\50\1\51\1\52"+ + "\1\53\1\54\1\55\1\56\1\24\1\25\1\26\1\27"+ + "\1\30\1\12\1\13\1\31\2\13\1\43\1\13\1\42"+ + "\1\32\1\33\1\34\1\35\1\36\1\12\1\13\1\14"+ + "\1\15\1\16\1\12\1\57\1\20\1\14\1\21\1\13"+ + "\1\15\1\14\1\22\1\23\1\45\1\46\1\47\1\50"+ + "\1\51\1\52\1\53\1\54\1\55\1\56\1\24\1\25"+ + "\1\26\1\27\1\30\1\12\1\13\1\31\2\13\1\14"+ + "\1\13\1\23\1\32\1\33\1\34\1\35\1\36\1\12"+ + "\1\13\1\14\1\15\1\16\1\12\1\57\1\37\1\14"+ "\1\21\1\13\1\15\1\40\1\41\1\42\1\45\1\46"+ "\1\47\1\50\1\51\1\52\1\53\1\54\1\55\1\56"+ "\1\24\1\25\1\26\1\27\1\30\1\12\1\13\1\31"+ "\2\13\1\43\1\13\1\42\1\32\1\33\1\34\1\35"+ - "\1\36\1\12\1\13\1\14\1\15\1\16\1\17\1\20"+ - "\1\14\1\21\1\13\1\15\1\14\1\22\1\23\1\45"+ - "\1\46\1\47\1\50\1\51\1\52\1\53\1\54\1\55"+ - "\1\56\1\24\1\25\1\26\1\27\1\30\1\12\1\13"+ - "\1\31\2\13\1\14\1\13\1\23\1\32\1\33\1\34"+ - "\1\35\1\36\1\12\1\13\1\14\1\15\1\16\1\17"+ - "\1\37\1\14\1\21\1\13\1\15\1\40\1\41\1\42"+ - "\1\45\1\46\1\47\1\50\1\51\1\52\1\53\1\54"+ - "\1\55\1\56\1\24\1\25\1\26\1\27\1\30\1\12"+ - "\1\13\1\31\2\13\1\43\1\13\1\42\1\32\1\33"+ - "\1\34\1\35\1\36\6\0\1\57\4\0\1\60\1\61"+ - "\41\0\1\62\113\0\1\63\1\0\1\63\36\0\1\64"+ - "\22\0\1\65\44\0\1\66\4\0\1\66\2\0\1\66"+ - "\3\0\1\66\5\0\2\66\1\0\2\66\1\0\3\66"+ - "\2\0\1\66\1\0\2\66\1\0\2\66\45\0\1\67"+ - "\57\0\1\70\5\0\2\71\1\72\2\0\2\71\1\0"+ - "\3\71\13\0\1\71\6\0\1\71\2\0\1\71\2\0"+ - "\4\71\47\0\1\73\1\0\1\74\3\0\2\75\1\76"+ - "\2\0\2\75\1\0\3\75\13\0\1\75\6\0\1\75"+ - "\2\0\1\75\2\0\4\75\10\0\1\77\25\0\1\64"+ - "\25\0\1\100\51\0\1\100\3\0\1\101\35\0\1\102"+ - "\4\0\1\102\2\0\1\102\3\0\1\102\5\0\2\102"+ - "\1\0\2\102\1\0\3\102\2\0\1\102\1\0\2\102"+ - "\1\0\2\102\43\0\1\103\4\0\1\104\15\0\1\105"+ - "\53\0\1\106\51\0\1\106\3\0\1\107\72\0\1\110"+ - "\54\0\1\111\12\0\2\71\3\0\2\71\1\0\3\71"+ - "\13\0\1\71\6\0\1\71\2\0\1\71\2\0\4\71"+ - "\3\0\2\75\3\0\2\75\1\0\3\75\13\0\1\75"+ - "\6\0\1\75\2\0\1\75\2\0\4\75\5\0\1\112"+ - "\3\0\1\113\53\0\1\114\43\0\1\115\6\0\1\113"+ - "\43\0\1\116\51\0\1\116\1\117\1\120\46\0\1\121"+ - "\3\0\1\60\53\0\1\122\43\0\1\123\6\0\1\60"+ - "\46\0\1\113\45\0\1\124\60\0\1\113\43\0\1\125"+ - "\50\0\1\126\2\0\1\127\52\0\1\60\54\0\1\60"+ - "\45\0\1\127\100\0\1\130\20\0\1\131\44\0"; + "\1\36\7\0\1\60\4\0\1\61\1\62\42\0\1\63"+ + "\114\0\1\64\1\0\1\64\6\0\1\65\103\0\1\66"+ + "\23\0\1\67\44\0\1\70\5\0\1\70\2\0\1\70"+ + "\3\0\1\70\5\0\2\70\1\0\2\70\1\0\3\70"+ + "\2\0\1\70\1\0\2\70\1\0\2\70\46\0\1\71"+ + "\60\0\1\72\5\0\2\73\1\74\3\0\2\73\1\0"+ + "\3\73\13\0\1\73\6\0\1\73\2\0\1\73\2\0"+ + "\4\73\50\0\1\75\1\0\1\76\3\0\2\77\1\100"+ + "\3\0\2\77\1\0\3\77\13\0\1\77\6\0\1\77"+ + "\2\0\1\77\2\0\4\77\11\0\1\101\25\0\1\66"+ + "\26\0\1\102\52\0\1\102\3\0\1\103\35\0\1\104"+ + "\5\0\1\104\2\0\1\104\3\0\1\104\5\0\2\104"+ + "\1\0\2\104\1\0\3\104\2\0\1\104\1\0\2\104"+ + "\1\0\2\104\44\0\1\105\4\0\1\106\16\0\1\107"+ + "\54\0\1\110\52\0\1\110\3\0\1\111\40\0\1\112"+ + "\105\0\1\113\55\0\1\114\15\0\1\115\52\0\1\116"+ + "\51\0\1\117\4\0\1\120\54\0\1\121\43\0\1\122"+ + "\7\0\1\120\44\0\1\123\52\0\1\123\1\124\1\125"+ + "\46\0\1\126\4\0\1\61\54\0\1\127\43\0\1\130"+ + "\7\0\1\61\40\0\2\73\4\0\2\73\1\0\3\73"+ + "\13\0\1\73\6\0\1\73\2\0\1\73\2\0\4\73"+ + "\3\0\2\77\4\0\2\77\1\0\3\77\13\0\1\77"+ + "\6\0\1\77\2\0\1\77\2\0\4\77\6\0\1\131"+ + "\51\0\1\132\53\0\1\133\53\0\1\134\50\0\1\135"+ + "\3\0\1\136\47\0\1\137\52\0\1\140\56\0\1\120"+ + "\46\0\1\141\61\0\1\120\43\0\1\142\104\0\1\143"+ + "\24\0\1\61\55\0\1\61\46\0\1\136\50\0\1\144"+ + "\44\0"; private static int [] zzUnpackTrans() { - int [] result = new int[2016]; + int [] result = new int[2494]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -234,14 +238,14 @@ private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\1\10\7\0\1\1\3\11\1\1\2\11\2\1\1\11"+ - "\1\1\5\11\5\1\1\11\5\1\13\11\3\0\3\11"+ + "\1\10\7\0\1\1\3\11\2\1\1\11\2\1\1\11"+ + "\1\1\5\11\5\1\1\11\5\1\14\11\4\0\3\11"+ "\1\0\1\11\1\0\2\11\1\0\3\11\4\0\1\11"+ - "\5\0\2\11\2\0\1\1\1\0\1\11\3\0\1\11"+ - "\1\0\2\11\3\0\1\11"; + "\5\0\3\11\4\0\1\1\1\0\1\11\3\0\1\11"+ + "\4\0\1\11\4\0\1\11\2\0\1\11"; private static int [] zzUnpackAttribute() { - int [] result = new int[89]; + int [] result = new int[100]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -325,6 +329,8 @@ normalized += norm; } + private static final String LB = "[\u002d\u00ad] "; + /** * Creates a new scanner @@ -356,7 +362,7 @@ char [] map = new char[0x10000]; int i = 0; /* index in packed string */ int j = 0; /* index in unpacked array */ - while (i < 168) { + while (i < 172) { int count = packed.charAt(i++); char value = packed.charAt(i++); do map[j++] = value; while (--count > 0); @@ -656,86 +662,97 @@ zzMarkedPos = zzMarkedPosL; switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) { - case 32: + case 33: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 1; { cv = CONS; add("U"); } - case 40: break; - case 15: + case 41: break; + case 14: { add("Á"); } - case 41: break; - case 39: + case 42: break; + case 40: // lookahead expression with fixed lookahead length yypushback(1); { add(yytext()); } - case 42: break; - case 38: + case 43: break; + case 39: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 3; { add(yytext()); } - case 43: break; - case 37: + case 44: break; + case 38: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 2; { add(yytext()); } - case 44: break; - case 4: + case 45: break; + case 26: { add(yytext()); } - case 45: break; - case 22: + case 46: break; + case 21: { add("í"); } - case 46: break; - case 9: + case 47: break; + case 8: { cv = VOWEL; add("AE"); } - case 47: break; - case 5: + case 48: break; + case 11: + { problem = 1; cv = 0; add(yytext()); + } + case 49: break; + case 4: { switch (problem) { case 1: return original; default: return normalized; } } - case 48: break; - case 29: + case 50: break; + case 30: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 1; { cv = CONS; add("u"); } - case 49: break; - case 20: + case 51: break; + case 19: { add("á"); } - case 50: break; + case 52: break; case 1: { cv = 0; add(yytext()); } - case 51: break; - case 33: + case 53: break; + case 24: + { switch (problem) { + case 1: return original; + default: return normalized.replaceAll(LB, "").toLowerCase(); + } + } + case 54: break; + case 34: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 1; { cv = VOWEL; add(yytext().replaceAll("u", "v").replaceAll("U", "V")); } - case 52: break; - case 34: + case 55: break; + case 35: { cv = VOWEL; add("zio"); } - case 53: break; - case 11: + case 56: break; + case 10: { cv = VOWEL; add("OE"); } - case 54: break; - case 19: + case 57: break; + case 18: { add("Ú"); } - case 55: break; - case 36: + case 58: break; + case 37: // general lookahead, find correct zzMarkedPos { int zzFState = 7; int zzFPos = zzStartRead; @@ -758,20 +775,20 @@ } { cv = VOWEL; add(yytext().replace("ſ", "s")); } - case 56: break; + case 59: break; case 3: { cv = CONS; add(yytext()); } - case 57: break; - case 31: + case 60: break; + case 32: { cv = CONS; add("QU"); } - case 58: break; - case 16: + case 61: break; + case 15: { add("É"); } - case 59: break; - case 27: + case 62: break; + case 28: // lookahead expression with fixed base length zzMarkedPos = zzStartRead + 1; { switch(cv) { @@ -779,85 +796,81 @@ default: cv = VOWEL; add(yytext()); break; } } - case 60: break; - case 7: + case 63: break; + case 6: { cv = CONS; add("ss"); } - case 61: break; - case 6: + case 64: break; + case 5: { cv = CONS; add("s"); } - case 62: break; - case 35: + case 65: break; + case 13: + { switch (problem) { + case 1: return ""; + default: return normalized.replaceAll(LB, ""); + } + } + case 66: break; + case 36: { cv = VOWEL; add("ZIO"); } - case 63: break; + case 67: break; case 2: { cv = VOWEL; add(yytext()); } - case 64: break; - case 18: + case 68: break; + case 17: { add("Ó"); } - case 65: break; - case 24: - { add("ú"); - } - case 66: break; - case 30: - { cv = CONS; add("Qu"); - } - case 67: break; - case 21: - { add("é"); - } - case 68: break; - case 8: - { cv = VOWEL; add("ae"); - } case 69: break; - case 14: - { switch (problem) { - case 1: return ""; - default: return normalized; - } + case 23: + { add("ú"); } case 70: break; - case 13: + case 31: + { cv = CONS; add("Qu"); + } + case 71: break; + case 20: + { add("é"); + } + case 72: break; + case 7: + { cv = VOWEL; add("ae"); + } + case 73: break; + case 12: { add(""); } - case 71: break; - case 23: + case 74: break; + case 22: { add("ó"); } - case 72: break; - case 10: + case 75: break; + case 9: { cv = VOWEL; add("oe"); } - case 73: break; - case 28: + case 76: break; + case 29: { cv = CONS; add("qu"); } - case 74: break; - case 12: - { problem = 1; add(yytext()); - } - case 75: break; + case 77: break; case 25: { switch(cv) { case CONS: add(yytext().replace("v", "u").replace("V", "U")); break; default: cv = CONS; add(yytext()); break; } } - case 76: break; - case 26: + case 78: break; + case 27: { cv = VOWEL; add("ii"); } - case 77: break; - case 17: + case 79: break; + case 16: { add("Í"); } - case 78: break; + case 80: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true;