1460 lines
51 KiB
Java
1460 lines
51 KiB
Java
/* The following code was generated by JFlex 1.4.1 on 16.10.08 09:27 */
|
|
|
|
package designformats.specctra;
|
|
@SuppressWarnings("all")
|
|
|
|
/**
|
|
* This class is a scanner generated by
|
|
* <a href="http://www.jflex.de/">JFlex</a> 1.4.1
|
|
* on 16.10.08 09:27 from the specification file
|
|
* <tt>C:/Users/Public/Documents/router/sources/designformats/specctra/SpecctraFileDescription.flex</tt>
|
|
*/
|
|
class SpecctraFileScanner implements Scanner {
|
|
|
|
/** This character denotes the end of file */
|
|
public static final int YYEOF = -1;
|
|
|
|
/** initial size of the lookahead buffer */
|
|
private static final int ZZ_BUFFERSIZE = 16384;
|
|
|
|
/** lexical states */
|
|
public static final int COMPONENT_NAME = 5;
|
|
public static final int IGNORE_QUOTE = 7;
|
|
public static final int YYINITIAL = 0;
|
|
public static final int SPEC_CHAR = 6;
|
|
public static final int LAYER_NAME = 4;
|
|
public static final int STRING2 = 2;
|
|
public static final int STRING1 = 1;
|
|
public static final int NAME = 3;
|
|
|
|
/**
|
|
* Translates characters to character classes
|
|
*/
|
|
private static final String ZZ_CMAP_PACKED =
|
|
"\11\0\1\3\1\2\1\0\1\3\1\1\21\0\1\16\1\3\1\16"+
|
|
"\1\11\1\6\1\16\1\16\1\16\1\12\1\53\1\54\1\5\1\20"+
|
|
"\1\16\1\17\1\14\1\4\1\21\11\10\1\16\1\16\1\16\1\16"+
|
|
"\1\16\1\16\1\16\1\23\1\24\1\32\1\42\1\22\1\41\1\35"+
|
|
"\1\43\1\33\1\7\1\44\1\27\1\46\1\36\1\26\1\37\1\52"+
|
|
"\1\40\1\25\1\31\1\30\1\34\1\51\1\47\1\45\1\50\1\16"+
|
|
"\1\15\1\16\1\16\1\13\1\0\1\23\1\24\1\32\1\42\1\22"+
|
|
"\1\41\1\35\1\43\1\33\1\7\1\44\1\27\1\46\1\36\1\26"+
|
|
"\1\37\1\52\1\40\1\25\1\31\1\30\1\34\1\51\1\47\1\45"+
|
|
"\1\50\3\0\1\16\42\0\136\16\1\16\122\0\2\16\14\0\2\16"+
|
|
"\26\0\1\16\4\0\2\16\22\0\2\16\u0133\0\1\16\25\0\1\16"+
|
|
"\u1d36\0\1\16\1\16\3\0\1\16\1\16\1\16\1\0\1\16\1\16"+
|
|
"\1\16\1\0\1\16\1\16\1\16\3\0\1\16\11\0\1\16\10\0"+
|
|
"\1\16\1\16\161\0\1\16\165\0\1\16\udedd\0";
|
|
|
|
/**
|
|
* Translates characters to character classes
|
|
*/
|
|
private static final char [] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED);
|
|
|
|
/**
|
|
* Translates DFA states to action switch labels.
|
|
*/
|
|
private static final int [] ZZ_ACTION = zzUnpackAction();
|
|
|
|
private static final String ZZ_ACTION_PACKED_0 =
|
|
"\7\0\1\1\1\2\2\3\3\4\1\5\1\6\1\7"+
|
|
"\1\2\1\5\22\4\1\10\1\11\1\12\1\13\1\14"+
|
|
"\1\12\1\1\1\15\1\16\3\1\2\4\3\0\1\17"+
|
|
"\16\4\1\20\45\4\2\1\1\0\1\4\2\17\1\0"+
|
|
"\1\17\22\4\1\21\16\4\1\22\1\4\1\23\13\4"+
|
|
"\1\24\1\25\11\4\1\26\10\4\1\1\1\27\1\0"+
|
|
"\6\4\1\30\6\4\1\31\14\4\1\32\2\4\1\33"+
|
|
"\2\4\1\34\3\4\1\35\2\4\1\36\2\4\1\37"+
|
|
"\5\4\1\40\4\4\1\41\2\4\1\42\2\4\1\43"+
|
|
"\11\4\1\44\3\4\1\1\14\4\1\45\1\46\2\4"+
|
|
"\1\47\1\4\1\50\11\4\1\51\1\52\2\4\1\53"+
|
|
"\20\4\1\54\1\55\1\56\6\4\1\57\3\4\1\60"+
|
|
"\7\4\1\61\1\4\1\1\2\4\1\62\1\63\6\4"+
|
|
"\1\64\3\4\1\65\15\4\1\34\10\4\1\66\1\4"+
|
|
"\1\67\15\4\1\70\1\71\1\72\2\4\1\73\4\4"+
|
|
"\1\74\1\4\1\75\1\4\1\76\4\4\1\77\6\4"+
|
|
"\1\100\3\4\1\101\1\4\1\102\1\103\1\4\1\104"+
|
|
"\3\4\1\105\1\106\6\4\1\107\6\4\1\40\17\4"+
|
|
"\1\110\2\4\1\111\2\4\1\112\12\4\1\113\3\4"+
|
|
"\1\114\2\4\1\115\5\4\1\116\1\4\1\117\14\4"+
|
|
"\1\120\4\4\1\121\3\4\1\122\4\4\1\123\1\4"+
|
|
"\1\124\1\33\1\51\2\4\1\125\5\4\1\126\3\4"+
|
|
"\1\127\4\4\1\42\14\4\1\130\1\4\1\131\3\4"+
|
|
"\1\132\11\4\1\133\1\4\1\134\2\4\1\135\1\4"+
|
|
"\1\136\7\4\1\137\2\4\1\140\1\141\1\4\1\142"+
|
|
"\20\4\1\143\1\144\3\4\1\145\5\4\1\146\1\4"+
|
|
"\1\147\1\150\3\4\1\151\4\4\1\152\1\153\1\154"+
|
|
"\1\155\23\4\1\156\1\4\1\157\11\4\1\160\1\161"+
|
|
"\2\4\1\162\3\4\1\163\3\4\1\164\5\4\1\165"+
|
|
"\6\4\1\166\20\4\1\167\7\4\1\170";
|
|
|
|
private static int [] zzUnpackAction() {
|
|
int [] result = new int[712];
|
|
int offset = 0;
|
|
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
|
|
return result;
|
|
}
|
|
|
|
private static int zzUnpackAction(String packed, int offset, int [] result) {
|
|
int i = 0; /* index in packed string */
|
|
int j = offset; /* index in unpacked array */
|
|
int l = packed.length();
|
|
while (i < l) {
|
|
int count = packed.charAt(i++);
|
|
int value = packed.charAt(i++);
|
|
do result[j++] = value; while (--count > 0);
|
|
}
|
|
return j;
|
|
}
|
|
|
|
|
|
/**
|
|
* Translates a state to a row index in the transition table
|
|
*/
|
|
private static final int [] ZZ_ROWMAP = zzUnpackRowMap();
|
|
|
|
private static final String ZZ_ROWMAP_PACKED_0 =
|
|
"\0\0\0\55\0\132\0\207\0\264\0\341\0\u010e\0\u013b"+
|
|
"\0\u0168\0\u0195\0\u0168\0\u01c2\0\u01ef\0\u021c\0\u0249\0\u0168"+
|
|
"\0\u0168\0\u0276\0\u02a3\0\u02d0\0\u02fd\0\u032a\0\u0357\0\u0384"+
|
|
"\0\u03b1\0\u03de\0\u040b\0\u0438\0\u0465\0\u0492\0\u04bf\0\u04ec"+
|
|
"\0\u0519\0\u0546\0\u0573\0\u05a0\0\u05cd\0\u0168\0\u0168\0\u05fa"+
|
|
"\0\u0168\0\u0168\0\u0627\0\u0654\0\u0168\0\u0168\0\u0681\0\u06ae"+
|
|
"\0\u06db\0\u0168\0\u0708\0\u0735\0\u0762\0\u078f\0\u02a3\0\u07bc"+
|
|
"\0\u07e9\0\u0816\0\u0843\0\u0870\0\u089d\0\u08ca\0\u08f7\0\u0924"+
|
|
"\0\u0951\0\u097e\0\u09ab\0\u09d8\0\u0a05\0\u01ef\0\u0a32\0\u0a5f"+
|
|
"\0\u0a8c\0\u0ab9\0\u0ae6\0\u0b13\0\u0b40\0\u0b6d\0\u0b9a\0\u0bc7"+
|
|
"\0\u0bf4\0\u0c21\0\u0c4e\0\u0c7b\0\u0ca8\0\u0cd5\0\u0d02\0\u0d2f"+
|
|
"\0\u0d5c\0\u0d89\0\u0db6\0\u0de3\0\u0e10\0\u0e3d\0\u0e6a\0\u0e97"+
|
|
"\0\u0ec4\0\u0ef1\0\u0f1e\0\u0f4b\0\u0f78\0\u0fa5\0\u0fd2\0\u0fff"+
|
|
"\0\u102c\0\u1059\0\u1086\0\u10b3\0\u10e0\0\u110d\0\u113a\0\u1167"+
|
|
"\0\u1194\0\u11c1\0\u0168\0\u11ee\0\u121b\0\u1248\0\u1275\0\u12a2"+
|
|
"\0\u12cf\0\u12fc\0\u1329\0\u1356\0\u1383\0\u13b0\0\u13dd\0\u140a"+
|
|
"\0\u1437\0\u1464\0\u1491\0\u14be\0\u14eb\0\u01ef\0\u1518\0\u1545"+
|
|
"\0\u1572\0\u159f\0\u15cc\0\u15f9\0\u1626\0\u1653\0\u1680\0\u16ad"+
|
|
"\0\u16da\0\u1707\0\u1734\0\u1761\0\u178e\0\u17bb\0\u17e8\0\u1815"+
|
|
"\0\u1842\0\u186f\0\u189c\0\u18c9\0\u18f6\0\u1923\0\u1950\0\u197d"+
|
|
"\0\u19aa\0\u19d7\0\u01ef\0\u1a04\0\u1a31\0\u1a5e\0\u1a8b\0\u1ab8"+
|
|
"\0\u1ae5\0\u1b12\0\u1b3f\0\u1b6c\0\u1b99\0\u01ef\0\u1bc6\0\u1bf3"+
|
|
"\0\u1c20\0\u1c4d\0\u1c7a\0\u1ca7\0\u1cd4\0\u1d01\0\u1d2e\0\u0654"+
|
|
"\0\u1d5b\0\u1d88\0\u1db5\0\u1de2\0\u1e0f\0\u1e3c\0\u1e69\0\u01ef"+
|
|
"\0\u1e96\0\u1ec3\0\u1ef0\0\u1f1d\0\u1f4a\0\u1f77\0\u01ef\0\u1fa4"+
|
|
"\0\u1fd1\0\u1ffe\0\u202b\0\u2058\0\u2085\0\u20b2\0\u20df\0\u210c"+
|
|
"\0\u2139\0\u2166\0\u2193\0\u01ef\0\u21c0\0\u21ed\0\u221a\0\u2247"+
|
|
"\0\u2274\0\u22a1\0\u22ce\0\u22fb\0\u2328\0\u01ef\0\u2355\0\u2382"+
|
|
"\0\u01ef\0\u23af\0\u23dc\0\u01ef\0\u2409\0\u2436\0\u2463\0\u2490"+
|
|
"\0\u24bd\0\u24ea\0\u2517\0\u2544\0\u2571\0\u259e\0\u01ef\0\u25cb"+
|
|
"\0\u25f8\0\u2625\0\u2652\0\u267f\0\u26ac\0\u26d9\0\u2706\0\u2733"+
|
|
"\0\u2760\0\u278d\0\u27ba\0\u27e7\0\u2814\0\u2841\0\u286e\0\u289b"+
|
|
"\0\u28c8\0\u28f5\0\u2922\0\u294f\0\u297c\0\u29a9\0\u29d6\0\u2a03"+
|
|
"\0\u2a30\0\u2a5d\0\u2a8a\0\u2ab7\0\u2ae4\0\u2b11\0\u2b3e\0\u01ef"+
|
|
"\0\u01ef\0\u2b6b\0\u2b98\0\u01ef\0\u2bc5\0\u2bf2\0\u2c1f\0\u2c4c"+
|
|
"\0\u2c79\0\u2ca6\0\u2cd3\0\u2d00\0\u2d2d\0\u2d5a\0\u2d87\0\u2db4"+
|
|
"\0\u2de1\0\u2e0e\0\u2e3b\0\u01ef\0\u2e68\0\u2e95\0\u2ec2\0\u2eef"+
|
|
"\0\u2f1c\0\u2f49\0\u2f76\0\u2fa3\0\u2fd0\0\u2ffd\0\u302a\0\u3057"+
|
|
"\0\u3084\0\u30b1\0\u30de\0\u310b\0\u01ef\0\u3138\0\u3165\0\u3192"+
|
|
"\0\u31bf\0\u31ec\0\u3219\0\u3246\0\u3273\0\u01ef\0\u32a0\0\u32cd"+
|
|
"\0\u32fa\0\u01ef\0\u3327\0\u3354\0\u3381\0\u33ae\0\u33db\0\u3408"+
|
|
"\0\u3435\0\u01ef\0\u3462\0\u348f\0\u34bc\0\u34e9\0\u01ef\0\u01ef"+
|
|
"\0\u3516\0\u3543\0\u3570\0\u359d\0\u35ca\0\u35f7\0\u01ef\0\u3624"+
|
|
"\0\u3651\0\u367e\0\u01ef\0\u36ab\0\u36d8\0\u3705\0\u3732\0\u375f"+
|
|
"\0\u378c\0\u37b9\0\u37e6\0\u3813\0\u3840\0\u386d\0\u389a\0\u38c7"+
|
|
"\0\u01ef\0\u38f4\0\u3921\0\u394e\0\u397b\0\u39a8\0\u39d5\0\u3a02"+
|
|
"\0\u3a2f\0\u01ef\0\u3a5c\0\u01ef\0\u3a89\0\u3ab6\0\u3ae3\0\u3b10"+
|
|
"\0\u3b3d\0\u3b6a\0\u3b97\0\u3bc4\0\u3bf1\0\u3c1e\0\u3c4b\0\u3c78"+
|
|
"\0\u3ca5\0\u01ef\0\u3cd2\0\u01ef\0\u3cff\0\u3d2c\0\u01ef\0\u3d59"+
|
|
"\0\u3d86\0\u3db3\0\u3de0\0\u01ef\0\u3e0d\0\u01ef\0\u3e3a\0\u0654"+
|
|
"\0\u3e67\0\u3e94\0\u3ec1\0\u3eee\0\u01ef\0\u3f1b\0\u3f48\0\u3f75"+
|
|
"\0\u3fa2\0\u3fcf\0\u3ffc\0\u01ef\0\u4029\0\u4056\0\u4083\0\u01ef"+
|
|
"\0\u40b0\0\u01ef\0\u01ef\0\u40dd\0\u01ef\0\u410a\0\u4137\0\u4164"+
|
|
"\0\u01ef\0\u01ef\0\u4191\0\u41be\0\u41eb\0\u4218\0\u4245\0\u4272"+
|
|
"\0\u429f\0\u42cc\0\u42f9\0\u4326\0\u4353\0\u4380\0\u43ad\0\u01ef"+
|
|
"\0\u43da\0\u4407\0\u4434\0\u4461\0\u448e\0\u44bb\0\u44e8\0\u4515"+
|
|
"\0\u4542\0\u456f\0\u459c\0\u45c9\0\u45f6\0\u4623\0\u4650\0\u01ef"+
|
|
"\0\u467d\0\u46aa\0\u01ef\0\u46d7\0\u4704\0\u01ef\0\u4731\0\u475e"+
|
|
"\0\u478b\0\u47b8\0\u47e5\0\u4812\0\u483f\0\u486c\0\u4899\0\u48c6"+
|
|
"\0\u01ef\0\u48f3\0\u4920\0\u494d\0\u01ef\0\u497a\0\u49a7\0\u01ef"+
|
|
"\0\u49d4\0\u4a01\0\u4a2e\0\u4a5b\0\u4a88\0\u01ef\0\u4ab5\0\u01ef"+
|
|
"\0\u4ae2\0\u4b0f\0\u4b3c\0\u4b69\0\u4b96\0\u4bc3\0\u4bf0\0\u4c1d"+
|
|
"\0\u4c4a\0\u4c77\0\u4ca4\0\u4cd1\0\u01ef\0\u4cfe\0\u4d2b\0\u4d58"+
|
|
"\0\u4d85\0\u4db2\0\u4ddf\0\u4e0c\0\u4e39\0\u01ef\0\u4e66\0\u4e93"+
|
|
"\0\u4ec0\0\u4eed\0\u01ef\0\u4f1a\0\u01ef\0\u01ef\0\u4f47\0\u4f74"+
|
|
"\0\u4fa1\0\u01ef\0\u4fce\0\u4ffb\0\u5028\0\u5055\0\u5082\0\u01ef"+
|
|
"\0\u50af\0\u50dc\0\u5109\0\u01ef\0\u5136\0\u5163\0\u5190\0\u51bd"+
|
|
"\0\u01ef\0\u51ea\0\u5217\0\u5244\0\u5271\0\u529e\0\u52cb\0\u52f8"+
|
|
"\0\u5325\0\u5352\0\u537f\0\u53ac\0\u53d9\0\u01ef\0\u5406\0\u01ef"+
|
|
"\0\u5433\0\u5460\0\u548d\0\u01ef\0\u54ba\0\u54e7\0\u5514\0\u5541"+
|
|
"\0\u556e\0\u559b\0\u55c8\0\u55f5\0\u5622\0\u01ef\0\u564f\0\u01ef"+
|
|
"\0\u567c\0\u56a9\0\u01ef\0\u56d6\0\u01ef\0\u5703\0\u5730\0\u575d"+
|
|
"\0\u578a\0\u57b7\0\u57e4\0\u5811\0\u01ef\0\u583e\0\u586b\0\u01ef"+
|
|
"\0\u01ef\0\u5898\0\u01ef\0\u58c5\0\u58f2\0\u591f\0\u594c\0\u5979"+
|
|
"\0\u59a6\0\u59d3\0\u5a00\0\u5a2d\0\u5a5a\0\u5a87\0\u5ab4\0\u5ae1"+
|
|
"\0\u5b0e\0\u5b3b\0\u5b68\0\u01ef\0\u5b95\0\u5bc2\0\u5bef\0\u5c1c"+
|
|
"\0\u01ef\0\u5c49\0\u5c76\0\u5ca3\0\u5cd0\0\u5cfd\0\u01ef\0\u5d2a"+
|
|
"\0\u01ef\0\u01ef\0\u5d57\0\u5d84\0\u5db1\0\u01ef\0\u5dde\0\u5e0b"+
|
|
"\0\u5e38\0\u5e65\0\u01ef\0\u01ef\0\u01ef\0\u01ef\0\u5e92\0\u5ebf"+
|
|
"\0\u5eec\0\u5f19\0\u5f46\0\u5f73\0\u5fa0\0\u5fcd\0\u5ffa\0\u6027"+
|
|
"\0\u6054\0\u6081\0\u60ae\0\u60db\0\u6108\0\u6135\0\u6162\0\u618f"+
|
|
"\0\u61bc\0\u01ef\0\u61e9\0\u01ef\0\u6216\0\u6243\0\u6270\0\u629d"+
|
|
"\0\u62ca\0\u62f7\0\u6324\0\u6351\0\u637e\0\u01ef\0\u01ef\0\u63ab"+
|
|
"\0\u63d8\0\u01ef\0\u6405\0\u6432\0\u645f\0\u01ef\0\u648c\0\u64b9"+
|
|
"\0\u64e6\0\u6513\0\u6540\0\u656d\0\u659a\0\u65c7\0\u65f4\0\u01ef"+
|
|
"\0\u6621\0\u664e\0\u667b\0\u66a8\0\u66d5\0\u6702\0\u01ef\0\u672f"+
|
|
"\0\u675c\0\u6789\0\u67b6\0\u67e3\0\u6810\0\u683d\0\u686a\0\u6897"+
|
|
"\0\u68c4\0\u68f1\0\u691e\0\u694b\0\u6978\0\u69a5\0\u69d2\0\u01ef"+
|
|
"\0\u69ff\0\u6a2c\0\u6a59\0\u6a86\0\u6ab3\0\u6ae0\0\u6b0d\0\u01ef";
|
|
|
|
private static int [] zzUnpackRowMap() {
|
|
int [] result = new int[712];
|
|
int offset = 0;
|
|
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
|
|
return result;
|
|
}
|
|
|
|
private static int zzUnpackRowMap(String packed, int offset, int [] result) {
|
|
int i = 0; /* index in packed string */
|
|
int j = offset; /* index in unpacked array */
|
|
int l = packed.length();
|
|
while (i < l) {
|
|
int high = packed.charAt(i++) << 16;
|
|
result[j++] = high | packed.charAt(i++);
|
|
}
|
|
return j;
|
|
}
|
|
|
|
/**
|
|
* The transition table of the DFA
|
|
*/
|
|
private static final int [] ZZ_TRANS = zzUnpackTrans();
|
|
|
|
private static final String ZZ_TRANS_PACKED_0 =
|
|
"\1\11\1\12\2\13\1\14\1\15\1\16\1\15\1\17"+
|
|
"\1\20\1\21\4\15\2\22\1\23\1\15\1\24\1\25"+
|
|
"\1\26\1\27\1\30\1\31\1\32\1\33\1\34\1\35"+
|
|
"\1\36\1\37\1\40\1\41\1\42\1\15\1\43\1\44"+
|
|
"\4\15\1\45\1\15\1\46\1\47\11\50\1\51\3\50"+
|
|
"\1\52\37\50\12\53\1\51\2\53\1\52\37\53\1\11"+
|
|
"\1\12\2\13\5\54\1\20\1\21\40\54\1\55\1\56"+
|
|
"\1\11\1\12\2\13\5\54\1\20\1\21\12\54\1\57"+
|
|
"\11\54\1\60\13\54\1\55\1\56\1\11\1\12\2\13"+
|
|
"\5\61\1\20\1\21\4\61\1\11\33\61\1\55\1\56"+
|
|
"\4\11\3\62\4\11\6\62\35\11\1\12\2\13\47\54"+
|
|
"\1\55\1\56\57\0\1\13\56\0\1\15\1\63\45\15"+
|
|
"\6\0\47\15\2\0\1\64\1\12\1\13\1\64\47\16"+
|
|
"\2\64\10\0\1\17\3\0\1\65\4\0\1\17\1\66"+
|
|
"\42\0\1\17\10\0\1\23\43\0\1\67\3\0\1\65"+
|
|
"\4\0\1\67\1\66\36\0\20\15\1\70\3\15\1\71"+
|
|
"\1\72\1\73\2\15\1\74\15\15\6\0\17\15\1\75"+
|
|
"\2\15\1\76\24\15\6\0\16\15\1\77\6\15\1\100"+
|
|
"\1\15\1\101\2\15\1\102\1\103\3\15\1\104\7\15"+
|
|
"\6\0\24\15\1\105\5\15\1\106\1\15\1\107\1\110"+
|
|
"\11\15\6\0\16\15\1\111\1\112\2\15\1\113\4\15"+
|
|
"\1\114\17\15\6\0\21\15\1\115\25\15\6\0\41\15"+
|
|
"\1\116\5\15\6\0\22\15\1\117\1\120\3\15\1\121"+
|
|
"\17\15\6\0\42\15\1\122\4\15\6\0\16\15\1\123"+
|
|
"\10\15\1\124\17\15\6\0\16\15\1\125\30\15\6\0"+
|
|
"\16\15\1\126\3\15\1\127\4\15\1\130\17\15\6\0"+
|
|
"\17\15\1\131\2\15\1\132\1\133\1\134\1\15\1\135"+
|
|
"\1\136\4\15\1\137\12\15\6\0\16\15\1\140\3\15"+
|
|
"\1\141\1\15\1\142\22\15\6\0\17\15\1\143\2\15"+
|
|
"\1\144\1\145\3\15\1\146\4\15\1\147\12\15\6\0"+
|
|
"\22\15\1\150\24\15\6\0\16\15\1\151\30\15\6\0"+
|
|
"\27\15\1\152\4\15\1\153\12\15\2\0\11\50\1\0"+
|
|
"\3\50\1\0\37\50\12\53\1\0\2\53\1\0\37\53"+
|
|
"\4\0\47\54\6\0\27\54\1\154\17\54\6\0\26\54"+
|
|
"\1\155\20\54\6\0\13\61\1\0\33\61\2\0\4\156"+
|
|
"\1\157\1\15\45\157\2\156\1\64\1\12\1\13\52\64"+
|
|
"\10\0\1\160\10\0\1\160\43\0\1\161\6\0\2\162"+
|
|
"\1\163\37\0\21\15\1\164\25\15\6\0\25\15\1\165"+
|
|
"\21\15\6\0\25\15\1\166\21\15\6\0\25\15\1\167"+
|
|
"\21\15\6\0\17\15\1\170\27\15\6\0\26\15\1\171"+
|
|
"\20\15\6\0\24\15\1\172\22\15\6\0\21\15\1\173"+
|
|
"\25\15\6\0\17\15\1\174\14\15\1\175\12\15\6\0"+
|
|
"\31\15\1\176\4\15\1\177\10\15\6\0\17\15\1\200"+
|
|
"\27\15\6\0\17\15\1\201\27\15\6\0\17\15\1\202"+
|
|
"\2\15\1\203\24\15\6\0\25\15\1\204\21\15\6\0"+
|
|
"\36\15\1\205\10\15\6\0\35\15\1\206\11\15\6\0"+
|
|
"\32\15\1\207\14\15\6\0\41\15\1\210\5\15\6\0"+
|
|
"\26\15\1\211\2\15\1\212\15\15\6\0\20\15\1\213"+
|
|
"\26\15\6\0\16\15\1\214\30\15\6\0\33\15\1\215"+
|
|
"\13\15\6\0\32\15\1\216\7\15\1\217\4\15\6\0"+
|
|
"\16\15\1\220\1\221\27\15\6\0\34\15\1\222\12\15"+
|
|
"\6\0\17\15\1\223\27\15\6\0\34\15\1\224\12\15"+
|
|
"\6\0\17\15\1\225\27\15\6\0\32\15\1\226\14\15"+
|
|
"\6\0\25\15\1\227\21\15\6\0\32\15\1\230\1\15"+
|
|
"\1\231\12\15\6\0\32\15\1\232\14\15\6\0\25\15"+
|
|
"\1\233\6\15\1\234\1\15\1\235\10\15\6\0\21\15"+
|
|
"\1\236\1\15\1\237\21\15\1\240\1\15\6\0\17\15"+
|
|
"\1\241\27\15\6\0\23\15\1\242\23\15\6\0\20\15"+
|
|
"\1\243\26\15\6\0\32\15\1\244\14\15\6\0\16\15"+
|
|
"\1\245\30\15\6\0\21\15\1\246\4\15\1\247\20\15"+
|
|
"\6\0\24\15\1\250\1\251\21\15\6\0\23\15\1\252"+
|
|
"\23\15\6\0\32\15\1\253\14\15\6\0\34\15\1\254"+
|
|
"\12\15\6\0\27\15\1\255\17\15\6\0\43\15\1\256"+
|
|
"\3\15\6\0\22\15\1\257\24\15\6\0\21\15\1\260"+
|
|
"\12\15\1\261\12\15\6\0\16\15\1\262\30\15\6\0"+
|
|
"\32\15\1\263\1\15\1\264\1\15\1\265\10\15\6\0"+
|
|
"\27\15\1\266\17\15\6\0\31\54\1\267\15\54\6\0"+
|
|
"\20\54\1\270\26\54\2\0\5\156\1\271\53\156\1\157"+
|
|
"\1\272\45\157\2\156\10\0\1\160\10\0\1\160\1\66"+
|
|
"\42\0\1\161\10\0\1\161\43\0\1\161\10\0\1\163"+
|
|
"\37\0\22\15\1\273\24\15\6\0\22\15\1\274\24\15"+
|
|
"\6\0\17\15\1\275\27\15\6\0\27\15\1\276\17\15"+
|
|
"\6\0\27\15\1\277\17\15\6\0\40\15\1\300\6\15"+
|
|
"\6\0\32\15\1\301\14\15\6\0\21\15\1\302\25\15"+
|
|
"\6\0\34\15\1\303\12\15\6\0\24\15\1\304\2\15"+
|
|
"\1\305\17\15\6\0\32\15\1\306\14\15\6\0\16\15"+
|
|
"\1\307\30\15\6\0\33\15\1\310\13\15\6\0\34\15"+
|
|
"\1\311\12\15\6\0\33\15\1\312\13\15\6\0\30\15"+
|
|
"\1\313\16\15\6\0\23\15\1\314\23\15\6\0\16\15"+
|
|
"\1\315\30\15\6\0\31\15\1\316\15\15\6\0\16\15"+
|
|
"\1\317\30\15\6\0\40\15\1\320\6\15\6\0\27\15"+
|
|
"\1\321\17\15\6\0\34\15\1\322\12\15\6\0\7\15"+
|
|
"\1\323\37\15\6\0\16\15\1\324\30\15\6\0\21\15"+
|
|
"\1\325\3\15\1\326\21\15\6\0\33\15\1\327\13\15"+
|
|
"\6\0\17\15\1\330\27\15\6\0\21\15\1\331\25\15"+
|
|
"\6\0\26\15\1\332\20\15\6\0\31\15\1\333\15\15"+
|
|
"\6\0\25\15\1\334\21\15\6\0\7\15\1\335\11\15"+
|
|
"\1\336\25\15\6\0\16\15\1\337\30\15\6\0\45\15"+
|
|
"\1\340\1\15\6\0\16\15\1\341\30\15\6\0\42\15"+
|
|
"\1\342\4\15\6\0\16\15\1\343\30\15\6\0\37\15"+
|
|
"\1\344\7\15\6\0\21\15\1\345\3\15\1\346\21\15"+
|
|
"\6\0\21\15\1\347\25\15\6\0\25\15\1\350\1\15"+
|
|
"\1\351\17\15\6\0\41\15\1\352\5\15\6\0\16\15"+
|
|
"\1\353\30\15\6\0\26\15\1\354\3\15\1\355\14\15"+
|
|
"\6\0\23\15\1\356\23\15\6\0\21\15\1\357\25\15"+
|
|
"\6\0\35\15\1\360\11\15\6\0\22\15\1\361\24\15"+
|
|
"\6\0\25\15\1\362\21\15\6\0\25\15\1\363\21\15"+
|
|
"\6\0\17\15\1\364\27\15\6\0\16\15\1\365\30\15"+
|
|
"\6\0\22\15\1\366\24\15\6\0\25\15\1\367\21\15"+
|
|
"\6\0\33\15\1\370\13\15\6\0\32\15\1\371\7\15"+
|
|
"\1\372\4\15\6\0\25\15\1\373\21\15\6\0\27\15"+
|
|
"\1\374\17\15\6\0\33\15\1\375\13\15\6\0\36\15"+
|
|
"\1\376\10\15\6\0\16\15\1\377\10\15\1\u0100\17\15"+
|
|
"\6\0\25\15\1\u0101\21\15\6\0\25\15\1\u0102\21\15"+
|
|
"\6\0\32\54\1\u0103\14\54\2\0\4\156\1\13\1\271"+
|
|
"\53\156\1\15\1\272\45\157\2\156\4\0\23\15\1\u0104"+
|
|
"\23\15\6\0\34\15\1\u0105\12\15\6\0\26\15\1\u0106"+
|
|
"\20\15\6\0\30\15\1\u0107\16\15\6\0\32\15\1\u0108"+
|
|
"\14\15\6\0\36\15\1\u0109\10\15\6\0\27\15\1\u010a"+
|
|
"\17\15\6\0\25\15\1\u010b\21\15\6\0\26\15\1\u010c"+
|
|
"\20\15\6\0\32\15\1\u010d\14\15\6\0\17\15\1\u010e"+
|
|
"\27\15\6\0\7\15\1\u010f\37\15\6\0\16\15\1\u0110"+
|
|
"\30\15\6\0\16\15\1\u0111\30\15\6\0\16\15\1\u0112"+
|
|
"\30\15\6\0\27\15\1\u0113\17\15\6\0\34\15\1\u0114"+
|
|
"\12\15\6\0\25\15\1\u0115\21\15\6\0\34\15\1\u0116"+
|
|
"\12\15\6\0\7\15\1\u0117\37\15\6\0\26\15\1\u0118"+
|
|
"\20\15\6\0\17\15\1\u0119\27\15\6\0\23\15\1\u011a"+
|
|
"\4\15\1\u011b\1\15\1\u011c\14\15\6\0\25\15\1\u011d"+
|
|
"\21\15\6\0\34\15\1\u011e\12\15\6\0\22\15\1\u011f"+
|
|
"\24\15\6\0\34\15\1\u0120\12\15\6\0\21\15\1\u0121"+
|
|
"\25\15\6\0\23\15\1\u0122\1\u0123\22\15\6\0\16\15"+
|
|
"\1\u0124\30\15\6\0\27\15\1\u0125\17\15\6\0\17\15"+
|
|
"\1\u0126\6\15\1\u0127\5\15\1\u0128\3\15\1\u0129\6\15"+
|
|
"\6\0\34\15\1\u012a\12\15\6\0\22\15\1\u012b\24\15"+
|
|
"\6\0\17\15\1\u012c\27\15\6\0\25\15\1\u012d\21\15"+
|
|
"\6\0\16\15\1\u012e\30\15\6\0\7\15\1\u012f\37\15"+
|
|
"\6\0\25\15\1\u0130\21\15\6\0\34\15\1\u0131\12\15"+
|
|
"\6\0\25\15\1\u0132\21\15\6\0\23\15\1\u0133\5\15"+
|
|
"\1\u0134\15\15\6\0\34\15\1\u0135\12\15\6\0\16\15"+
|
|
"\1\u0136\30\15\6\0\16\15\1\u0137\30\15\6\0\7\15"+
|
|
"\1\u0138\37\15\6\0\16\15\1\u0139\30\15\6\0\23\15"+
|
|
"\1\u013a\23\15\6\0\17\15\1\u013b\27\15\6\0\16\15"+
|
|
"\1\u013c\30\15\6\0\25\15\1\u013d\21\15\6\0\21\15"+
|
|
"\1\u013e\25\15\6\0\24\15\1\u013f\22\15\6\0\41\15"+
|
|
"\1\u0140\5\15\6\0\7\15\1\u0141\37\15\6\0\25\15"+
|
|
"\1\u0142\21\15\6\0\25\15\1\u0143\21\15\6\0\7\15"+
|
|
"\1\u0144\37\15\6\0\44\15\1\u0145\2\15\6\0\22\15"+
|
|
"\1\u0146\24\15\6\0\22\15\1\u0147\24\15\6\0\7\15"+
|
|
"\1\u0148\37\15\6\0\32\15\1\u0149\14\15\6\0\37\15"+
|
|
"\1\u014a\7\15\6\0\16\15\1\u014b\30\15\6\0\17\54"+
|
|
"\1\u014c\27\54\6\0\24\15\1\u014d\22\15\6\0\22\15"+
|
|
"\1\u014e\24\15\6\0\37\15\1\u014f\7\15\6\0\16\15"+
|
|
"\1\u0150\30\15\6\0\21\15\1\u0151\25\15\6\0\17\15"+
|
|
"\1\u0152\27\15\6\0\22\15\1\u0153\24\15\6\0\7\15"+
|
|
"\1\u0154\37\15\6\0\25\15\1\u0155\21\15\6\0\31\15"+
|
|
"\1\u0156\15\15\6\0\23\15\1\u0157\23\15\6\0\17\15"+
|
|
"\1\u0158\27\15\6\0\7\15\1\u0159\37\15\6\0\32\15"+
|
|
"\1\u015a\14\15\6\0\37\15\1\u015b\7\15\6\0\7\15"+
|
|
"\1\u015c\37\15\6\0\25\15\1\u015d\21\15\6\0\17\15"+
|
|
"\1\u015e\27\15\6\0\34\15\1\u015f\12\15\6\0\17\15"+
|
|
"\1\u0160\27\15\6\0\27\15\1\u0161\17\15\6\0\16\15"+
|
|
"\1\u0162\30\15\6\0\17\15\1\u0163\27\15\6\0\22\15"+
|
|
"\1\u0164\24\15\6\0\32\15\1\u0165\14\15\6\0\17\15"+
|
|
"\1\u0166\27\15\6\0\7\15\1\u0167\6\15\1\u0168\30\15"+
|
|
"\6\0\16\15\1\u0169\30\15\6\0\27\15\1\u016a\17\15"+
|
|
"\6\0\26\15\1\u016b\20\15\6\0\25\15\1\u016c\21\15"+
|
|
"\6\0\22\15\1\u016d\24\15\6\0\24\15\1\u016e\22\15"+
|
|
"\6\0\16\15\1\u016f\30\15\6\0\17\15\1\u0170\27\15"+
|
|
"\6\0\34\15\1\u0171\12\15\6\0\23\15\1\u0172\23\15"+
|
|
"\6\0\41\15\1\u0173\5\15\6\0\34\15\1\u0174\12\15"+
|
|
"\6\0\23\15\1\u0175\23\15\6\0\17\15\1\u0176\27\15"+
|
|
"\6\0\22\15\1\u0177\24\15\6\0\27\15\1\u0178\17\15"+
|
|
"\6\0\27\15\1\u0179\17\15\6\0\22\15\1\u017a\24\15"+
|
|
"\6\0\7\15\1\u017b\32\15\1\u017c\4\15\6\0\7\15"+
|
|
"\1\u017d\37\15\6\0\25\15\1\u017e\21\15\6\0\34\15"+
|
|
"\1\u017f\12\15\6\0\24\15\1\u0180\22\15\6\0\32\15"+
|
|
"\1\u0181\14\15\6\0\21\15\1\u0182\25\15\6\0\16\15"+
|
|
"\1\u0183\30\15\6\0\25\15\1\u0184\21\15\6\0\35\15"+
|
|
"\1\u0185\11\15\6\0\21\15\1\u0186\25\15\6\0\22\15"+
|
|
"\1\u0187\24\15\6\0\26\15\1\u0188\1\15\1\u0189\16\15"+
|
|
"\6\0\22\15\1\u018a\24\15\6\0\24\15\1\u018b\22\15"+
|
|
"\6\0\45\15\1\u018c\1\15\6\0\40\15\1\u018d\6\15"+
|
|
"\6\0\31\15\1\u018e\15\15\6\0\7\15\1\u018f\37\15"+
|
|
"\6\0\23\54\1\u0190\23\54\6\0\25\15\1\u0191\21\15"+
|
|
"\6\0\24\15\1\u0192\22\15\6\0\25\15\1\u0193\21\15"+
|
|
"\6\0\34\15\1\u0194\12\15\6\0\32\15\1\u0195\14\15"+
|
|
"\6\0\33\15\1\u0196\1\u0197\12\15\6\0\24\15\1\u0198"+
|
|
"\22\15\6\0\7\15\1\u0199\37\15\6\0\32\15\1\u019a"+
|
|
"\14\15\6\0\35\15\1\u019b\11\15\6\0\16\15\1\u019c"+
|
|
"\30\15\6\0\34\15\1\u019d\12\15\6\0\41\15\1\u019e"+
|
|
"\5\15\6\0\23\15\1\u019f\23\15\6\0\41\15\1\u01a0"+
|
|
"\5\15\6\0\41\15\1\u01a1\5\15\6\0\17\15\1\u01a2"+
|
|
"\27\15\6\0\25\15\1\u01a3\21\15\6\0\32\15\1\u01a4"+
|
|
"\14\15\6\0\23\15\1\u01a5\23\15\6\0\16\15\1\u01a6"+
|
|
"\30\15\6\0\32\15\1\u01a7\14\15\6\0\26\15\1\u01a8"+
|
|
"\20\15\6\0\21\15\1\u01a9\25\15\6\0\25\15\1\u01aa"+
|
|
"\21\15\6\0\17\15\1\u01ab\27\15\6\0\7\15\1\u01ac"+
|
|
"\37\15\6\0\21\15\1\u01ad\25\15\6\0\23\15\1\u01ae"+
|
|
"\23\15\6\0\16\15\1\u01af\30\15\6\0\25\15\1\u01b0"+
|
|
"\21\15\6\0\40\15\1\u01b1\6\15\6\0\7\15\1\u01b2"+
|
|
"\37\15\6\0\27\15\1\u01b3\17\15\6\0\26\15\1\u01b4"+
|
|
"\20\15\6\0\24\15\1\u01b5\22\15\6\0\22\15\1\u01b6"+
|
|
"\24\15\6\0\32\15\1\u01b7\14\15\6\0\32\15\1\u01b8"+
|
|
"\14\15\6\0\26\15\1\u01b9\11\15\1\u01ba\6\15\6\0"+
|
|
"\16\15\1\u01bb\30\15\6\0\30\15\1\u01bc\16\15\6\0"+
|
|
"\27\15\1\u01bd\17\15\6\0\16\15\1\u01be\15\15\1\u01bf"+
|
|
"\12\15\6\0\25\15\1\u01c0\21\15\6\0\31\15\1\u01c1"+
|
|
"\15\15\6\0\7\15\1\u01c2\37\15\6\0\27\15\1\u01c3"+
|
|
"\17\15\6\0\25\15\1\u01c4\21\15\6\0\17\15\1\u01c5"+
|
|
"\27\15\6\0\16\15\1\u01c6\30\15\6\0\32\15\1\u01c7"+
|
|
"\14\15\6\0\25\15\1\u01c8\21\15\6\0\16\15\1\u01c9"+
|
|
"\30\15\6\0\34\15\1\u01ca\12\15\6\0\16\15\1\u01cb"+
|
|
"\30\15\6\0\25\15\1\u01cc\21\15\6\0\7\15\1\u01cd"+
|
|
"\37\15\6\0\41\15\1\u01ce\5\15\6\0\17\15\1\u01cf"+
|
|
"\27\15\6\0\27\15\1\u01d0\17\15\6\0\34\15\1\u01d1"+
|
|
"\12\15\6\0\46\15\1\u01d2\6\0\31\15\1\u01d3\15\15"+
|
|
"\6\0\27\15\1\u01d4\17\15\6\0\24\15\1\u01d5\22\15"+
|
|
"\6\0\33\15\1\u01d6\13\15\6\0\7\15\1\u01d7\37\15"+
|
|
"\6\0\16\15\1\u01d8\30\15\6\0\25\15\1\u01d9\21\15"+
|
|
"\6\0\32\15\1\u01da\14\15\6\0\26\15\1\u01db\20\15"+
|
|
"\6\0\23\15\1\u01dc\23\15\6\0\23\15\1\u01dd\23\15"+
|
|
"\6\0\21\15\1\u01de\25\15\6\0\25\15\1\u01df\21\15"+
|
|
"\6\0\16\15\1\u01e0\30\15\6\0\33\15\1\u01e1\13\15"+
|
|
"\6\0\16\15\1\u01e2\30\15\6\0\7\15\1\u01e3\37\15"+
|
|
"\6\0\36\15\1\u01e4\10\15\6\0\20\15\1\u01e5\26\15"+
|
|
"\6\0\40\15\1\u01e6\6\15\6\0\25\15\1\u01e7\21\15"+
|
|
"\6\0\32\15\1\u01e8\14\15\6\0\16\15\1\u01e9\30\15"+
|
|
"\6\0\22\15\1\u01ea\24\15\6\0\16\15\1\u01eb\30\15"+
|
|
"\6\0\32\15\1\u01ec\14\15\6\0\27\15\1\u01ed\17\15"+
|
|
"\6\0\31\15\1\u01ee\15\15\6\0\36\15\1\u01ef\10\15"+
|
|
"\6\0\16\15\1\u01be\30\15\6\0\27\15\1\u01f0\17\15"+
|
|
"\6\0\23\15\1\u01f1\23\15\6\0\35\15\1\u01f2\11\15"+
|
|
"\6\0\30\15\1\u01f3\16\15\6\0\41\15\1\u01f4\5\15"+
|
|
"\6\0\36\15\1\u01f5\10\15\6\0\34\15\1\u01f6\12\15"+
|
|
"\6\0\25\15\1\u01f7\21\15\6\0\16\15\1\u01f8\30\15"+
|
|
"\6\0\16\15\1\u01f9\30\15\6\0\16\15\1\u01fa\30\15"+
|
|
"\6\0\33\15\1\u01fb\13\15\6\0\21\15\1\u01fc\25\15"+
|
|
"\6\0\33\15\1\u01fd\13\15\6\0\16\15\1\u01fe\30\15"+
|
|
"\6\0\24\15\1\u01ff\22\15\6\0\23\15\1\u0200\23\15"+
|
|
"\6\0\43\15\1\u0201\3\15\6\0\23\15\1\u0202\23\15"+
|
|
"\6\0\16\15\1\u0203\30\15\6\0\33\15\1\u0204\13\15"+
|
|
"\6\0\34\15\1\u0205\12\15\6\0\25\15\1\u0206\21\15"+
|
|
"\6\0\16\15\1\u0207\30\15\6\0\17\15\1\u0208\27\15"+
|
|
"\6\0\42\15\1\u0209\4\15\6\0\21\15\1\u020a\25\15"+
|
|
"\6\0\22\15\1\u020b\24\15\6\0\36\15\1\u020c\10\15"+
|
|
"\6\0\22\15\1\u020d\24\15\6\0\16\15\1\u020e\30\15"+
|
|
"\6\0\34\15\1\u020f\12\15\6\0\16\15\1\u0210\30\15"+
|
|
"\6\0\7\15\1\u0211\37\15\6\0\32\15\1\u0212\14\15"+
|
|
"\6\0\16\15\1\u0213\30\15\6\0\25\15\1\u0214\21\15"+
|
|
"\6\0\17\15\1\u0215\27\15\6\0\37\15\1\u0216\7\15"+
|
|
"\6\0\7\15\1\u0217\37\15\6\0\22\15\1\u0218\24\15"+
|
|
"\6\0\16\15\1\u0219\30\15\6\0\27\15\1\u021a\17\15"+
|
|
"\6\0\16\15\1\u021b\30\15\6\0\23\15\1\u021c\23\15"+
|
|
"\6\0\21\15\1\u021d\25\15\6\0\17\15\1\u021e\27\15"+
|
|
"\6\0\33\15\1\u021f\13\15\6\0\21\15\1\u0220\25\15"+
|
|
"\6\0\7\15\1\u0221\37\15\6\0\34\15\1\u0222\12\15"+
|
|
"\6\0\21\15\1\u0223\25\15\6\0\24\15\1\u0224\22\15"+
|
|
"\6\0\22\15\1\u0225\24\15\6\0\16\15\1\u0226\30\15"+
|
|
"\6\0\16\15\1\u0227\30\15\6\0\16\15\1\u0228\30\15"+
|
|
"\6\0\17\15\1\u0229\27\15\6\0\7\15\1\u022a\37\15"+
|
|
"\6\0\21\15\1\u022b\25\15\6\0\36\15\1\u022c\10\15"+
|
|
"\6\0\24\15\1\u022d\22\15\6\0\7\15\1\u022e\37\15"+
|
|
"\6\0\24\15\1\u022f\22\15\6\0\31\15\1\u0230\15\15"+
|
|
"\6\0\17\15\1\u0231\27\15\6\0\33\15\1\u0232\13\15"+
|
|
"\6\0\25\15\1\u0233\21\15\6\0\33\15\1\u0234\13\15"+
|
|
"\6\0\7\15\1\u0235\37\15\6\0\25\15\1\u0236\21\15"+
|
|
"\6\0\36\15\1\u0237\10\15\6\0\32\15\1\u0238\14\15"+
|
|
"\6\0\34\15\1\u0239\12\15\6\0\7\15\1\u023a\37\15"+
|
|
"\6\0\16\15\1\u023b\30\15\6\0\27\15\1\u023c\17\15"+
|
|
"\6\0\23\15\1\u023d\23\15\6\0\22\15\1\u023e\24\15"+
|
|
"\6\0\22\15\1\u023f\24\15\6\0\21\15\1\u0240\25\15"+
|
|
"\6\0\16\15\1\u0241\30\15\6\0\7\15\1\u0242\37\15"+
|
|
"\6\0\33\15\1\u0243\13\15\6\0\25\15\1\u0244\21\15"+
|
|
"\6\0\36\15\1\u0245\10\15\6\0\34\15\1\u0246\12\15"+
|
|
"\6\0\26\15\1\u0247\20\15\6\0\21\15\1\u0248\25\15"+
|
|
"\6\0\25\15\1\u0249\21\15\6\0\20\15\1\u024a\26\15"+
|
|
"\6\0\25\15\1\u024b\21\15\6\0\34\15\1\u024c\12\15"+
|
|
"\6\0\34\15\1\u024d\12\15\6\0\17\15\1\u024e\27\15"+
|
|
"\6\0\34\15\1\u024f\12\15\6\0\22\15\1\u0250\24\15"+
|
|
"\6\0\26\15\1\u0251\20\15\6\0\27\15\1\u0252\17\15"+
|
|
"\6\0\21\15\1\u0253\25\15\6\0\36\15\1\u0254\10\15"+
|
|
"\6\0\22\15\1\u0255\24\15\6\0\24\15\1\u0256\22\15"+
|
|
"\6\0\23\15\1\u0257\23\15\6\0\16\15\1\u0258\30\15"+
|
|
"\6\0\35\15\1\u0259\11\15\6\0\32\15\1\u025a\14\15"+
|
|
"\6\0\7\15\1\u025b\37\15\6\0\16\15\1\u025c\30\15"+
|
|
"\6\0\25\15\1\u025d\21\15\6\0\23\15\1\u025e\23\15"+
|
|
"\6\0\41\15\1\u025f\5\15\6\0\16\15\1\u0260\30\15"+
|
|
"\6\0\41\15\1\u0261\5\15\6\0\25\15\1\u0262\21\15"+
|
|
"\6\0\22\15\1\u0263\24\15\6\0\24\15\1\u0264\22\15"+
|
|
"\6\0\22\15\1\u0265\24\15\6\0\34\15\1\u0266\12\15"+
|
|
"\6\0\25\15\1\u0267\21\15\6\0\16\15\1\u0268\30\15"+
|
|
"\6\0\32\15\1\u0269\14\15\6\0\25\15\1\u026a\21\15"+
|
|
"\6\0\24\15\1\u026b\22\15\6\0\25\15\1\u026c\21\15"+
|
|
"\6\0\16\15\1\u026d\30\15\6\0\22\15\1\u026e\24\15"+
|
|
"\6\0\26\15\1\u026f\20\15\6\0\7\15\1\u0270\37\15"+
|
|
"\6\0\17\15\1\u0271\27\15\6\0\7\15\1\u0272\37\15"+
|
|
"\6\0\16\15\1\u0273\30\15\6\0\37\15\1\u0274\7\15"+
|
|
"\6\0\23\15\1\u0275\23\15\6\0\25\15\1\u0276\21\15"+
|
|
"\6\0\21\15\1\u0277\25\15\6\0\16\15\1\u0278\30\15"+
|
|
"\6\0\31\15\1\u0279\15\15\6\0\25\15\1\u027a\21\15"+
|
|
"\6\0\25\15\1\u027b\21\15\6\0\34\15\1\u027c\12\15"+
|
|
"\6\0\22\15\1\u027d\24\15\6\0\42\15\1\u027e\4\15"+
|
|
"\6\0\21\15\1\u027f\25\15\6\0\35\15\1\u0280\11\15"+
|
|
"\6\0\25\15\1\u0281\21\15\6\0\26\15\1\u0282\20\15"+
|
|
"\6\0\34\15\1\u0283\12\15\6\0\27\15\1\u0284\17\15"+
|
|
"\6\0\27\15\1\u0285\17\15\6\0\16\15\1\u0286\15\15"+
|
|
"\1\u0287\12\15\6\0\21\15\1\u0288\25\15\6\0\17\15"+
|
|
"\1\u0289\27\15\6\0\21\15\1\u028a\25\15\6\0\34\15"+
|
|
"\1\u028b\12\15\6\0\21\15\1\u028c\25\15\6\0\25\15"+
|
|
"\1\u028d\21\15\6\0\16\15\1\u028e\30\15\6\0\22\15"+
|
|
"\1\u028f\24\15\6\0\32\15\1\u0290\14\15\6\0\36\15"+
|
|
"\1\u0291\10\15\6\0\16\15\1\u0286\30\15\6\0\25\15"+
|
|
"\1\u0292\21\15\6\0\33\15\1\u0293\13\15\6\0\16\15"+
|
|
"\1\u0294\30\15\6\0\27\15\1\u0295\17\15\6\0\16\15"+
|
|
"\1\u0296\30\15\6\0\32\15\1\u0297\14\15\6\0\31\15"+
|
|
"\1\u0298\15\15\6\0\7\15\1\u0299\37\15\6\0\21\15"+
|
|
"\1\u029a\25\15\6\0\33\15\1\u029b\13\15\6\0\16\15"+
|
|
"\1\u029c\30\15\6\0\22\15\1\u029d\24\15\6\0\21\15"+
|
|
"\1\u029e\25\15\6\0\36\15\1\u029f\10\15\6\0\27\15"+
|
|
"\1\u02a0\17\15\6\0\34\15\1\u02a1\12\15\6\0\32\15"+
|
|
"\1\u02a2\14\15\6\0\27\15\1\u02a3\17\15\6\0\32\15"+
|
|
"\1\u02a4\14\15\6\0\22\15\1\u02a5\24\15\6\0\7\15"+
|
|
"\1\u02a6\37\15\6\0\34\15\1\u02a7\12\15\6\0\31\15"+
|
|
"\1\u02a8\15\15\6\0\24\15\1\u02a9\22\15\6\0\25\15"+
|
|
"\1\u02aa\21\15\6\0\16\15\1\u02ab\30\15\6\0\25\15"+
|
|
"\1\u02ac\21\15\6\0\34\15\1\u02ad\12\15\6\0\26\15"+
|
|
"\1\u02ae\20\15\6\0\16\15\1\u02af\30\15\6\0\17\15"+
|
|
"\1\u02b0\27\15\6\0\25\15\1\u02b1\21\15\6\0\26\15"+
|
|
"\1\u02b2\20\15\6\0\27\15\1\u02b3\17\15\6\0\16\15"+
|
|
"\1\u02b4\30\15\6\0\22\15\1\u02b5\24\15\6\0\7\15"+
|
|
"\1\u02b6\37\15\6\0\32\15\1\u02b7\14\15\6\0\26\15"+
|
|
"\1\u02b8\20\15\6\0\7\15\1\u02b9\37\15\6\0\22\15"+
|
|
"\1\u02ba\24\15\6\0\25\15\1\u02bb\21\15\6\0\21\15"+
|
|
"\1\u02bc\25\15\6\0\34\15\1\u02bd\12\15\6\0\25\15"+
|
|
"\1\u02be\21\15\6\0\17\15\1\u02bf\27\15\6\0\21\15"+
|
|
"\1\u02c0\25\15\6\0\26\15\1\u02c1\20\15\6\0\16\15"+
|
|
"\1\u02c2\30\15\6\0\7\15\1\u02c3\37\15\6\0\26\15"+
|
|
"\1\u02c4\20\15\6\0\22\15\1\u02c5\24\15\6\0\21\15"+
|
|
"\1\u02c6\25\15\6\0\25\15\1\u02c7\21\15\6\0\21\15"+
|
|
"\1\u02c8\25\15\2\0";
|
|
|
|
private static int [] zzUnpackTrans() {
|
|
int [] result = new int[27450];
|
|
int offset = 0;
|
|
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
|
|
return result;
|
|
}
|
|
|
|
private static int zzUnpackTrans(String packed, int offset, int [] result) {
|
|
int i = 0; /* index in packed string */
|
|
int j = offset; /* index in unpacked array */
|
|
int l = packed.length();
|
|
while (i < l) {
|
|
int count = packed.charAt(i++);
|
|
int value = packed.charAt(i++);
|
|
value--;
|
|
do result[j++] = value; while (--count > 0);
|
|
}
|
|
return j;
|
|
}
|
|
|
|
|
|
/* error codes */
|
|
private static final int ZZ_UNKNOWN_ERROR = 0;
|
|
private static final int ZZ_NO_MATCH = 1;
|
|
private static final int ZZ_PUSHBACK_2BIG = 2;
|
|
|
|
/* error messages for the codes above */
|
|
private static final String ZZ_ERROR_MSG[] = {
|
|
"Unkown internal scanner error",
|
|
"Error: could not match input",
|
|
"Error: pushback value was too large"
|
|
};
|
|
|
|
/**
|
|
* ZZ_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
|
|
*/
|
|
private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute();
|
|
|
|
private static final String ZZ_ATTRIBUTE_PACKED_0 =
|
|
"\7\0\1\1\1\11\1\1\1\11\4\1\2\11\24\1"+
|
|
"\2\11\1\1\2\11\2\1\2\11\3\1\1\11\1\1"+
|
|
"\3\0\67\1\1\0\3\1\1\0\1\11\105\1\1\0"+
|
|
"\u020f\1";
|
|
|
|
private static int [] zzUnpackAttribute() {
|
|
int [] result = new int[712];
|
|
int offset = 0;
|
|
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
|
|
return result;
|
|
}
|
|
|
|
private static int zzUnpackAttribute(String packed, int offset, int [] result) {
|
|
int i = 0; /* index in packed string */
|
|
int j = offset; /* index in unpacked array */
|
|
int l = packed.length();
|
|
while (i < l) {
|
|
int count = packed.charAt(i++);
|
|
int value = packed.charAt(i++);
|
|
do result[j++] = value; while (--count > 0);
|
|
}
|
|
return j;
|
|
}
|
|
|
|
/** the input device */
|
|
private java.io.Reader zzReader;
|
|
|
|
/** the current state of the DFA */
|
|
private int zzState;
|
|
|
|
/** the current lexical state */
|
|
private int zzLexicalState = YYINITIAL;
|
|
|
|
/** this buffer contains the current text to be matched and is
|
|
the source of the yytext() string */
|
|
private char zzBuffer[] = new char[ZZ_BUFFERSIZE];
|
|
|
|
/** the textposition at the last accepting state */
|
|
private int zzMarkedPos;
|
|
|
|
/** the textposition at the last state to be included in yytext */
|
|
private int zzPushbackPos;
|
|
|
|
/** the current text position in the buffer */
|
|
private int zzCurrentPos;
|
|
|
|
/** startRead marks the beginning of the yytext() string in the buffer */
|
|
private int zzStartRead;
|
|
|
|
/** endRead marks the last character in the buffer, that has been read
|
|
from input */
|
|
private int zzEndRead;
|
|
|
|
/** number of newlines encountered up to the start of the matched text */
|
|
private int yyline;
|
|
|
|
/** the number of characters up to the start of the matched text */
|
|
private int yychar;
|
|
|
|
/**
|
|
* the number of characters from the last newline up to the start of the
|
|
* matched text
|
|
*/
|
|
private int yycolumn;
|
|
|
|
/**
|
|
* zzAtBOL == true <=> the scanner is currently at the beginning of a line
|
|
*/
|
|
private boolean zzAtBOL = true;
|
|
|
|
/** zzAtEOF == true <=> the scanner is at the EOF */
|
|
private boolean zzAtEOF;
|
|
|
|
/* user code: */
|
|
StringBuffer string = new StringBuffer();
|
|
|
|
|
|
/**
|
|
* Creates a new scanner
|
|
* There is also a java.io.InputStream version of this constructor.
|
|
*
|
|
* @param in the java.io.Reader to read input from.
|
|
*/
|
|
SpecctraFileScanner(java.io.Reader in) {
|
|
this.zzReader = in;
|
|
}
|
|
|
|
/**
|
|
* Creates a new scanner.
|
|
* There is also java.io.Reader version of this constructor.
|
|
*
|
|
* @param in the java.io.Inputstream to read input from.
|
|
*/
|
|
SpecctraFileScanner(java.io.InputStream in) {
|
|
this(new java.io.InputStreamReader(in));
|
|
}
|
|
|
|
/**
|
|
* Unpacks the compressed character translation table.
|
|
*
|
|
* @param packed the packed character translation table
|
|
* @return the unpacked character translation table
|
|
*/
|
|
private static char [] zzUnpackCMap(String packed) {
|
|
char [] map = new char[0x10000];
|
|
int i = 0; /* index in packed string */
|
|
int j = 0; /* index in unpacked array */
|
|
while (i < 274) {
|
|
int count = packed.charAt(i++);
|
|
char value = packed.charAt(i++);
|
|
do map[j++] = value; while (--count > 0);
|
|
}
|
|
return map;
|
|
}
|
|
|
|
|
|
/**
|
|
* Refills the input buffer.
|
|
*
|
|
* @return <code>false</code>, iff there was new input.
|
|
*
|
|
* @exception java.io.IOException if any I/O-Error occurs
|
|
*/
|
|
private boolean zzRefill() throws java.io.IOException {
|
|
|
|
/* first: make room (if you can) */
|
|
if (zzStartRead > 0) {
|
|
System.arraycopy(zzBuffer, zzStartRead,
|
|
zzBuffer, 0,
|
|
zzEndRead-zzStartRead);
|
|
|
|
/* translate stored positions */
|
|
zzEndRead-= zzStartRead;
|
|
zzCurrentPos-= zzStartRead;
|
|
zzMarkedPos-= zzStartRead;
|
|
zzPushbackPos-= zzStartRead;
|
|
zzStartRead = 0;
|
|
}
|
|
|
|
/* is the buffer big enough? */
|
|
if (zzCurrentPos >= zzBuffer.length) {
|
|
/* if not: blow it up */
|
|
char newBuffer[] = new char[zzCurrentPos*2];
|
|
System.arraycopy(zzBuffer, 0, newBuffer, 0, zzBuffer.length);
|
|
zzBuffer = newBuffer;
|
|
}
|
|
|
|
/* finally: fill the buffer with new input */
|
|
int numRead = zzReader.read(zzBuffer, zzEndRead,
|
|
zzBuffer.length-zzEndRead);
|
|
|
|
if (numRead < 0) {
|
|
return true;
|
|
}
|
|
else {
|
|
zzEndRead+= numRead;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* Closes the input stream.
|
|
*/
|
|
public final void yyclose() throws java.io.IOException {
|
|
zzAtEOF = true; /* indicate end of file */
|
|
zzEndRead = zzStartRead; /* invalidate buffer */
|
|
|
|
if (zzReader != null)
|
|
zzReader.close();
|
|
}
|
|
|
|
|
|
/**
|
|
* Resets the scanner to read from a new input stream.
|
|
* Does not close the old reader.
|
|
*
|
|
* All internal variables are reset, the old input stream
|
|
* <b>cannot</b> be reused (internal buffer is discarded and lost).
|
|
* Lexical state is set to <tt>ZZ_INITIAL</tt>.
|
|
*
|
|
* @param reader the new input stream
|
|
*/
|
|
public final void yyreset(java.io.Reader reader) {
|
|
zzReader = reader;
|
|
zzAtBOL = true;
|
|
zzAtEOF = false;
|
|
zzEndRead = zzStartRead = 0;
|
|
zzCurrentPos = zzMarkedPos = zzPushbackPos = 0;
|
|
yyline = yychar = yycolumn = 0;
|
|
zzLexicalState = YYINITIAL;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the current lexical state.
|
|
*/
|
|
public final int yystate() {
|
|
return zzLexicalState;
|
|
}
|
|
|
|
|
|
/**
|
|
* Enters a new lexical state
|
|
*
|
|
* @param newState the new lexical state
|
|
*/
|
|
public final void yybegin(int newState) {
|
|
zzLexicalState = newState;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the text matched by the current regular expression.
|
|
*/
|
|
public final String yytext() {
|
|
return new String( zzBuffer, zzStartRead, zzMarkedPos-zzStartRead );
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the character at position <tt>pos</tt> from the
|
|
* matched text.
|
|
*
|
|
* It is equivalent to yytext().charAt(pos), but faster
|
|
*
|
|
* @param pos the position of the character to fetch.
|
|
* A value from 0 to yylength()-1.
|
|
*
|
|
* @return the character at position pos
|
|
*/
|
|
public final char yycharat(int pos) {
|
|
return zzBuffer[zzStartRead+pos];
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the length of the matched text region.
|
|
*/
|
|
public final int yylength() {
|
|
return zzMarkedPos-zzStartRead;
|
|
}
|
|
|
|
|
|
/**
|
|
* Reports an error that occured while scanning.
|
|
*
|
|
* In a wellformed scanner (no or only correct usage of
|
|
* yypushback(int) and a match-all fallback rule) this method
|
|
* will only be called with things that "Can't Possibly Happen".
|
|
* If this method is called, something is seriously wrong
|
|
* (e.g. a JFlex bug producing a faulty scanner etc.).
|
|
*
|
|
* Usual syntax/scanner level error handling should be done
|
|
* in error fallback rules.
|
|
*
|
|
* @param errorCode the code of the errormessage to display
|
|
*/
|
|
private void zzScanError(int errorCode) {
|
|
String message;
|
|
try {
|
|
message = ZZ_ERROR_MSG[errorCode];
|
|
}
|
|
catch (ArrayIndexOutOfBoundsException e) {
|
|
message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
|
|
}
|
|
|
|
throw new Error(message);
|
|
}
|
|
|
|
|
|
/**
|
|
* Pushes the specified amount of characters back into the input stream.
|
|
*
|
|
* They will be read again by then next call of the scanning method
|
|
*
|
|
* @param number the number of characters to be read again.
|
|
* This number must not be greater than yylength()!
|
|
*/
|
|
public void yypushback(int number) {
|
|
if ( number > yylength() )
|
|
zzScanError(ZZ_PUSHBACK_2BIG);
|
|
|
|
zzMarkedPos -= number;
|
|
}
|
|
|
|
|
|
/**
|
|
* Resumes scanning until the next regular expression is matched,
|
|
* the end of input is encountered or an I/O-Error occurs.
|
|
*
|
|
* @return the next token
|
|
* @exception java.io.IOException if any I/O-Error occurs
|
|
*/
|
|
public Object next_token() throws java.io.IOException {
|
|
int zzInput;
|
|
int zzAction;
|
|
|
|
// cached fields:
|
|
int zzCurrentPosL;
|
|
int zzMarkedPosL;
|
|
int zzEndReadL = zzEndRead;
|
|
char [] zzBufferL = zzBuffer;
|
|
char [] zzCMapL = ZZ_CMAP;
|
|
|
|
int [] zzTransL = ZZ_TRANS;
|
|
int [] zzRowMapL = ZZ_ROWMAP;
|
|
int [] zzAttrL = ZZ_ATTRIBUTE;
|
|
|
|
while (true) {
|
|
zzMarkedPosL = zzMarkedPos;
|
|
|
|
zzAction = -1;
|
|
|
|
zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
|
|
|
|
zzState = zzLexicalState;
|
|
|
|
|
|
zzForAction: {
|
|
while (true) {
|
|
|
|
if (zzCurrentPosL < zzEndReadL)
|
|
zzInput = zzBufferL[zzCurrentPosL++];
|
|
else if (zzAtEOF) {
|
|
zzInput = YYEOF;
|
|
break zzForAction;
|
|
}
|
|
else {
|
|
// store back cached positions
|
|
zzCurrentPos = zzCurrentPosL;
|
|
zzMarkedPos = zzMarkedPosL;
|
|
boolean eof = zzRefill();
|
|
// get translated positions and possibly new buffer
|
|
zzCurrentPosL = zzCurrentPos;
|
|
zzMarkedPosL = zzMarkedPos;
|
|
zzBufferL = zzBuffer;
|
|
zzEndReadL = zzEndRead;
|
|
if (eof) {
|
|
zzInput = YYEOF;
|
|
break zzForAction;
|
|
}
|
|
else {
|
|
zzInput = zzBufferL[zzCurrentPosL++];
|
|
}
|
|
}
|
|
int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ];
|
|
if (zzNext == -1) break zzForAction;
|
|
zzState = zzNext;
|
|
|
|
int zzAttributes = zzAttrL[zzState];
|
|
if ( (zzAttributes & 1) == 1 ) {
|
|
zzAction = zzState;
|
|
zzMarkedPosL = zzCurrentPosL;
|
|
if ( (zzAttributes & 8) == 8 ) break zzForAction;
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
// store back cached position
|
|
zzMarkedPos = zzMarkedPosL;
|
|
|
|
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
|
|
case 18:
|
|
{ yybegin(NAME); return Keyword.VIA;
|
|
}
|
|
case 121: break;
|
|
case 24:
|
|
{ return Keyword.BACK;
|
|
}
|
|
case 122: break;
|
|
case 31:
|
|
{ yybegin(LAYER_NAME); return Keyword.POLYGON_PATH;
|
|
}
|
|
case 123: break;
|
|
case 71:
|
|
{ return Keyword.NETWORK_SCOPE;
|
|
}
|
|
case 124: break;
|
|
case 56:
|
|
{ return Keyword.ROUTES;
|
|
}
|
|
case 125: break;
|
|
case 93:
|
|
{ return Keyword.FLIP_STYLE;
|
|
}
|
|
case 126: break;
|
|
case 108:
|
|
{ return Keyword.PLACE_CONTROL;
|
|
}
|
|
case 127: break;
|
|
case 32:
|
|
{ yybegin(LAYER_NAME); return Keyword.POLYGON;
|
|
}
|
|
case 128: break;
|
|
case 78:
|
|
{ yybegin(NAME); return Keyword.PADSTACK;
|
|
}
|
|
case 129: break;
|
|
case 110:
|
|
{ yybegin(NAME); return Keyword.CLEARANCE_CLASS;
|
|
}
|
|
case 130: break;
|
|
case 115:
|
|
{ return Keyword.AUTOROUTE_SETTINGS;
|
|
}
|
|
case 131: break;
|
|
case 13:
|
|
{ yybegin(YYINITIAL); return Keyword.OPEN_BRACKET;
|
|
}
|
|
case 132: break;
|
|
case 105:
|
|
{ return Keyword.START_PASS_NO;
|
|
}
|
|
case 133: break;
|
|
case 23:
|
|
{ yybegin(YYINITIAL); return Keyword.PCB_SCOPE;
|
|
}
|
|
case 134: break;
|
|
case 34:
|
|
{ yybegin(LAYER_NAME); return Keyword.RECTANGLE;
|
|
}
|
|
case 135: break;
|
|
case 82:
|
|
{ return Keyword.STRUCTURE_SCOPE;
|
|
}
|
|
case 136: break;
|
|
case 27:
|
|
{ yybegin(NAME); return Keyword.COMPONENT_SCOPE;
|
|
}
|
|
case 137: break;
|
|
case 43:
|
|
{ yybegin(NAME); return Keyword.IMAGE;
|
|
}
|
|
case 138: break;
|
|
case 112:
|
|
{ return Keyword.FORTYFIVE_DEGREE;
|
|
}
|
|
case 139: break;
|
|
case 60:
|
|
{ return Keyword.WINDOW;
|
|
}
|
|
case 140: break;
|
|
case 76:
|
|
{ return Keyword.VERTICAL;
|
|
}
|
|
case 141: break;
|
|
case 20:
|
|
{ return Keyword.PCB_SCOPE;
|
|
}
|
|
case 142: break;
|
|
case 37:
|
|
{ return Keyword.SPARE;
|
|
}
|
|
case 143: break;
|
|
case 21:
|
|
{ return Keyword.PIN;
|
|
}
|
|
case 144: break;
|
|
case 35:
|
|
{ return Keyword.RULE;
|
|
}
|
|
case 145: break;
|
|
case 29:
|
|
{ return Keyword.VIAS;
|
|
}
|
|
case 146: break;
|
|
case 16:
|
|
{ return Keyword.ON;
|
|
}
|
|
case 147: break;
|
|
case 63:
|
|
{ return Keyword.SESSION;
|
|
}
|
|
case 148: break;
|
|
case 74:
|
|
{ return Keyword.BOUNDARY;
|
|
}
|
|
case 149: break;
|
|
case 88:
|
|
{ return Keyword.SNAP_ANGLE;
|
|
}
|
|
case 150: break;
|
|
case 113:
|
|
{ return Keyword.WRITE_RESOLUTION;
|
|
}
|
|
case 151: break;
|
|
case 54:
|
|
{ return Keyword.NORMAL;
|
|
}
|
|
case 152: break;
|
|
case 8:
|
|
{ return Keyword.OPEN_BRACKET;
|
|
}
|
|
case 153: break;
|
|
case 22:
|
|
{ return Keyword.FIX;
|
|
}
|
|
case 154: break;
|
|
case 89:
|
|
{ yybegin(NAME); return Keyword.LAYER_RULE;
|
|
}
|
|
case 155: break;
|
|
case 86:
|
|
{ return Keyword.POSTROUTE;
|
|
}
|
|
case 156: break;
|
|
case 14:
|
|
{ yybegin(YYINITIAL); return Keyword.CLOSED_BRACKET;
|
|
}
|
|
case 157: break;
|
|
case 9:
|
|
{ return Keyword.CLOSED_BRACKET;
|
|
}
|
|
case 158: break;
|
|
case 90:
|
|
{ return Keyword.VIA_AT_SMD;
|
|
}
|
|
case 159: break;
|
|
case 28:
|
|
{ yybegin(LAYER_NAME); return Keyword.CIRCLE;
|
|
}
|
|
case 160: break;
|
|
case 50:
|
|
{ return Keyword.ATTACH;
|
|
}
|
|
case 161: break;
|
|
case 92:
|
|
{ return Keyword.RESOLUTION_SCOPE;
|
|
}
|
|
case 162: break;
|
|
case 77:
|
|
{ return Keyword.VIA_RULE;
|
|
}
|
|
case 163: break;
|
|
case 70:
|
|
{ return Keyword.CIRCUIT;
|
|
}
|
|
case 164: break;
|
|
case 87:
|
|
{ return Keyword.PLACEMENT_SCOPE;
|
|
}
|
|
case 165: break;
|
|
case 36:
|
|
{ yybegin(NAME); return Keyword.WIRE;
|
|
}
|
|
case 166: break;
|
|
case 116:
|
|
{ return Keyword.PREFERRED_DIRECTION;
|
|
}
|
|
case 167: break;
|
|
case 40:
|
|
{ yybegin(NAME); return Keyword.LAYER;
|
|
}
|
|
case 168: break;
|
|
case 69:
|
|
{ return Keyword.CLASSES;
|
|
}
|
|
case 169: break;
|
|
case 61:
|
|
{ return Keyword.WIRING_SCOPE;
|
|
}
|
|
case 170: break;
|
|
case 103:
|
|
{ yybegin(NAME); return Keyword.HOST_VERSION;
|
|
}
|
|
case 171: break;
|
|
case 4:
|
|
{ return yytext();
|
|
}
|
|
case 172: break;
|
|
case 73:
|
|
{ return Keyword.ABSOLUTE;
|
|
}
|
|
case 173: break;
|
|
case 58:
|
|
{ return Keyword.FANOUT;
|
|
}
|
|
case 174: break;
|
|
case 79:
|
|
{ return Keyword.POSITION;
|
|
}
|
|
case 175: break;
|
|
case 47:
|
|
{ return Keyword.RULES;
|
|
}
|
|
case 176: break;
|
|
case 57:
|
|
{ return Keyword.ROTATE;
|
|
}
|
|
case 177: break;
|
|
case 7:
|
|
{ string.setLength(0); yybegin(STRING2);
|
|
}
|
|
case 178: break;
|
|
case 84:
|
|
{ yybegin(NAME); return Keyword.USE_LAYER;
|
|
}
|
|
case 179: break;
|
|
case 80:
|
|
{ yybegin(NAME); return Keyword.HOST_CAD;
|
|
}
|
|
case 180: break;
|
|
case 64:
|
|
{ return Keyword.OUTLINE;
|
|
}
|
|
case 181: break;
|
|
case 45:
|
|
{ yybegin(NAME); return Keyword.PLACE;
|
|
}
|
|
case 182: break;
|
|
case 6:
|
|
{ string.setLength(0); yybegin(STRING1);
|
|
}
|
|
case 183: break;
|
|
case 99:
|
|
{ yybegin(IGNORE_QUOTE); return Keyword.STRING_QUOTE;
|
|
}
|
|
case 184: break;
|
|
case 39:
|
|
{ return Keyword.ORDER;
|
|
}
|
|
case 185: break;
|
|
case 17:
|
|
{ return Keyword.OFF;
|
|
}
|
|
case 186: break;
|
|
case 81:
|
|
{ return Keyword.AUTOROUTE;
|
|
}
|
|
case 187: break;
|
|
case 52:
|
|
{ return Keyword.SIGNAL;
|
|
}
|
|
case 188: break;
|
|
case 107:
|
|
{ yybegin(LAYER_NAME); return Keyword.POLYLINE_PATH;
|
|
}
|
|
case 189: break;
|
|
case 68:
|
|
{ return Keyword.CONTROL;
|
|
}
|
|
case 190: break;
|
|
case 46:
|
|
{ yybegin(NAME); return Keyword.PLANE_SCOPE;
|
|
}
|
|
case 191: break;
|
|
case 1:
|
|
{ yybegin(YYINITIAL); return yytext();
|
|
}
|
|
case 192: break;
|
|
case 100:
|
|
{ yybegin(NAME); return Keyword.LOGICAL_PART;
|
|
}
|
|
case 193: break;
|
|
case 83:
|
|
{ return Keyword.LOCK_TYPE;
|
|
}
|
|
case 194: break;
|
|
case 109:
|
|
{ yybegin(NAME); return Keyword.PLACE_KEEPOUT;
|
|
}
|
|
case 195: break;
|
|
case 49:
|
|
{ return Keyword.WIDTH;
|
|
}
|
|
case 196: break;
|
|
case 106:
|
|
{ return Keyword.NINETY_DEGREE;
|
|
}
|
|
case 197: break;
|
|
case 67:
|
|
{ yybegin(NAME); return Keyword.USE_NET;
|
|
}
|
|
case 198: break;
|
|
case 118:
|
|
{ return Keyword.GENERATED_BY_FREEROUTE;
|
|
}
|
|
case 199: break;
|
|
case 101:
|
|
{ return Keyword.PART_LIBRARY_SCOPE;
|
|
}
|
|
case 200: break;
|
|
case 85:
|
|
{ return Keyword.VIA_COSTS;
|
|
}
|
|
case 201: break;
|
|
case 102:
|
|
{ return Keyword.ROTATE_FIRST;
|
|
}
|
|
case 202: break;
|
|
case 75:
|
|
{ return Keyword.CONSTANT;
|
|
}
|
|
case 203: break;
|
|
case 12:
|
|
{ string.append('\\');
|
|
}
|
|
case 204: break;
|
|
case 15:
|
|
{ return new Double(yytext());
|
|
}
|
|
case 205: break;
|
|
case 42:
|
|
{ yybegin(NAME); return Keyword.CLASS;
|
|
}
|
|
case 206: break;
|
|
case 91:
|
|
{ return Keyword.PULL_TIGHT;
|
|
}
|
|
case 207: break;
|
|
case 30:
|
|
{ return Keyword.NONE;
|
|
}
|
|
case 208: break;
|
|
case 120:
|
|
{ return Keyword.AGAINST_PREFERRED_DIRECTION_TRACE_COSTS;
|
|
}
|
|
case 209: break;
|
|
case 114:
|
|
{ return Keyword.START_RIPUP_COSTS;
|
|
}
|
|
case 210: break;
|
|
case 53:
|
|
{ return Keyword.LENGTH;
|
|
}
|
|
case 211: break;
|
|
case 38:
|
|
{ return Keyword.SHAPE;
|
|
}
|
|
case 212: break;
|
|
case 59:
|
|
{ return Keyword.FROMTO;
|
|
}
|
|
case 213: break;
|
|
case 44:
|
|
{ return Keyword.POWER;
|
|
}
|
|
case 214: break;
|
|
case 94:
|
|
{ return Keyword.HORIZONTAL;
|
|
}
|
|
case 215: break;
|
|
case 26:
|
|
{ return Keyword.TYPE;
|
|
}
|
|
case 216: break;
|
|
case 51:
|
|
{ return Keyword.ACTIVE;
|
|
}
|
|
case 217: break;
|
|
case 48:
|
|
{ return Keyword.FRONT;
|
|
}
|
|
case 218: break;
|
|
case 11:
|
|
{ yybegin(YYINITIAL); return string.toString();
|
|
}
|
|
case 219: break;
|
|
case 19:
|
|
{ yybegin(NAME); return Keyword.NET;
|
|
}
|
|
case 220: break;
|
|
case 96:
|
|
{ return Keyword.CLASS_CLASS;
|
|
}
|
|
case 221: break;
|
|
case 66:
|
|
{ yybegin(NAME); return Keyword.USE_VIA;
|
|
}
|
|
case 222: break;
|
|
case 65:
|
|
{ return Keyword.LIBRARY_SCOPE;
|
|
}
|
|
case 223: break;
|
|
case 3:
|
|
{ /* ignore */
|
|
}
|
|
case 224: break;
|
|
case 117:
|
|
{ yybegin(NAME); return Keyword.LOGICAL_PART_MAPPING;
|
|
}
|
|
case 225: break;
|
|
case 111:
|
|
{ return Keyword.PLANE_VIA_COSTS;
|
|
}
|
|
case 226: break;
|
|
case 72:
|
|
{ yybegin(NAME); return Keyword.KEEPOUT;
|
|
}
|
|
case 227: break;
|
|
case 98:
|
|
{ return Keyword.NETWORK_OUT;
|
|
}
|
|
case 228: break;
|
|
case 55:
|
|
{ return Keyword.PARSER_SCOPE;
|
|
}
|
|
case 229: break;
|
|
case 10:
|
|
{ string.append( yytext() );
|
|
}
|
|
case 230: break;
|
|
case 2:
|
|
{ throw new Error("Illegal character <"+
|
|
yytext()+">");
|
|
}
|
|
case 231: break;
|
|
case 95:
|
|
{ return Keyword.SHOVE_FIXED;
|
|
}
|
|
case 232: break;
|
|
case 104:
|
|
{ return Keyword.KEEPOUT;
|
|
}
|
|
case 233: break;
|
|
case 33:
|
|
{ return Keyword.PINS;
|
|
}
|
|
case 234: break;
|
|
case 119:
|
|
{ return Keyword.PREFERRED_DIRECTION_TRACE_COSTS;
|
|
}
|
|
case 235: break;
|
|
case 5:
|
|
{ return new Integer(yytext());
|
|
}
|
|
case 236: break;
|
|
case 25:
|
|
{ return Keyword.SIDE;
|
|
}
|
|
case 237: break;
|
|
case 41:
|
|
{ return Keyword.CLEARANCE;
|
|
}
|
|
case 238: break;
|
|
case 97:
|
|
{ yybegin(NAME); return Keyword.VIA_KEEPOUT;
|
|
}
|
|
case 239: break;
|
|
case 62:
|
|
{ yybegin(YYINITIAL); return Keyword.SIGNAL;
|
|
}
|
|
case 240: break;
|
|
default:
|
|
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
|
|
zzAtEOF = true;
|
|
return null;
|
|
}
|
|
else {
|
|
zzScanError(ZZ_NO_MATCH);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|