1 typedef unsigned char Uchar
;
4 # define NLSTATE yyprevious=YYNEWLINE
5 # define BEGIN yybgin = yysvec + 1 +
8 # define YYSTATE (yyestate-yysvec-1)
11 # define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
12 # define yymore() (yymorfg=1)
13 # define ECHO fprintf(yyout, "%s",yytext)
14 # define REJECT { nstr = yyreject(); goto yyfussy;}
15 int yyleng
; extern char yytext
[];
17 extern Uchar
*yysptr
, yysbuf
[];
23 struct yywork
*yystoff
;
24 struct yysvf
*yyother
;
26 struct yysvf
*yyestate
;
27 extern struct yysvf yysvec
[], *yybgin
;
28 int yylook(void), yywrap(void), yyback(int *, int);
29 # define output(c) putc(c,yyout)
30 # define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
44 int yyback(int *, int);
47 void shell_init(void), shell_exec(void), shell_text(char *);
49 #define CADD cbuf[clen++] = yytext[0]; \
50 if (clen >= CBUFLEN-1) { \
51 ERROR "string too long", cbuf WARNING; BEGIN A; }
58 int nstr
; extern int yyprevious
;
59 if (yybgin
-yysvec
-1 == 0) { /* witchcraft */
62 while((nstr
= yylook()) >= 0)
63 yyfussy
: switch(nstr
){
65 if(yywrap()) return(0); break;
79 return(yylval
.i
= LINE
);
82 { yylval
.i
= ARROW
; return(LINE
); }
85 return(yylval
.i
= CIRCLE
);
136 { yylval
.p
= tostring(yytext
+3); return(PIC
); }
139 { yylval
.p
= tostring(yytext
+5); return(GRAPH
); }
148 { yylval
.p
= delimstr("loop body"); BEGIN A
; return(DOSTR
); }
154 { BEGIN thru
; return(THRU
); }
160 { yylval
.op
= copythru(yytext
); BEGIN A
; return(DEFNAME
); }
169 { yylval
.p
= delimstr("then part"); BEGIN A
; return(THEN
); }
172 { yylval
.p
= delimstr("else part"); BEGIN A
; return(ELSE
); }
178 return(yylval
.i
= DRAW
);
181 return(yylval
.i
= NEW
);
184 return(yylval
.i
= PLOT
);
196 { yylval
.i
= TOP
; return SIDE
; }
199 { yylval
.i
= BOT
; return SIDE
; }
202 { yylval
.i
= LEFT
; return SIDE
; }
205 { yylval
.i
= RIGHT
; return SIDE
; }
208 return(yylval
.i
= UP
);
211 return(yylval
.i
= DOWN
);
214 return(yylval
.i
= ACROSS
);
217 return(yylval
.i
= HEIGHT
);
220 return(yylval
.i
= WIDTH
);
223 return(yylval
.i
= RADIUS
);
226 return(yylval
.i
= INVIS
);
229 return(yylval
.i
= DOT
);
232 return(yylval
.i
= DASH
);
235 return(yylval
.i
= SOLID
);
238 { yylval
.i
= LJUST
; return JUST
; }
241 { yylval
.i
= RJUST
; return JUST
; }
244 { yylval
.i
= ABOVE
; return JUST
; }
247 { yylval
.i
= BELOW
; return JUST
; }
250 return(yylval
.i
= SIZE
);
253 return(yylval
.i
= FROM
);
256 return(yylval
.i
= TO
);
259 return(yylval
.i
= BY
);
262 return(yylval
.i
= AT
);
265 return(yylval
.i
= WITH
);
268 return(yylval
.i
= IN
);
271 return(yylval
.i
= OUT
);
274 return(yylval
.i
= OFF
);
278 if ((delim
= input()) == '{') {
289 if (yytext
[0] == delim
) {
293 p
= lookup(yytext
, 0);
294 if (p
!= NULL
&& p
->type
== DEFNAME
) {
307 { shcnt
++; shell_text(yytext
); }
310 { if (delim
!= '}' || --shcnt
> 0)
319 { if (yytext
[0] == delim
) {
330 { definition(yytext
); BEGIN A
; }
334 yylval
.f
= atof(yytext
); return(NUMBER
); }
337 { if (yytext
[1] == 'G' && yytext
[2] == '2') {
338 yylval
.i
= yytext
[2];
341 yylval
.p
= tostring(yytext
);
350 p
= lookup(yytext
, 1);
351 if (p
->type
== DEFNAME
) {
354 if (c
== '(') /* it's name(...) */
356 else /* no argument list */
360 return p
->type
; /* NAME or VARNAME */
392 { BEGIN str
; clen
= 0; }
395 { BEGIN A
; cbuf
[clen
] = 0;
396 yylval
.p
= tostring(cbuf
); return(STRING
); }
399 { ERROR
"newline in string" WARNING
; BEGIN A
; return(ST
); }
402 { cbuf
[clen
++] = '\\'; cbuf
[clen
++] = '"'; }
405 { cbuf
[clen
++] = '\\'; cbuf
[clen
++] = '\\'; }
414 { yylval
.i
= yytext
[0]; return(yytext
[0]); }
419 fprintf(yyout
,"bad switch yylook %d",nstr
);
1362 struct yywork
{ YYTYPE verify
, advance
; } yycrank
[] = {
1363 0,0, 0,0, 3,13, 0,0,
1364 5,52, 0,0, 0,0, 0,0,
1365 0,0, 0,0, 3,14, 3,15,
1366 5,52, 5,53, 0,0, 0,0,
1368 0,0, 0,0, 9,57, 0,0,
1370 0,0, 0,0, 9,58, 9,0,
1371 10,0, 18,65, 3,16, 3,17,
1372 3,18, 5,54, 6,54, 3,19,
1373 27,76, 18,65, 18,0, 65,0,
1374 11,60, 0,0, 0,0, 3,20,
1375 0,0, 3,21, 0,0, 5,52,
1376 11,60, 11,60, 0,0, 0,0,
1377 55,130, 0,0, 58,132, 19,66,
1378 3,22, 3,23, 3,24, 3,25,
1379 0,0, 0,0, 3,26, 0,0,
1380 5,52, 9,57, 20,67, 20,67,
1381 20,67, 20,67, 20,67, 20,67,
1382 20,67, 20,67, 20,67, 20,67,
1383 18,65, 58,132, 16,64, 23,72,
1384 24,73, 25,74, 9,59, 0,0,
1385 0,0, 0,0, 0,0, 11,60,
1386 0,0, 3,27, 0,0, 5,55,
1387 6,55, 18,65, 3,28, 3,29,
1388 3,30, 3,31, 3,32, 3,33,
1389 3,34, 3,35, 3,36, 0,0,
1390 11,61, 3,37, 3,38, 3,39,
1391 3,40, 3,41, 55,131, 3,42,
1392 3,43, 3,44, 3,45, 80,139,
1393 3,46, 3,47, 3,48, 29,81,
1394 39,106, 3,49, 4,16, 4,17,
1395 4,18, 28,77, 28,78, 4,19,
1396 30,84, 29,82, 33,92, 35,95,
1397 32,90, 33,93, 30,85, 4,50,
1398 34,94, 36,97, 40,107, 29,83,
1399 12,62, 28,79, 12,63, 28,80,
1400 32,91, 36,98, 35,96, 38,104,
1401 4,22, 4,23, 4,24, 4,25,
1402 31,86, 40,108, 46,126, 38,105,
1403 31,87, 49,127, 4,51, 37,99,
1404 51,129, 77,136, 11,62, 37,100,
1405 11,63, 78,137, 31,88, 37,101,
1406 37,102, 31,89, 42,112, 41,109,
1407 79,138, 37,103, 41,110, 44,121,
1408 44,122, 81,140, 42,113, 42,114,
1409 41,111, 4,27, 44,123, 45,124,
1410 82,141, 45,125, 4,28, 4,29,
1411 4,30, 4,31, 4,32, 4,33,
1412 4,34, 4,35, 4,36, 84,142,
1413 86,146, 4,37, 4,38, 4,39,
1414 4,40, 4,41, 87,147, 4,42,
1415 4,43, 4,44, 4,45, 89,150,
1416 4,46, 4,47, 4,48, 90,151,
1417 91,152, 4,49, 7,56, 7,56,
1418 7,56, 7,56, 7,56, 7,56,
1419 7,56, 7,56, 7,56, 7,56,
1420 7,56, 7,56, 7,56, 7,56,
1421 7,56, 7,56, 7,56, 7,56,
1422 7,56, 7,56, 7,56, 7,56,
1423 7,56, 7,56, 7,56, 7,56,
1424 88,148, 85,143, 85,144, 88,149,
1425 7,56, 85,145, 7,56, 7,56,
1426 7,56, 7,56, 7,56, 7,56,
1427 7,56, 7,56, 7,56, 7,56,
1428 7,56, 7,56, 7,56, 7,56,
1429 7,56, 7,56, 7,56, 7,56,
1430 7,56, 7,56, 7,56, 7,56,
1431 7,56, 7,56, 7,56, 7,56,
1432 21,68, 92,153, 21,69, 21,69,
1433 21,69, 21,69, 21,69, 21,69,
1434 21,69, 21,69, 21,69, 21,69,
1435 43,115, 43,116, 95,158, 99,162,
1436 100,163, 101,164, 98,159, 43,117,
1437 43,118, 43,119, 67,70, 21,70,
1438 43,120, 56,56, 56,56, 56,56,
1439 56,56, 56,56, 56,56, 56,56,
1440 56,56, 56,56, 56,56, 98,160,
1441 102,165, 98,161, 103,166, 93,154,
1442 104,167, 105,168, 107,171, 26,75,
1443 26,75, 26,75, 26,75, 26,75,
1444 26,75, 26,75, 26,75, 26,75,
1445 26,75, 93,155, 67,70, 21,70,
1446 106,169, 106,170, 67,71, 21,71,
1447 26,75, 26,75, 26,75, 26,75,
1448 26,75, 26,75, 26,75, 26,75,
1449 26,75, 26,75, 26,75, 26,75,
1450 26,75, 26,75, 26,75, 26,75,
1451 26,75, 26,75, 26,75, 26,75,
1452 26,75, 26,75, 26,75, 26,75,
1453 26,75, 26,75, 108,172, 109,173,
1454 110,174, 111,175, 26,75, 113,178,
1455 26,75, 26,75, 26,75, 26,75,
1456 26,75, 26,75, 26,75, 26,75,
1457 26,75, 26,75, 26,75, 26,75,
1458 26,75, 26,75, 26,75, 26,75,
1459 26,75, 26,75, 26,75, 26,75,
1460 26,75, 26,75, 26,75, 26,75,
1461 26,75, 26,75, 50,128, 114,179,
1462 115,180, 117,183, 118,184, 70,134,
1463 119,185, 70,134, 50,128, 50,128,
1464 70,135, 70,135, 70,135, 70,135,
1465 70,135, 70,135, 70,135, 70,135,
1466 70,135, 70,135, 94,156, 112,176,
1467 116,181, 120,186, 121,187, 115,180,
1468 122,189, 123,190, 94,157, 124,191,
1469 126,192, 112,177, 129,194, 135,71,
1470 116,182, 136,195, 137,196, 121,188,
1471 138,197, 139,198, 140,199, 141,200,
1472 142,201, 143,202, 144,203, 146,204,
1473 126,193, 50,67, 59,59, 59,59,
1474 59,59, 59,59, 59,59, 59,59,
1475 59,59, 59,59, 59,59, 59,59,
1476 128,0, 147,205, 148,206, 149,207,
1477 150,208, 151,209, 50,128, 59,59,
1478 59,59, 59,59, 59,59, 59,59,
1479 59,59, 59,59, 59,59, 59,59,
1480 59,59, 59,59, 59,59, 59,59,
1481 59,59, 59,59, 59,59, 59,59,
1482 59,59, 59,59, 59,59, 59,59,
1483 59,59, 59,59, 59,59, 59,59,
1484 59,59, 154,210, 155,211, 156,212,
1485 157,213, 59,59, 128,128, 59,59,
1486 59,59, 59,59, 59,59, 59,59,
1487 59,59, 59,59, 59,59, 59,59,
1488 59,59, 59,59, 59,59, 59,59,
1489 59,59, 59,59, 59,59, 59,59,
1490 59,59, 59,59, 59,59, 59,59,
1491 59,59, 59,59, 59,59, 59,59,
1492 59,59, 61,133, 61,133, 61,133,
1493 61,133, 61,133, 61,133, 61,133,
1494 61,133, 61,133, 61,133, 158,214,
1495 159,215, 161,216, 162,217, 163,218,
1496 164,219, 165,220, 61,133, 61,133,
1497 61,133, 61,133, 61,133, 61,133,
1498 61,133, 61,133, 61,133, 61,133,
1499 61,133, 61,133, 61,133, 61,133,
1500 61,133, 61,133, 61,133, 61,133,
1501 61,133, 61,133, 61,133, 61,133,
1502 61,133, 61,133, 61,133, 61,133,
1503 170,221, 174,223, 175,224, 176,225,
1504 61,133, 177,226, 61,133, 61,133,
1505 61,133, 61,133, 61,133, 61,133,
1506 61,133, 61,133, 61,133, 61,133,
1507 61,133, 61,133, 61,133, 61,133,
1508 61,133, 61,133, 61,133, 61,133,
1509 61,133, 61,133, 61,133, 61,133,
1510 61,133, 61,133, 61,133, 61,133,
1511 68,68, 68,68, 68,68, 68,68,
1512 68,68, 68,68, 68,68, 68,68,
1513 68,68, 68,68, 134,135, 134,135,
1514 134,135, 134,135, 134,135, 134,135,
1515 134,135, 134,135, 134,135, 134,135,
1516 173,222, 68,70, 178,227, 179,228,
1517 180,180, 182,229, 183,230, 184,231,
1518 185,232, 186,83, 187,233, 188,234,
1519 189,236, 191,237, 192,238, 193,239,
1520 194,240, 188,235, 195,241, 196,242,
1521 197,243, 198,244, 199,245, 173,222,
1522 200,246, 201,247, 202,248, 180,180,
1523 204,249, 205,250, 206,251, 210,252,
1524 212,253, 68,70, 213,254, 214,256,
1525 215,257, 68,71, 216,258, 217,259,
1526 220,260, 213,255, 222,222, 224,261,
1527 225,262, 227,263, 228,264, 230,265,
1528 231,266, 234,267, 222,222, 222,0,
1529 236,268, 237,269, 238,270, 240,271,
1530 242,272, 246,273, 247,274, 248,275,
1531 249,276, 250,277, 251,278, 253,279,
1532 254,280, 256,96, 257,281, 259,282,
1533 262,283, 266,284, 267,285, 271,286,
1534 277,287, 279,279, 280,288, 281,203,
1535 284,289, 285,235, 286,290, 287,287,
1536 288,291, 279,279, 279,0, 291,255,
1537 0,0, 0,0, 253,279, 0,0,
1538 0,0, 222,222, 0,0, 0,0,
1539 0,0, 0,0, 0,0, 277,287,
1541 0,0, 0,0, 287,287, 0,0,
1542 0,0, 0,0, 222,222, 0,0,
1546 279,279, 0,0, 0,0, 0,0,
1550 0,0, 279,279, 0,0, 0,0,
1552 struct yysvf yysvec
[] = {
1557 yycrank
+-93, yysvec
+3, 0,
1559 yycrank
+-4, yysvec
+5, 0,
1561 yycrank
+0, yysvec
+7, 0,
1563 yycrank
+-22, yysvec
+9, 0,
1565 yycrank
+-21, yysvec
+11, 0,
1566 yycrank
+0, 0, yyvstop
+1,
1567 yycrank
+0, 0, yyvstop
+3,
1568 yycrank
+0, 0, yyvstop
+6,
1569 yycrank
+21, 0, yyvstop
+8,
1570 yycrank
+0, 0, yyvstop
+11,
1571 yycrank
+-32, 0, yyvstop
+14,
1572 yycrank
+21, 0, yyvstop
+17,
1573 yycrank
+22, 0, yyvstop
+19,
1574 yycrank
+230, 0, yyvstop
+21,
1575 yycrank
+0, 0, yyvstop
+24,
1576 yycrank
+22, 0, yyvstop
+27,
1577 yycrank
+23, 0, yyvstop
+30,
1578 yycrank
+24, 0, yyvstop
+32,
1579 yycrank
+271, 0, yyvstop
+35,
1580 yycrank
+30, 0, yyvstop
+38,
1581 yycrank
+31, yysvec
+26, yyvstop
+40,
1582 yycrank
+22, yysvec
+26, yyvstop
+43,
1583 yycrank
+27, yysvec
+26, yyvstop
+46,
1584 yycrank
+59, yysvec
+26, yyvstop
+49,
1585 yycrank
+28, yysvec
+26, yyvstop
+52,
1586 yycrank
+23, yysvec
+26, yyvstop
+55,
1587 yycrank
+26, yysvec
+26, yyvstop
+58,
1588 yycrank
+34, yysvec
+26, yyvstop
+61,
1589 yycrank
+39, yysvec
+26, yyvstop
+64,
1590 yycrank
+66, yysvec
+26, yyvstop
+67,
1591 yycrank
+54, yysvec
+26, yyvstop
+70,
1592 yycrank
+23, yysvec
+26, yyvstop
+73,
1593 yycrank
+40, yysvec
+26, yyvstop
+76,
1594 yycrank
+70, yysvec
+26, yyvstop
+79,
1595 yycrank
+77, yysvec
+26, yyvstop
+82,
1596 yycrank
+184, yysvec
+26, yyvstop
+85,
1597 yycrank
+75, yysvec
+26, yyvstop
+88,
1598 yycrank
+77, yysvec
+26, yyvstop
+91,
1599 yycrank
+53, yysvec
+26, yyvstop
+94,
1600 yycrank
+0, yysvec
+26, yyvstop
+97,
1601 yycrank
+0, yysvec
+26, yyvstop
+101,
1602 yycrank
+37, 0, yyvstop
+105,
1603 yycrank
+-393, 0, yyvstop
+107,
1604 yycrank
+54, yysvec
+26, yyvstop
+109,
1605 yycrank
+0, 0, yyvstop
+112,
1606 yycrank
+0, 0, yyvstop
+114,
1607 yycrank
+0, 0, yyvstop
+116,
1608 yycrank
+22, 0, yyvstop
+119,
1609 yycrank
+253, yysvec
+7, yyvstop
+121,
1610 yycrank
+0, 0, yyvstop
+123,
1611 yycrank
+49, 0, yyvstop
+125,
1612 yycrank
+394, 0, yyvstop
+128,
1613 yycrank
+0, 0, yyvstop
+130,
1614 yycrank
+469, 0, yyvstop
+132,
1615 yycrank
+0, 0, yyvstop
+135,
1616 yycrank
+0, 0, yyvstop
+138,
1617 yycrank
+0, 0, yyvstop
+141,
1618 yycrank
+-33, yysvec
+18, yyvstop
+143,
1619 yycrank
+0, 0, yyvstop
+145,
1620 yycrank
+229, yysvec
+20, yyvstop
+147,
1621 yycrank
+544, 0, yyvstop
+149,
1622 yycrank
+0, yysvec
+21, yyvstop
+151,
1624 yycrank
+0, 0, yyvstop
+153,
1625 yycrank
+0, 0, yyvstop
+155,
1626 yycrank
+0, 0, yyvstop
+157,
1627 yycrank
+0, 0, yyvstop
+159,
1628 yycrank
+0, yysvec
+26, yyvstop
+161,
1629 yycrank
+0, 0, yyvstop
+163,
1630 yycrank
+54, yysvec
+26, yyvstop
+165,
1631 yycrank
+55, yysvec
+26, yyvstop
+167,
1632 yycrank
+62, yysvec
+26, yyvstop
+169,
1633 yycrank
+22, yysvec
+26, yyvstop
+171,
1634 yycrank
+73, yysvec
+26, yyvstop
+174,
1635 yycrank
+72, yysvec
+26, yyvstop
+176,
1636 yycrank
+0, yysvec
+26, yyvstop
+178,
1637 yycrank
+85, yysvec
+26, yyvstop
+181,
1638 yycrank
+134, yysvec
+26, yyvstop
+183,
1639 yycrank
+85, yysvec
+26, yyvstop
+185,
1640 yycrank
+104, yysvec
+26, yyvstop
+187,
1641 yycrank
+128, yysvec
+26, yyvstop
+189,
1642 yycrank
+114, yysvec
+26, yyvstop
+192,
1643 yycrank
+100, yysvec
+26, yyvstop
+194,
1644 yycrank
+104, yysvec
+26, yyvstop
+196,
1645 yycrank
+163, yysvec
+26, yyvstop
+198,
1646 yycrank
+218, yysvec
+26, yyvstop
+200,
1647 yycrank
+317, yysvec
+26, yyvstop
+202,
1648 yycrank
+185, yysvec
+26, yyvstop
+204,
1649 yycrank
+0, yysvec
+26, yyvstop
+206,
1650 yycrank
+0, yysvec
+26, yyvstop
+209,
1651 yycrank
+195, yysvec
+26, yyvstop
+212,
1652 yycrank
+193, yysvec
+26, yyvstop
+215,
1653 yycrank
+190, yysvec
+26, yyvstop
+217,
1654 yycrank
+183, yysvec
+26, yyvstop
+219,
1655 yycrank
+195, yysvec
+26, yyvstop
+221,
1656 yycrank
+211, yysvec
+26, yyvstop
+223,
1657 yycrank
+196, yysvec
+26, yyvstop
+225,
1658 yycrank
+207, yysvec
+26, yyvstop
+227,
1659 yycrank
+213, yysvec
+26, yyvstop
+229,
1660 yycrank
+216, yysvec
+26, yyvstop
+231,
1661 yycrank
+246, yysvec
+26, yyvstop
+233,
1662 yycrank
+264, yysvec
+26, yyvstop
+235,
1663 yycrank
+253, yysvec
+26, yyvstop
+237,
1664 yycrank
+260, yysvec
+26, yyvstop
+239,
1665 yycrank
+315, yysvec
+26, yyvstop
+241,
1666 yycrank
+264, yysvec
+26, yyvstop
+243,
1667 yycrank
+278, yysvec
+26, yyvstop
+245,
1668 yycrank
+387, yysvec
+26, yyvstop
+247,
1669 yycrank
+306, yysvec
+26, yyvstop
+249,
1670 yycrank
+289, yysvec
+26, yyvstop
+251,
1671 yycrank
+284, yysvec
+26, yyvstop
+253,
1672 yycrank
+286, yysvec
+26, yyvstop
+255,
1673 yycrank
+316, yysvec
+26, yyvstop
+257,
1674 yycrank
+317, yysvec
+26, yyvstop
+259,
1675 yycrank
+321, yysvec
+26, yyvstop
+261,
1676 yycrank
+309, yysvec
+26, yyvstop
+263,
1677 yycrank
+307, yysvec
+26, yyvstop
+266,
1678 yycrank
+0, yysvec
+26, yyvstop
+268,
1679 yycrank
+324, yysvec
+26, yyvstop
+271,
1680 yycrank
+0, 0, yyvstop
+273,
1681 yycrank
+-442, yysvec
+50, yyvstop
+275,
1682 yycrank
+326, yysvec
+26, yyvstop
+277,
1683 yycrank
+0, 0, yyvstop
+279,
1684 yycrank
+0, 0, yyvstop
+281,
1685 yycrank
+0, yysvec
+58, yyvstop
+283,
1686 yycrank
+0, yysvec
+61, yyvstop
+285,
1688 yycrank
+322, yysvec
+134, yyvstop
+287,
1689 yycrank
+311, yysvec
+26, yyvstop
+289,
1690 yycrank
+319, yysvec
+26, yyvstop
+291,
1691 yycrank
+321, yysvec
+26, yyvstop
+293,
1692 yycrank
+323, yysvec
+26, yyvstop
+295,
1693 yycrank
+323, yysvec
+26, yyvstop
+297,
1694 yycrank
+319, yysvec
+26, yyvstop
+299,
1695 yycrank
+337, yysvec
+26, yyvstop
+302,
1696 yycrank
+323, yysvec
+26, yyvstop
+304,
1697 yycrank
+317, yysvec
+26, yyvstop
+306,
1698 yycrank
+0, yysvec
+26, yyvstop
+308,
1699 yycrank
+335, yysvec
+26, yyvstop
+311,
1700 yycrank
+348, yysvec
+26, yyvstop
+313,
1701 yycrank
+338, yysvec
+26, yyvstop
+315,
1702 yycrank
+345, yysvec
+26, yyvstop
+317,
1703 yycrank
+337, yysvec
+26, yyvstop
+319,
1704 yycrank
+356, yysvec
+26, yyvstop
+321,
1705 yycrank
+0, yysvec
+26, yyvstop
+323,
1706 yycrank
+0, yysvec
+26, yyvstop
+326,
1707 yycrank
+376, yysvec
+26, yyvstop
+329,
1708 yycrank
+377, yysvec
+26, yyvstop
+331,
1709 yycrank
+375, yysvec
+26, yyvstop
+333,
1710 yycrank
+388, yysvec
+26, yyvstop
+335,
1711 yycrank
+424, yysvec
+26, yyvstop
+337,
1712 yycrank
+420, yysvec
+26, yyvstop
+339,
1713 yycrank
+0, yysvec
+26, yyvstop
+341,
1714 yycrank
+424, yysvec
+26, yyvstop
+344,
1715 yycrank
+429, yysvec
+26, yyvstop
+346,
1716 yycrank
+415, yysvec
+26, yyvstop
+348,
1717 yycrank
+431, yysvec
+26, yyvstop
+350,
1718 yycrank
+418, yysvec
+26, yyvstop
+352,
1719 yycrank
+0, yysvec
+26, yyvstop
+354,
1720 yycrank
+0, yysvec
+26, yyvstop
+357,
1721 yycrank
+0, yysvec
+26, yyvstop
+360,
1722 yycrank
+0, yysvec
+26, yyvstop
+363,
1723 yycrank
+444, yysvec
+26, yyvstop
+366,
1724 yycrank
+0, yysvec
+26, yyvstop
+368,
1725 yycrank
+0, yysvec
+26, yyvstop
+371,
1726 yycrank
+603, yysvec
+26, yyvstop
+374,
1727 yycrank
+445, yysvec
+26, yyvstop
+376,
1728 yycrank
+452, yysvec
+26, yyvstop
+378,
1729 yycrank
+458, yysvec
+26, yyvstop
+380,
1730 yycrank
+465, yysvec
+26, yyvstop
+383,
1731 yycrank
+510, yysvec
+26, yyvstop
+385,
1732 yycrank
+500, yysvec
+26, yyvstop
+387,
1733 yycrank
+607, 0, yyvstop
+389,
1734 yycrank
+0, yysvec
+26, yyvstop
+391,
1735 yycrank
+516, yysvec
+26, yyvstop
+394,
1736 yycrank
+513, yysvec
+26, yyvstop
+396,
1737 yycrank
+514, yysvec
+26, yyvstop
+398,
1738 yycrank
+504, yysvec
+26, yyvstop
+400,
1739 yycrank
+509, yysvec
+26, yyvstop
+402,
1740 yycrank
+512, yysvec
+26, yyvstop
+404,
1741 yycrank
+512, yysvec
+26, yyvstop
+406,
1742 yycrank
+517, yysvec
+26, yyvstop
+408,
1743 yycrank
+0, yysvec
+26, yyvstop
+410,
1744 yycrank
+520, yysvec
+26, yyvstop
+413,
1745 yycrank
+510, yysvec
+26, yyvstop
+415,
1746 yycrank
+523, yysvec
+26, yyvstop
+418,
1747 yycrank
+526, yysvec
+26, yyvstop
+420,
1748 yycrank
+529, yysvec
+26, yyvstop
+422,
1749 yycrank
+516, yysvec
+26, yyvstop
+424,
1750 yycrank
+513, yysvec
+26, yyvstop
+426,
1751 yycrank
+583, yysvec
+26, yyvstop
+428,
1752 yycrank
+515, yysvec
+26, yyvstop
+430,
1753 yycrank
+525, yysvec
+26, yyvstop
+432,
1754 yycrank
+529, yysvec
+26, yyvstop
+434,
1755 yycrank
+538, yysvec
+26, yyvstop
+436,
1756 yycrank
+0, yysvec
+26, yyvstop
+438,
1757 yycrank
+539, yysvec
+26, yyvstop
+441,
1758 yycrank
+531, yysvec
+26, yyvstop
+443,
1759 yycrank
+541, yysvec
+26, yyvstop
+445,
1760 yycrank
+0, yysvec
+26, yyvstop
+447,
1761 yycrank
+0, yysvec
+26, yyvstop
+450,
1762 yycrank
+0, yysvec
+26, yyvstop
+453,
1763 yycrank
+542, yysvec
+26, yyvstop
+456,
1764 yycrank
+0, yysvec
+26, yyvstop
+458,
1765 yycrank
+540, yysvec
+26, yyvstop
+461,
1766 yycrank
+538, yysvec
+26, yyvstop
+463,
1767 yycrank
+543, yysvec
+26, yyvstop
+466,
1768 yycrank
+531, yysvec
+26, yyvstop
+468,
1769 yycrank
+535, yysvec
+26, yyvstop
+470,
1770 yycrank
+543, yysvec
+26, yyvstop
+472,
1771 yycrank
+0, yysvec
+26, yyvstop
+474,
1772 yycrank
+0, yysvec
+26, yyvstop
+477,
1773 yycrank
+536, yysvec
+26, yyvstop
+480,
1774 yycrank
+0, yysvec
+26, yyvstop
+482,
1775 yycrank
+-653, 0, yyvstop
+485,
1776 yycrank
+0, yysvec
+26, yyvstop
+487,
1777 yycrank
+539, yysvec
+26, yyvstop
+490,
1778 yycrank
+539, yysvec
+26, yyvstop
+492,
1779 yycrank
+0, yysvec
+26, yyvstop
+494,
1780 yycrank
+541, yysvec
+26, yyvstop
+497,
1781 yycrank
+542, yysvec
+26, yyvstop
+499,
1782 yycrank
+0, yysvec
+26, yyvstop
+501,
1783 yycrank
+559, yysvec
+26, yyvstop
+504,
1784 yycrank
+550, yysvec
+26, yyvstop
+506,
1785 yycrank
+0, yysvec
+26, yyvstop
+508,
1786 yycrank
+0, yysvec
+26, yyvstop
+511,
1787 yycrank
+544, yysvec
+26, yyvstop
+514,
1788 yycrank
+0, yysvec
+26, yyvstop
+516,
1789 yycrank
+549, yysvec
+26, yyvstop
+519,
1790 yycrank
+557, yysvec
+26, yyvstop
+522,
1791 yycrank
+562, yysvec
+26, yyvstop
+524,
1792 yycrank
+0, yysvec
+26, yyvstop
+526,
1793 yycrank
+556, yysvec
+26, yyvstop
+529,
1794 yycrank
+0, yysvec
+26, yyvstop
+531,
1795 yycrank
+553, yysvec
+26, yyvstop
+534,
1796 yycrank
+0, yysvec
+26, yyvstop
+536,
1797 yycrank
+0, yysvec
+26, yyvstop
+539,
1798 yycrank
+0, yysvec
+26, yyvstop
+542,
1799 yycrank
+560, yysvec
+26, yyvstop
+545,
1800 yycrank
+569, yysvec
+26, yyvstop
+547,
1801 yycrank
+556, yysvec
+26, yyvstop
+549,
1802 yycrank
+572, yysvec
+26, yyvstop
+552,
1803 yycrank
+572, yysvec
+26, yyvstop
+554,
1804 yycrank
+574, yysvec
+26, yyvstop
+556,
1805 yycrank
+0, yysvec
+26, yyvstop
+558,
1806 yycrank
+666, yysvec
+26, yyvstop
+561,
1807 yycrank
+571, yysvec
+26, yyvstop
+563,
1808 yycrank
+0, yysvec
+26, yyvstop
+565,
1809 yycrank
+561, yysvec
+26, yyvstop
+568,
1810 yycrank
+578, yysvec
+26, yyvstop
+570,
1811 yycrank
+0, yysvec
+26, yyvstop
+572,
1812 yycrank
+564, yysvec
+26, yyvstop
+575,
1813 yycrank
+0, yysvec
+26, yyvstop
+578,
1814 yycrank
+0, yysvec
+26, yyvstop
+581,
1815 yycrank
+565, yysvec
+26, yyvstop
+584,
1816 yycrank
+0, yysvec
+26, yyvstop
+586,
1817 yycrank
+0, yysvec
+26, yyvstop
+589,
1818 yycrank
+0, yysvec
+26, yyvstop
+592,
1819 yycrank
+565, yysvec
+26, yyvstop
+595,
1820 yycrank
+579, yysvec
+26, yyvstop
+597,
1821 yycrank
+0, yysvec
+26, yyvstop
+599,
1822 yycrank
+0, yysvec
+26, yyvstop
+602,
1823 yycrank
+0, yysvec
+26, yyvstop
+605,
1824 yycrank
+569, yysvec
+26, yyvstop
+608,
1825 yycrank
+0, yysvec
+26, yyvstop
+610,
1826 yycrank
+0, yysvec
+26, yyvstop
+613,
1827 yycrank
+0, yysvec
+26, yyvstop
+616,
1828 yycrank
+0, yysvec
+26, yyvstop
+619,
1829 yycrank
+0, yysvec
+26, yyvstop
+622,
1830 yycrank
+675, yysvec
+26, yyvstop
+625,
1831 yycrank
+0, yysvec
+26, yyvstop
+627,
1832 yycrank
+-684, 0, yyvstop
+630,
1833 yycrank
+576, yysvec
+26, yyvstop
+632,
1834 yycrank
+586, yysvec
+26, yyvstop
+634,
1835 yycrank
+0, yysvec
+26, yyvstop
+636,
1836 yycrank
+0, yysvec
+26, yyvstop
+639,
1837 yycrank
+586, yysvec
+26, yyvstop
+642,
1838 yycrank
+585, yysvec
+26, yyvstop
+644,
1839 yycrank
+680, yysvec
+26, yyvstop
+646,
1840 yycrank
+682, 0, yyvstop
+648,
1841 yycrank
+591, yysvec
+26, yyvstop
+650,
1842 yycrank
+0, yysvec
+26, yyvstop
+652,
1843 yycrank
+0, 0, yyvstop
+655,
1844 yycrank
+580, yysvec
+26, yyvstop
+657,
1846 struct yywork
*yytop
= yycrank
+749;
1847 struct yysvf
*yybgin
= yysvec
+1;
1849 00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1850 01 ,011 ,012 ,01 ,01 ,01 ,01 ,01 ,
1851 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1852 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1853 011 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1854 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1855 '0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
1856 '0' ,'0' ,01 ,01 ,01 ,01 ,01 ,01 ,
1857 01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1858 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1859 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1860 'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,'A' ,
1861 01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1862 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1863 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
1864 'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 ,
1865 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1866 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1867 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1868 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1869 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1870 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1871 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1872 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1873 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1874 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1875 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1876 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1877 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1878 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1879 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1880 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
1897 #pragma lib "libl.a"
1900 char yytext
[YYLMAX
];
1901 struct yysvf
*yylstate
[YYLMAX
], **yylsp
, **yyolsp
;
1902 Uchar yysbuf
[YYLMAX
];
1903 Uchar
*yysptr
= yysbuf
;
1905 extern struct yysvf
*yyestate
;
1906 int yyprevious
= YYNEWLINE
;
1908 extern void allprint(int);
1911 struct yysvf
*yystate
, **lsp
;
1920 /* start off machines */
1925 yylastch
= (Uchar
*)yytext
;
1928 yylastch
= (Uchar
*)yytext
+yyleng
;
1932 yyestate
= yystate
= yybgin
;
1933 if (yyprevious
==YYNEWLINE
) yystate
++;
1936 if(debug
)fprintf(yyout
,"state %d\n",yystate
-yysvec
-1);
1938 yyt
= yystate
->yystoff
;
1939 if(yyt
== yycrank
){ /* may not be any transitions */
1940 yyz
= yystate
->yyother
;
1942 if(yyz
->yystoff
== yycrank
)break;
1944 *yylastch
++ = yych
= input();
1948 fprintf(yyout
,"char ");
1956 if (yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
1957 if(yyt
->advance
+yysvec
== YYLERR
) /* error transitions */
1958 {unput(*--yylastch
);break;}
1959 *lsp
++ = yystate
= yyt
->advance
+yysvec
;
1964 else if(yyt
< yycrank
) { /* r < yycrank */
1965 yyt
= yyr
= yycrank
+(yycrank
-yyt
);
1967 if(debug
)fprintf(yyout
,"compressed state\n");
1970 if(yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
1971 if(yyt
->advance
+yysvec
== YYLERR
) /* error transitions */
1972 {unput(*--yylastch
);break;}
1973 *lsp
++ = yystate
= yyt
->advance
+yysvec
;
1976 yyt
= yyr
+ YYU(yymatch
[yych
]);
1979 fprintf(yyout
,"try fall back character ");
1980 allprint(YYU(yymatch
[yych
]));
1984 if(yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
1985 if(yyt
->advance
+yysvec
== YYLERR
) /* error transition */
1986 {unput(*--yylastch
);break;}
1987 *lsp
++ = yystate
= yyt
->advance
+yysvec
;
1991 if ((yystate
= yystate
->yyother
) && (yyt
= yystate
->yystoff
) != yycrank
){
1993 if(debug
)fprintf(yyout
,"fall back to state %d\n",yystate
-yysvec
-1);
1999 {unput(*--yylastch
);break;}
2003 fprintf(yyout
,"state %d char ",yystate
-yysvec
-1);
2012 fprintf(yyout
,"stopped at %d with ",lsp
>yylstate
?*(lsp
-1)-yysvec
-1:0);
2017 while (lsp
-- > yylstate
){
2019 if (*lsp
!= 0 && (yyfnd
= (*lsp
)->yystops
) && *yyfnd
> 0){
2021 if(yyextra
[*yyfnd
]){ /* must backup */
2022 while(yyback((*lsp
)->yystops
,-*yyfnd
) != 1 && lsp
> yylstate
){
2027 yyprevious
= YYU(*yylastch
);
2029 yyleng
= yylastch
-(Uchar
*)yytext
+1;
2033 fprintf(yyout
,"\nmatch '%s'", yytext
);
2034 fprintf(yyout
," action %d\n",*yyfnd
);
2041 if (yytext
[0] == 0 /* && feof(yyin) */)
2046 yyprevious
= input();
2047 yytext
[0] = yyprevious
;
2050 yylastch
= (Uchar
*)yytext
;
2052 if(debug
)putchar('\n');
2056 yyback(int *p
, int m
)
2058 if (p
==0) return(0);
2066 /* the following are only used in the lex library */