25#define YY_STACK_USED 0
27#ifndef YY_ALWAYS_INTERACTIVE
28#define YY_ALWAYS_INTERACTIVE 0
30#ifndef YY_NEVER_INTERACTIVE
31#define YY_NEVER_INTERACTIVE 0
61#define YY_PROTO(proto) proto
63#define YY_PROTO(proto) ()
74#define YY_SC_TO_UI(c) (static_cast<unsigned int>(static_cast<unsigned char>(c)))
79#define YY_START ((yy_start - 1) / 2)
82#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
85#define YY_NEW_FILE yyrestart( yyin )
87#define YY_END_OF_BUFFER_CHAR 0
90#define YY_BUF_SIZE 16384
94typedef struct yy_buffer_state *YY_BUFFER_STATE;
98#define EOB_ACT_CONTINUE_SCAN 0
99#define EOB_ACT_END_OF_FILE 1
100#define EOB_ACT_LAST_MATCH 2
112struct yy_buffer_state
133 int yy_is_our_buffer;
140 bool yy_is_interactive;
153 int yy_buffer_status;
154#define YY_BUFFER_NEW 0
155#define YY_BUFFER_NORMAL 1
166#define YY_BUFFER_EOF_PENDING 2
177#define YY_CURRENT_BUFFER yy_current_buffer
218#define yytext_ptr yytext
228#define YY_DO_BEFORE_ACTION \
229 yytext_ptr = yy_bp; \
230 yyleng = static_cast<int>(yy_cp - yy_bp); \
231 yy_hold_char = *yy_cp; \
235#define YY_END_OF_BUFFER 46
238 0, 0, 46, 44, 41, 41, 44, 42, 39, 37,
239 37, 36, 39, 39, 44, 44, 38, 40, 35, 43,
240 13, 21, 36, 36, 22, 16, 17, 0, 34, 0,
241 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
242 0, 0, 24, 0, 24, 0, 0, 0, 0, 0,
243 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
244 0, 0, 0, 0, 42, 0, 0, 0, 0, 0,
245 0, 0, 0, 0, 0, 0, 4, 31, 5, 43,
246 36, 20, 14, 15, 0, 0, 0, 0, 0, 0,
247 0, 0, 0, 0, 0, 0, 24, 0, 0, 0,
249 0, 0, 0, 10, 0, 0, 27, 0, 0, 0,
250 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
251 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
252 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
253 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
254 0, 0, 0, 0, 0, 0, 12, 12, 0, 0,
255 0, 0, 0, 0, 0, 12, 0, 0, 0, 0,
256 0, 0, 0, 0, 12, 0, 27, 0, 0, 0,
257 0, 0, 0, 0, 0, 11, 0, 9, 0, 0,
258 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
260 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
261 0, 0, 0, 23, 0, 0, 0, 0, 0, 0,
262 0, 0, 0, 0, 0, 0, 0, 0, 19, 0,
263 0, 0, 0, 0, 0, 0, 0, 0, 0, 18,
264 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
265 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
266 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
267 0, 0, 0, 0, 8, 0, 0, 0, 0, 0,
268 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
269 27, 0, 0, 0, 0, 12, 0, 0, 8, 0,
271 0, 0, 2, 0, 0, 0, 0, 0, 0, 0,
272 0, 0, 0, 0, 0, 0, 0, 27, 26, 0,
273 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
274 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
275 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
276 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
277 0, 0, 0, 0, 0, 0, 0, 0, 12, 27,
278 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
279 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
280 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
283 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
284 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
285 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
286 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
287 0, 11, 0, 0, 0, 0, 0, 0, 8, 0,
288 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
289 0, 0, 0, 0, 0, 0, 24, 0, 0, 0,
290 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,
291 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
293 0, 0, 0, 0, 0, 0, 0, 30, 0, 0,
294 12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
295 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
296 0, 0, 0, 28, 0, 0, 12, 0, 0, 0,
297 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
299 19, 0, 0, 0, 0, 0, 0, 0, 0, 0,
300 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
301 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
302 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
304 0, 0, 0, 0, 0, 0, 25, 0, 0, 0,
305 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
308 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
309 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
311 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
313 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
315 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
316 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
317 0, 0, 0, 0, 0, 0, 0, 0, 32, 0,
318 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
319 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
320 0, 0, 0, 0, 0, 12, 0, 12, 0, 0,
321 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
322 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
323 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
324 0, 0, 0, 0, 0, 0, 11, 0, 0, 0,
326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329 0, 0, 0, 0, 0, 33, 0, 0, 0, 0,
330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
331 0, 0, 0, 0, 0, 19, 0, 0, 0, 0,
332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
333 0, 0, 12, 12, 0, 24, 0, 0, 0, 0,
334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
335 0, 0, 19, 0, 0, 0, 0, 0, 0, 0,
337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
352 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
353 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
354 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
355 1, 1, 4, 1, 1, 1, 1, 5, 1, 6,
356 7, 8, 8, 9, 10, 11, 8, 12, 12, 12,
357 12, 12, 12, 12, 12, 12, 12, 13, 14, 15,
358 16, 17, 1, 1, 18, 19, 20, 21, 22, 1,
359 23, 1, 24, 25, 26, 27, 28, 29, 30, 31,
360 1, 32, 33, 34, 35, 36, 1, 37, 1, 38,
361 39, 40, 41, 42, 42, 1, 43, 44, 45, 46,
363 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
364 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
365 67, 68, 69, 70, 71, 72, 1, 1, 1, 1,
366 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
367 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
368 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
369 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
370 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
371 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
372 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
374 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
375 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
376 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
377 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
378 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
384 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
385 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
386 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
387 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
388 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
389 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
390 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
396 0, 72, 1314, 1315, 1315, 1315, 1297, 1315, 1315, 1315,
397 1295, 2, 8, 1294, 1281, 142, 1315, 1315, 1315, 1236,
398 1315, 1315, 1296, 8, 1290, 1291, 1288, 1274, 1315, 0,
399 0, 1253, 1, 1, 1259, 7, 1244, 1257, 8, 1236,
400 1235, 1242, 35, 43, 1245, 0, 1237, 1251, 1242, 1245,
401 1315, 46, 72, 171, 79, 62, 77, 184, 192, 92,
402 1236, 2, 207, 216, 225, 234, 250, 46, 269, 278,
403 295, 10, 111, 255, 10, 1243, 1315, 1315, 1315, 1216,
404 1276, 1315, 1315, 1315, 1253, 1228, 1225, 1222, 1217, 1231,
405 1227, 1237, 1214, 1217, 1234, 1221, 1315, 1213, 1223, 1215,
407 1217, 1223, 1214, 1315, 168, 1218, 1315, 1217, 1210, 1217,
408 1216, 1201, 1216, 177, 1202, 1199, 1197, 34, 1216, 1209,
409 1199, 181, 36, 164, 198, 1207, 119, 199, 1201, 1196,
410 1196, 218, 1192, 1188, 225, 1205, 1191, 78, 40, 245,
411 280, 1197, 175, 1184, 1192, 1187, 1198, 1182, 1179, 1198,
412 101, 1197, 1179, 227, 1183, 1191, 1177, 1315, 1192, 1172,
413 1190, 1189, 53, 1184, 1187, 260, 1167, 1171, 1184, 1168,
414 1165, 248, 1177, 1166, 291, 1168, 1161, 1174, 1164, 1161,
415 222, 268, 1160, 0, 1170, 1315, 1172, 1315, 247, 299,
416 1152, 1170, 1155, 1155, 300, 1156, 1155, 1157, 1160, 1146,
418 1145, 1153, 302, 1152, 1139, 1158, 1144, 1152, 1147, 1143,
419 1136, 308, 1146, 1137, 1150, 1136, 317, 1148, 308, 318,
420 1147, 311, 1146, 322, 1145, 312, 1140, 319, 1128, 1134,
421 324, 340, 1124, 333, 340, 1137, 1136, 1121, 1118, 1315,
422 1129, 1121, 1134, 1114, 1120, 1118, 1122, 1117, 1128, 1114,
423 1111, 1124, 1105, 1117, 1116, 1119, 1113, 1107, 1099, 1100,
424 1102, 1107, 344, 1114, 1094, 1097, 1104, 1099, 327, 1092,
425 347, 1094, 1095, 1096, 1315, 1105, 1096, 1103, 350, 1083,
426 1099, 1079, 1088, 1079, 1095, 1094, 1094, 1088, 1076, 1085,
427 1084, 1084, 1082, 1082, 1068, 1067, 1073, 1071, 1079, 1069,
429 1069, 1061, 1315, 1071, 1070, 1059, 1057, 1075, 1072, 1051,
430 1060, 1050, 1053, 1052, 1058, 1054, 348, 1047, 1315, 1065,
431 1045, 1048, 1061, 1055, 1052, 1040, 1039, 1043, 1042, 338,
432 1035, 1048, 1035, 1048, 1038, 1039, 1029, 1031, 276, 1030,
433 1027, 1026, 1038, 371, 1023, 1042, 1029, 1023, 355, 1024,
434 1036, 1025, 372, 1036, 1032, 1028, 1025, 1020, 1017, 1016,
435 1022, 1008, 1014, 1020, 1008, 1012, 1006, 1010, 1017, 1013,
436 1008, 1007, 1014, 360, 997, 995, 997, 995, 1010, 372,
437 1008, 993, 1002, 156, 1005, 1003, 1006, 1001, 997, 996,
438 985, 987, 980, 991, 374, 980, 978, 977, 989, 990,
440 993, 992, 969, 990, 975, 988, 976, 986, 985, 981,
441 379, 191, 983, 965, 962, 980, 979, 961, 955, 965,
442 960, 374, 967, 965, 965, 967, 963, 969, 962, 963,
443 947, 951, 950, 955, 962, 939, 945, 941, 938, 944,
444 377, 383, 940, 938, 939, 949, 948, 943, 946, 945,
445 944, 929, 936, 927, 930, 939, 921, 935, 922, 939,
446 924, 933, 920, 935, 910, 922, 911, 912, 919, 1315,
447 916, 928, 923, 907, 388, 906, 920, 916, 898, 914,
448 920, 916, 907, 906, 898, 400, 901, 894, 900, 892,
449 893, 392, 891, 898, 902, 907, 889, 888, 891, 895,
451 885, 901, 883, 879, 880, 879, 892, 405, 884, 886,
452 889, 888, 872, 887, 878, 877, 887, 872, 865, 865,
453 865, 876, 870, 863, 871, 863, 877, 860, 864, 870,
454 869, 857, 856, 1315, 400, 866, 865, 851, 863, 849,
455 861, 864, 859, 844, 848, 843, 856, 855, 840, 834,
456 837, 843, 838, 403, 845, 843, 843, 834, 841, 829,
457 1315, 842, 401, 824, 831, 826, 828, 841, 823, 831,
458 834, 829, 822, 835, 820, 820, 818, 813, 822, 815,
459 822, 823, 809, 802, 806, 810, 809, 800, 809, 801,
460 1315, 803, 800, 801, 404, 807, 803, 805, 810, 803,
462 799, 805, 805, 803, 785, 786, 1315, 784, 800, 785,
463 797, 787, 782, 780, 783, 778, 784, 776, 789, 784,
464 783, 790, 785, 771, 787, 778, 768, 769, 778, 767,
465 762, 776, 779, 770, 763, 758, 764, 774, 759, 93,
466 126, 187, 225, 269, 333, 415, 345, 372, 388, 397,
467 400, 417, 418, 408, 411, 427, 409, 418, 426, 417,
468 419, 415, 417, 418, 419, 419, 423, 422, 422, 428,
469 438, 438, 444, 432, 434, 434, 431, 442, 437, 446,
470 449, 436, 456, 449, 454, 456, 443, 448, 445, 457,
471 459, 459, 453, 450, 446, 469, 457, 463, 460, 454,
473 460, 471, 476, 473, 476, 458, 461, 468, 462, 471,
474 484, 485, 466, 481, 484, 481, 473, 488, 475, 489,
475 481, 475, 491, 491, 496, 482, 483, 495, 1315, 502,
476 498, 490, 500, 503, 497, 487, 488, 498, 512, 508,
477 501, 509, 512, 506, 514, 502, 520, 521, 518, 501,
478 504, 505, 506, 523, 524, 525, 526, 527, 510, 519,
479 523, 518, 528, 515, 538, 526, 532, 529, 523, 535,
480 525, 534, 529, 533, 534, 542, 531, 544, 535, 536,
481 543, 555, 556, 545, 541, 541, 540, 543, 558, 548,
482 549, 552, 548, 563, 551, 550, 552, 557, 553, 565,
484 555, 568, 576, 563, 563, 572, 578, 562, 564, 576,
485 582, 566, 582, 580, 577, 572, 573, 589, 574, 581,
486 586, 576, 577, 581, 579, 583, 583, 597, 602, 590,
487 587, 594, 606, 607, 597, 1315, 606, 591, 589, 590,
488 594, 614, 596, 602, 600, 604, 600, 613, 603, 604,
489 617, 605, 605, 604, 608, 628, 610, 619, 610, 619,
490 615, 628, 636, 618, 619, 635, 640, 622, 628, 628,
491 637, 626, 642, 643, 644, 646, 648, 647, 635, 640,
492 641, 652, 658, 642, 652, 661, 640, 650, 652, 655,
493 659, 651, 669, 656, 671, 668, 656, 666, 661, 676,
495 660, 678, 657, 666, 677, 666, 667, 680, 677, 682,
496 673, 675, 676, 673, 674, 686, 676, 672, 691, 677,
497 680, 681, 686, 683, 684, 696, 686, 687, 688, 692,
498 702, 702, 687, 693, 697, 705, 696, 711, 701, 699,
499 714, 701, 705, 713, 704, 708, 706, 711, 706, 719,
500 713, 706, 710, 716, 718, 718, 713, 722, 723, 723,
501 725, 718, 722, 728, 721, 730, 742, 727, 725, 748,
502 727, 728, 729, 730, 731, 754, 733, 734, 743, 743,
503 742, 747, 748, 746, 742, 748, 749, 754, 754, 755,
510 994, 994, 993, 993, 993, 993, 993, 993, 993, 993,
511 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
512 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
513 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
514 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
515 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
516 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
517 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
518 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
519 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
521 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
522 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
523 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
524 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
525 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
526 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
527 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
528 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
529 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
530 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
532 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
533 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
534 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
535 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
536 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
537 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
538 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
539 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
540 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
541 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
543 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
544 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
545 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
546 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
547 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
548 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
549 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
550 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
551 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
552 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
554 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
555 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
556 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
557 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
558 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
559 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
560 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
561 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
562 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
563 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
565 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
566 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
567 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
568 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
569 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
570 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
571 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
572 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
573 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
574 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
576 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
577 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
578 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
579 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
580 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
581 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
582 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
583 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
584 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
585 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
587 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
588 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
589 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
590 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
591 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
592 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
593 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
594 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
595 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
596 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
598 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
599 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
600 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
601 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
602 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
603 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
604 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
605 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
606 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
607 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
609 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
610 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
611 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
612 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
613 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
614 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
615 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
616 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
617 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
624 993, 5, 6, 7, 8, 9, 9, 10, 993, 11,
625 993, 12, 23, 24, 13, 10, 14, 25, 23, 24,
626 993, 993, 26, 993, 993, 993, 15, 993, 993, 993,
627 993, 993, 993, 993, 993, 993, 993, 993, 9, 16,
628 9, 17, 112, 993, 170, 158, 88, 91, 171, 113,
629 101, 92, 993, 86, 102, 107, 89, 93, 94, 87,
630 188, 97, 95, 98, 103, 231, 238, 232, 9, 18,
631 9, 19, 20, 5, 6, 7, 8, 9, 9, 10,
632 266, 11, 294, 12, 106, 104, 13, 10, 14, 97,
633 117, 267, 109, 110, 107, 108, 295, 186, 15, 118,
635 119, 120, 273, 121, 205, 122, 123, 107, 206, 315,
636 9, 16, 9, 17, 124, 145, 146, 147, 125, 148,
637 149, 138, 126, 150, 139, 140, 292, 151, 127, 141,
638 152, 128, 142, 153, 129, 143, 154, 164, 293, 144,
639 9, 18, 9, 19, 20, 29, 165, 166, 167, 737,
640 29, 306, 168, 233, 29, 29, 234, 235, 107, 30,
641 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
642 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
643 97, 51, 738, 280, 52, 53, 54, 55, 56, 57,
644 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
646 68, 69, 70, 71, 72, 73, 74, 75, 274, 76,
647 77, 78, 79, 130, 255, 541, 131, 542, 256, 260,
648 132, 133, 261, 275, 134, 271, 155, 135, 156, 107,
649 157, 136, 158, 137, 160, 161, 299, 262, 162, 300,
650 272, 281, 276, 159, 571, 282, 277, 186, 163, 172,
651 572, 173, 174, 175, 176, 177, 178, 179, 182, 278,
652 158, 180, 107, 181, 285, 183, 184, 189, 188, 309,
653 107, 190, 185, 186, 186, 158, 187, 332, 188, 193,
654 288, 191, 289, 310, 194, 290, 291, 188, 195, 192,
655 336, 196, 200, 107, 197, 198, 201, 199, 296, 202,
657 188, 236, 323, 324, 186, 237, 107, 318, 337, 203,
658 204, 207, 97, 208, 186, 209, 210, 211, 212, 213,
659 216, 319, 297, 214, 217, 333, 499, 218, 219, 186,
660 215, 500, 220, 107, 107, 221, 222, 226, 327, 223,
661 224, 338, 225, 186, 227, 228, 343, 97, 351, 158,
662 344, 229, 352, 186, 230, 374, 368, 158, 353, 365,
663 371, 107, 369, 370, 188, 378, 379, 383, 372, 388,
664 375, 376, 385, 386, 188, 396, 319, 389, 366, 380,
665 430, 381, 391, 390, 275, 392, 186, 431, 489, 397,
666 421, 433, 739, 393, 441, 742, 477, 509, 490, 398,
668 394, 422, 532, 423, 424, 425, 442, 434, 435, 478,
669 443, 444, 445, 446, 447, 503, 510, 319, 538, 592,
670 553, 569, 533, 579, 104, 743, 504, 593, 595, 513,
671 744, 554, 539, 555, 556, 557, 558, 596, 570, 594,
672 597, 619, 624, 664, 598, 632, 633, 620, 645, 625,
673 683, 634, 678, 188, 706, 158, 158, 665, 646, 626,
674 707, 740, 684, 79, 647, 741, 745, 79, 729, 746,
675 748, 749, 97, 750, 751, 752, 747, 753, 754, 755,
676 756, 158, 757, 758, 759, 760, 761, 762, 764, 765,
677 766, 767, 188, 188, 768, 769, 770, 763, 771, 772,
679 773, 97, 774, 104, 775, 776, 777, 778, 104, 779,
680 561, 780, 104, 781, 782, 783, 784, 785, 786, 158,
681 186, 319, 319, 787, 788, 789, 790, 792, 793, 794,
682 795, 796, 186, 797, 798, 799, 188, 800, 801, 802,
683 803, 804, 805, 806, 807, 808, 791, 809, 810, 97,
684 97, 561, 561, 188, 811, 812, 813, 814, 815, 97,
685 158, 816, 817, 818, 97, 561, 819, 820, 821, 822,
686 823, 824, 825, 826, 561, 827, 828, 829, 830, 561,
687 831, 188, 832, 833, 834, 835, 836, 837, 838, 839,
688 840, 841, 842, 843, 844, 845, 846, 104, 104, 97,
690 847, 848, 849, 319, 850, 319, 319, 851, 319, 319,
691 852, 97, 853, 854, 97, 855, 856, 857, 858, 859,
692 860, 861, 862, 863, 864, 865, 866, 867, 836, 868,
693 158, 869, 870, 871, 186, 319, 872, 873, 874, 158,
694 158, 158, 875, 876, 877, 878, 879, 880, 188, 188,
695 881, 882, 729, 561, 561, 883, 884, 886, 887, 888,
696 889, 729, 78, 319, 319, 890, 729, 891, 561, 97,
697 892, 893, 158, 885, 561, 894, 895, 896, 897, 899,
698 900, 836, 901, 902, 903, 904, 905, 97, 906, 907,
699 158, 97, 910, 836, 911, 898, 912, 913, 836, 908,
701 914, 915, 916, 917, 561, 909, 918, 104, 919, 920,
702 921, 922, 923, 924, 729, 925, 926, 561, 927, 928,
703 929, 561, 930, 729, 158, 158, 931, 932, 836, 933,
704 188, 188, 934, 935, 936, 937, 561, 938, 97, 939,
705 940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
706 950, 561, 951, 952, 953, 954, 955, 957, 958, 959,
707 961, 962, 963, 964, 965, 966, 967, 186, 968, 969,
708 561, 970, 971, 956, 972, 186, 960, 561, 973, 974,
709 561, 975, 561, 976, 977, 836, 978, 979, 186, 561,
710 981, 561, 982, 561, 983, 561, 984, 561, 836, 985,
712 561, 986, 186, 561, 980, 987, 988, 989, 990, 561,
713 991, 992, 561, 561, 4, 736, 735, 734, 158, 561,
714 733, 732, 731, 730, 107, 107, 729, 77, 728, 727,
715 726, 77, 188, 725, 724, 723, 722, 97, 97, 721,
716 720, 719, 718, 717, 186, 319, 716, 186, 715, 158,
717 714, 319, 713, 712, 711, 710, 709, 708, 319, 705,
718 319, 704, 703, 702, 107, 107, 107, 158, 701, 700,
719 699, 104, 104, 698, 697, 696, 695, 694, 693, 692,
720 691, 690, 689, 104, 688, 687, 686, 685, 186, 607,
721 158, 682, 681, 680, 679, 677, 676, 186, 675, 674,
723 186, 186, 673, 672, 186, 275, 188, 671, 670, 669,
724 668, 667, 666, 186, 186, 663, 158, 662, 158, 188,
725 97, 661, 660, 659, 658, 657, 656, 655, 654, 653,
726 79, 652, 29, 651, 97, 650, 649, 648, 644, 643,
727 186, 642, 641, 188, 640, 158, 158, 639, 638, 97,
728 637, 636, 635, 631, 630, 629, 628, 627, 607, 77,
729 623, 622, 188, 97, 607, 97, 158, 621, 618, 275,
730 188, 158, 617, 616, 158, 615, 614, 613, 158, 561,
731 612, 188, 607, 611, 158, 610, 609, 608, 275, 607,
732 606, 275, 605, 604, 603, 602, 601, 600, 599, 591,
734 590, 589, 158, 588, 587, 586, 585, 584, 583, 97,
735 186, 188, 97, 275, 582, 581, 580, 578, 577, 576,
736 575, 104, 104, 574, 573, 104, 568, 104, 104, 567,
737 566, 565, 104, 564, 104, 188, 563, 562, 561, 560,
738 559, 552, 551, 550, 549, 548, 547, 546, 545, 544,
739 543, 107, 540, 97, 537, 536, 186, 535, 534, 531,
740 530, 529, 107, 528, 527, 526, 525, 524, 523, 522,
741 521, 520, 519, 518, 517, 516, 515, 29, 514, 512,
742 511, 158, 508, 507, 506, 505, 502, 319, 186, 501,
743 498, 497, 496, 495, 494, 493, 492, 491, 488, 487,
745 486, 485, 484, 483, 482, 481, 480, 188, 479, 476,
746 475, 474, 97, 473, 472, 471, 470, 469, 97, 468,
747 467, 466, 465, 186, 464, 463, 462, 461, 460, 459,
748 458, 457, 456, 107, 107, 455, 158, 454, 186, 453,
749 452, 451, 450, 449, 448, 188, 440, 439, 438, 437,
750 436, 432, 429, 428, 427, 426, 104, 420, 419, 418,
751 417, 416, 415, 414, 413, 412, 411, 410, 409, 158,
752 104, 408, 407, 406, 405, 404, 104, 403, 402, 401,
753 158, 400, 399, 395, 387, 97, 384, 382, 377, 373,
754 367, 364, 363, 362, 361, 360, 359, 358, 357, 356,
756 355, 354, 188, 188, 350, 349, 348, 347, 346, 345,
757 342, 341, 340, 339, 335, 334, 97, 331, 330, 186,
758 329, 328, 326, 325, 107, 322, 321, 158, 320, 317,
759 316, 314, 313, 275, 312, 158, 107, 311, 308, 307,
760 188, 305, 304, 303, 302, 97, 301, 298, 186, 107,
761 287, 286, 284, 186, 283, 279, 270, 269, 268, 265,
762 264, 263, 259, 104, 258, 257, 104, 104, 104, 254,
763 253, 252, 251, 250, 249, 248, 104, 247, 246, 245,
764 244, 104, 97, 243, 242, 241, 240, 81, 80, 239,
765 169, 116, 104, 115, 114, 111, 105, 104, 104, 100,
767 99, 96, 90, 85, 84, 83, 82, 81, 80, 28,
768 27, 22, 21, 993, 3, 993, 993, 993, 993, 993,
769 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
770 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
771 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
772 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
773 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
774 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
775 993, 993, 993, 993, 993, 993, 993, 993
780 0, 1, 1, 1, 1, 1, 1, 1, 0, 1,
781 0, 1, 12, 12, 1, 1, 1, 13, 24, 24,
782 0, 0, 13, 0, 0, 0, 1, 0, 0, 0,
783 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
784 1, 1, 46, 0, 62, 184, 31, 33, 62, 46,
785 39, 33, 0, 30, 39, 184, 31, 33, 34, 30,
786 75, 36, 34, 36, 39, 72, 75, 72, 1, 1,
787 1, 1, 1, 2, 2, 2, 2, 2, 2, 2,
788 118, 2, 139, 2, 43, 43, 2, 2, 2, 44,
789 52, 118, 44, 44, 43, 43, 139, 123, 2, 52,
791 52, 52, 123, 52, 68, 52, 52, 163, 68, 163,
792 2, 2, 2, 2, 53, 56, 56, 56, 53, 56,
793 56, 55, 53, 56, 55, 55, 138, 56, 53, 55,
794 57, 53, 55, 57, 53, 55, 57, 60, 138, 55,
795 2, 2, 2, 2, 2, 16, 60, 60, 60, 640,
796 16, 151, 60, 73, 16, 16, 73, 73, 151, 16,
797 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
798 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
799 127, 16, 641, 127, 16, 16, 16, 16, 16, 16,
800 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
802 16, 16, 16, 16, 16, 16, 16, 16, 124, 16,
803 16, 16, 16, 54, 105, 384, 54, 384, 105, 114,
804 54, 54, 114, 124, 54, 122, 58, 54, 58, 122,
805 58, 54, 58, 54, 59, 59, 143, 114, 59, 143,
806 122, 128, 125, 58, 412, 128, 125, 642, 59, 63,
807 412, 63, 63, 63, 63, 63, 63, 63, 64, 125,
808 63, 63, 63, 63, 132, 64, 64, 65, 132, 154,
809 181, 65, 64, 64, 643, 65, 64, 181, 64, 66,
810 135, 65, 135, 154, 66, 135, 135, 65, 66, 65,
811 189, 66, 67, 140, 66, 66, 67, 66, 140, 67,
813 67, 74, 172, 172, 67, 74, 140, 166, 189, 67,
814 67, 69, 74, 69, 74, 69, 69, 69, 69, 69,
815 70, 166, 141, 69, 70, 182, 339, 70, 70, 644,
816 69, 339, 70, 182, 141, 70, 70, 71, 175, 70,
817 70, 190, 70, 141, 71, 71, 195, 190, 203, 175,
818 195, 71, 203, 212, 71, 222, 219, 190, 203, 217,
819 220, 217, 219, 219, 212, 224, 224, 226, 220, 231,
820 222, 222, 228, 228, 226, 234, 224, 231, 217, 224,
821 269, 224, 232, 231, 235, 232, 235, 269, 330, 234,
822 263, 271, 645, 232, 279, 647, 317, 349, 330, 235,
824 232, 263, 374, 263, 263, 263, 279, 271, 271, 317,
825 279, 279, 279, 279, 279, 344, 349, 353, 380, 441,
826 395, 411, 374, 422, 422, 648, 344, 441, 442, 353,
827 649, 395, 380, 395, 395, 395, 395, 442, 411, 441,
828 442, 475, 486, 535, 442, 492, 492, 475, 508, 486,
829 563, 492, 554, 554, 595, 650, 651, 535, 508, 486,
830 595, 646, 563, 652, 508, 646, 653, 654, 655, 656,
831 657, 658, 659, 660, 661, 662, 656, 663, 664, 665,
832 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
833 676, 677, 678, 679, 680, 681, 682, 673, 683, 684,
835 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
836 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
837 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
838 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
839 725, 726, 727, 728, 730, 731, 711, 732, 733, 734,
840 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
841 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
842 755, 756, 757, 758, 759, 760, 761, 762, 763, 764,
843 765, 766, 767, 768, 769, 770, 771, 772, 773, 774,
844 775, 776, 777, 778, 779, 780, 781, 782, 783, 784,
846 785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
847 795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
848 805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
849 815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
850 825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
851 835, 837, 838, 839, 840, 841, 842, 843, 844, 845,
852 846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
853 856, 857, 858, 842, 859, 860, 861, 862, 863, 864,
854 865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
855 875, 876, 877, 878, 879, 863, 880, 881, 882, 876,
857 883, 884, 885, 886, 887, 876, 888, 889, 890, 891,
858 892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
859 902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
860 912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
861 922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
862 932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
863 942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
864 952, 953, 954, 938, 955, 956, 941, 957, 958, 959,
865 960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
866 970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
868 980, 981, 982, 983, 967, 984, 985, 986, 987, 988,
869 989, 990, 991, 992, 994, 639, 638, 637, 636, 635,
870 634, 633, 632, 631, 630, 629, 628, 627, 626, 625,
871 624, 623, 622, 621, 620, 619, 618, 617, 616, 615,
872 614, 613, 612, 611, 610, 609, 608, 606, 605, 604,
873 603, 602, 601, 600, 599, 598, 597, 596, 594, 593,
874 592, 590, 589, 588, 587, 586, 585, 584, 583, 582,
875 581, 580, 579, 578, 577, 576, 575, 574, 573, 572,
876 571, 570, 569, 568, 567, 566, 565, 564, 562, 560,
877 559, 558, 557, 556, 555, 553, 552, 551, 550, 549,
879 548, 547, 546, 545, 544, 543, 542, 541, 540, 539,
880 538, 537, 536, 533, 532, 531, 530, 529, 528, 527,
881 526, 525, 524, 523, 522, 521, 520, 519, 518, 517,
882 516, 515, 514, 513, 512, 511, 510, 509, 507, 506,
883 505, 504, 503, 502, 501, 500, 499, 498, 497, 496,
884 495, 494, 493, 491, 490, 489, 488, 487, 485, 484,
885 483, 482, 481, 480, 479, 478, 477, 476, 474, 473,
886 472, 471, 469, 468, 467, 466, 465, 464, 463, 462,
887 461, 460, 459, 458, 457, 456, 455, 454, 453, 452,
888 451, 450, 449, 448, 447, 446, 445, 444, 443, 440,
890 439, 438, 437, 436, 435, 434, 433, 432, 431, 430,
891 429, 428, 427, 426, 425, 424, 423, 421, 420, 419,
892 418, 417, 416, 415, 414, 413, 410, 409, 408, 407,
893 406, 405, 404, 403, 402, 401, 400, 399, 398, 397,
894 396, 394, 393, 392, 391, 390, 389, 388, 387, 386,
895 385, 383, 382, 381, 379, 378, 377, 376, 375, 373,
896 372, 371, 370, 369, 368, 367, 366, 365, 364, 363,
897 362, 361, 360, 359, 358, 357, 356, 355, 354, 352,
898 351, 350, 348, 347, 346, 345, 343, 342, 341, 340,
899 338, 337, 336, 335, 334, 333, 332, 331, 329, 328,
901 327, 326, 325, 324, 323, 322, 321, 320, 318, 316,
902 315, 314, 313, 312, 311, 310, 309, 308, 307, 306,
903 305, 304, 302, 301, 300, 299, 298, 297, 296, 295,
904 294, 293, 292, 291, 290, 289, 288, 287, 286, 285,
905 284, 283, 282, 281, 280, 278, 277, 276, 274, 273,
906 272, 270, 268, 267, 266, 265, 264, 262, 261, 260,
907 259, 258, 257, 256, 255, 254, 253, 252, 251, 250,
908 249, 248, 247, 246, 245, 244, 243, 242, 241, 239,
909 238, 237, 236, 233, 230, 229, 227, 225, 223, 221,
910 218, 216, 215, 214, 213, 211, 210, 209, 208, 207,
912 206, 205, 204, 202, 201, 200, 199, 198, 197, 196,
913 194, 193, 192, 191, 187, 185, 183, 180, 179, 178,
914 177, 176, 174, 173, 171, 170, 169, 168, 167, 165,
915 164, 162, 161, 160, 159, 157, 156, 155, 153, 152,
916 150, 149, 148, 147, 146, 145, 144, 142, 137, 136,
917 134, 133, 131, 130, 129, 126, 121, 120, 119, 117,
918 116, 115, 113, 112, 111, 110, 109, 108, 106, 103,
919 102, 101, 100, 99, 98, 96, 95, 94, 93, 92,
920 91, 90, 89, 88, 87, 86, 85, 81, 80, 76,
921 61, 50, 49, 48, 47, 45, 42, 41, 40, 38,
923 37, 35, 32, 28, 27, 26, 25, 23, 20, 15,
924 14, 11, 7, 3, 993, 993, 993, 993, 993, 993,
925 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
926 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
927 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
928 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
929 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
930 993, 993, 993, 993, 993, 993, 993, 993, 993, 993,
931 993, 993, 993, 993, 993, 993, 993, 993
938#define YY_RESTORE_YY_MORE_OFFSET
945#define fileno _fileno
946#define isatty _isatty
955#define token_debug printf
977static int yy_start_stack_ptr = 0;
978static int yy_start_stack_depth = 0;
979static int *yy_start_stack = 0;
980#ifndef YY_NO_PUSH_STATE
981static void yy_push_state
YY_PROTO((
int new_state ));
983#ifndef YY_NO_POP_STATE
984static void yy_pop_state
YY_PROTO((
void ));
986#ifndef YY_NO_TOP_STATE
987static int yy_top_state
YY_PROTO((
void ));
991#define YY_NO_PUSH_STATE 1
992#define YY_NO_POP_STATE 1
993#define YY_NO_TOP_STATE 1
999#if !(defined __STDC__ && __STDC__)
1010#ifndef YY_READ_BUF_SIZE
1011#define YY_READ_BUF_SIZE 8192
1020#define ECHO do { fwrite( yytext, yyleng, 1, yyout ); } while (false)
1027#define YY_INPUT(buf,result,max_size) \
1028 if ( yy_current_buffer->yy_is_interactive ) \
1031 for ( n = 0; n < max_size && \
1032 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1033 buf[n] = static_cast<char>(c); \
1035 buf[n++] = static_cast<char>(c); \
1036 if ( c == EOF && ferror( yyin ) ) \
1037 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1040 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1041 && ferror( yyin ) ) \
1042 YY_FATAL_ERROR( "input in flex scanner failed" );
1050#define yyterminate() return YY_NULL
1054#ifndef YY_FATAL_ERROR
1055#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1062#define YY_DECL int yylex YY_PROTO(( void ))
1068#ifndef YY_USER_ACTION
1069#define YY_USER_ACTION
1074#define YY_BREAK break;
1077#define YY_RULE_SETUP \
1132 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1134 yy_current_state =
static_cast<int>(
yy_def[yy_current_state]);
1135 if ( yy_current_state >= 994 )
1136 yy_c = sal::static_int_cast<YY_CHAR>(
yy_meta[
static_cast<unsigned int>(yy_c)]);
1138 yy_current_state =
yy_nxt[
yy_base[yy_current_state] +
static_cast<unsigned int>(yy_c)];
1141 while (
yy_base[yy_current_state] != 1315 );
1165 goto yy_find_action;
1357 int yy_amount_of_matched_text =
static_cast<int>(
yy_cp -
yytext_ptr) - 1;
1386 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[
yy_n_chars] )
1407 if ( yy_next_state )
1411 yy_current_state = yy_next_state;
1418 goto yy_find_action;
1472 goto yy_find_action;
1480 "fatal flex scanner internal error--no action found" );
1498 int number_to_move,
i;
1503 "fatal flex scanner internal error--end of buffer missed" );
1529 for (
i = 0;
i < number_to_move; ++
i )
1530 *(dest++) = *(source++);
1543 while ( num_to_read <= 0 )
1545#ifdef YY_USES_REJECT
1547"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
1553 int yy_c_buf_p_offset =
1556 if ( b->yy_is_our_buffer )
1558 int new_size = b->yy_buf_size * 2;
1560 if ( new_size <= 0 )
1561 b->yy_buf_size += b->yy_buf_size / 8;
1563 b->yy_buf_size *= 2;
1565 b->yy_ch_buf =
static_cast<char *
>(
1568 b->yy_buf_size + 2 ));
1572 b->yy_ch_buf =
nullptr;
1574 if ( ! b->yy_ch_buf )
1576 "fatal error - scanner input buffer overflow" );
1578 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
1641 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1643 yy_current_state =
static_cast<int>(
yy_def[yy_current_state]);
1644 if ( yy_current_state >= 994 )
1645 yy_c = sal::static_int_cast<YY_CHAR>(
yy_meta[
static_cast<unsigned int>(yy_c)]);
1647 yy_current_state =
yy_nxt[
yy_base[yy_current_state] +
static_cast<unsigned int>(yy_c)];
1650 return yy_current_state;
1676 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1678 yy_current_state =
static_cast<int>(
yy_def[yy_current_state]);
1679 if ( yy_current_state >= 994 )
1680 yy_c = sal::static_int_cast<YY_CHAR>(
yy_meta[
static_cast<unsigned int>(yy_c)]);
1682 yy_current_state =
yy_nxt[
yy_base[yy_current_state] +
static_cast<unsigned int>(yy_c)];
1683 yy_is_jam = (yy_current_state == 993);
1685 return yy_is_jam ? 0 : yy_current_state;
1707YY_BUFFER_STATE new_buffer;
1756 b =
static_cast<YY_BUFFER_STATE
>(
yy_flex_alloc(
sizeof(
struct yy_buffer_state ) ));
1760 b->yy_buf_size =
size;
1765 b->yy_ch_buf =
static_cast<char *
>(
yy_flex_alloc( b->yy_buf_size + 2 ));
1766 if ( ! b->yy_ch_buf )
1769 b->yy_is_our_buffer = 1;
1790 if ( b->yy_is_our_buffer )
1797#ifndef YY_ALWAYS_INTERACTIVE
1798#ifndef YY_NEVER_INTERACTIVE
1799extern int isatty
YY_PROTO((
int ));
1815 b->yy_input_file = file;
1816 b->yy_fill_buffer = 1;
1818#if YY_ALWAYS_INTERACTIVE
1819 b->yy_is_interactive =
true;
1821#if YY_NEVER_INTERACTIVE
1822 b->yy_is_interactive =
false;
1824 b->yy_is_interactive = file && isatty( fileno(file) ) > 0;
1850 b->yy_buf_pos = &b->yy_ch_buf[0];
1860#ifndef YY_NO_SCAN_BUFFER
1877 b =
static_cast<YY_BUFFER_STATE
>(
yy_flex_alloc(
sizeof(
struct yy_buffer_state ) ));
1881 b->yy_buf_size =
size - 2;
1882 b->yy_buf_pos = b->yy_ch_buf =
base;
1883 b->yy_is_our_buffer = 0;
1884 b->yy_input_file =
nullptr;
1885 b->yy_n_chars = b->yy_buf_size;
1886 b->yy_is_interactive =
false;
1888 b->yy_fill_buffer = 0;
1898#ifndef YY_NO_SCAN_STRING
1907 for ( len = 0; yy_str[len]; ++len )
1915#ifndef YY_NO_SCAN_BYTES
1935 for (
i = 0;
i < len; ++
i )
1947 b->yy_is_our_buffer = 1;
1954#ifndef YY_NO_PUSH_STATE
1956static void yy_push_state(
int new_state )
1958static void yy_push_state( new_state )
1962 if ( yy_start_stack_ptr >= yy_start_stack_depth )
1966 yy_start_stack_depth += YY_START_STACK_INCR;
1967 new_size = yy_start_stack_depth *
sizeof(
int );
1969 if ( ! yy_start_stack )
1974 (
void *) yy_start_stack, new_size );
1976 if ( ! yy_start_stack )
1978 "out of memory expanding start-condition stack" );
1981 yy_start_stack[yy_start_stack_ptr++] =
YY_START;
1988#ifndef YY_NO_POP_STATE
1989static void yy_pop_state()
1991 if ( --yy_start_stack_ptr < 0 )
1994 BEGIN(yy_start_stack[yy_start_stack_ptr]);
1999#ifndef YY_NO_TOP_STATE
2000static int yy_top_state()
2002 return yy_start_stack[yy_start_stack_ptr - 1];
2006#ifndef YY_EXIT_FAILURE
2007#define YY_EXIT_FAILURE 2
2017 (void) fprintf( stderr,
"%s\n", msg );
2026static void yy_flex_strncpy(
char *s1,
yyconst char *s2,
int n )
2028static void yy_flex_strncpy( s1, s2, n )
2035 for ( i = 0;
i <
n; ++
i )
2040#ifdef YY_NEED_STRLEN
2042static int yy_flex_strlen(
yyconst char *s )
2044static int yy_flex_strlen( s )
2049 for ( n = 0; s[
n]; ++
n )
2064 return malloc(
size );
2082 return realloc( ptr,
size );
yyconst short int yy_accept[994]
static yy_state_type yy_last_accepting_state
static int token_debug(const char *format,...)
void yy_flush_buffer(YY_BUFFER_STATE b)
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
void yy_load_buffer_state()
static YY_BUFFER_STATE yy_current_buffer
static void * yy_flex_realloc(void *ptr, yy_size_t size)
void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
#define YY_RESTORE_YY_MORE_OFFSET
static int yy_did_buffer_switch_on_eof
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
yyconst short int yy_base[995]
YY_BUFFER_STATE yy_scan_bytes(yyconst char *bytes, int len)
yyconst short int yy_def[995]
#define EOB_ACT_END_OF_FILE
void initFlex(const char *_code)
static void * yy_flex_alloc(yy_size_t size)
static int yy_get_next_buffer()
#define YY_CURRENT_BUFFER
#define YY_INPUT(buf, result, max_size)
#define YY_STATE_EOF(state)
void yyrestart(FILE *input_file)
#define YY_END_OF_BUFFER_CHAR
#define YY_FATAL_ERROR(msg)
static void yy_flex_free(void *ptr)
static yy_state_type yy_get_previous_state()
yyconst short int yy_nxt[1389]
#define YY_DO_BEFORE_ACTION
#define EOB_ACT_LAST_MATCH
#define YY_BUFFER_EOF_PENDING
#define EOB_ACT_CONTINUE_SCAN
void yy_delete_buffer(YY_BUFFER_STATE b)
static void yy_fatal_error(yyconst char msg[])
static yy_state_type yy_try_NUL_trans(yy_state_type yy_current_state)
yyconst short int yy_chk[1389]
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size)
static char * yy_last_accepting_cpos
YY_BUFFER_STATE yy_scan_string(yyconst char *yy_str)
std::vector< sal_uInt8 > bytes
const wchar_t *typedef int(__stdcall *DllNativeUnregProc)(int