1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <inttypes.h> 4 # define U(x) x 5 # define NLSTATE yyprevious=YYNEWLINE 6 # define BEGIN yybgin = yysvec + 1 + 7 # define INITIAL 0 8 # define YYLERR yysvec 9 # define YYSTATE (yyestate-yysvec-1) 10 # define YYOPTIM 1 11 # ifndef YYLMAX 12 # define YYLMAX BUFSIZ 13 # endif 14 #ifndef __cplusplus 15 # define output(c) (void)putc(c,yyout) 16 #else 17 # define lex_output(c) (void)putc(c,yyout) 18 #endif 19 20 #if defined(__cplusplus) || defined(__STDC__) 21 22 #if defined(__cplusplus) && defined(__EXTERN_C__) 23 extern "C" { 24 #endif 25 int yyback(int *, int); 26 int yyinput(void); 27 int yylook(void); 28 void yyoutput(int); 29 int yyracc(int); 30 int yyreject(void); 31 void yyunput(int); 32 int yylex(void); 33 #ifdef YYLEX_E 34 void yywoutput(wchar_t); 35 wchar_t yywinput(void); 36 void yywunput(wchar_t); 37 #endif 38 #ifndef yyless 39 int yyless(int); 40 #endif 41 #ifndef yywrap 42 int yywrap(void); 43 #endif 44 #ifdef LEXDEBUG 45 void allprint(char); 46 void sprint(char *); 47 #endif 48 #if defined(__cplusplus) && defined(__EXTERN_C__) 49 } 50 #endif 51 52 #ifdef __cplusplus 53 extern "C" { 54 #endif 55 void exit(int); 56 #ifdef __cplusplus 57 } 58 #endif 59 60 #endif 61 # define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;} 62 # define yymore() (yymorfg=1) 63 #ifndef __cplusplus 64 # define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar) 65 #else 66 # define lex_input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar) 67 #endif 68 #define ECHO fprintf(yyout, "%s",yytext) 69 # define REJECT { nstr = yyreject(); goto yyfussy;} 70 int yyleng; 71 #define YYISARRAY 72 char yytext[YYLMAX]; 73 int yymorfg; 74 extern char *yysptr, yysbuf[]; 75 int yytchar; 76 FILE *yyin = {stdin}, *yyout = {stdout}; 77 extern int yylineno; 78 struct yysvf { 79 struct yywork *yystoff; 80 struct yysvf *yyother; 81 int *yystops;}; 82 struct yysvf *yyestate; 83 extern struct yysvf yysvec[], *yybgin; 84 85 # line 3 "zonecfg_lex.l" 86 /* 87 * CDDL HEADER START 88 * 89 * The contents of this file are subject to the terms of the 90 * Common Development and Distribution License (the "License"). 91 * You may not use this file except in compliance with the License. 92 * 93 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 94 * or http://www.opensolaris.org/os/licensing. 95 * See the License for the specific language governing permissions 96 * and limitations under the License. 97 * 98 * When distributing Covered Code, include this CDDL HEADER in each 99 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 100 * If applicable, add the following below this CDDL HEADER, with the 101 * fields enclosed by brackets "[]" replaced with your own identifying 102 * information: Portions Copyright [yyyy] [name of copyright owner] 103 * 104 * CDDL HEADER END 105 */ 106 107 108 # line 24 "zonecfg_lex.l" 109 /* 110 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 111 */ 112 113 #include <assert.h> 114 #include <string.h> 115 #include <libintl.h> 116 #include "zonecfg.h" 117 #include "zonecfg_grammar.tab.h" 118 119 120 # line 34 "zonecfg_lex.l" 121 /* 122 * This constant defines the number of entries added to unclaimed_tokens[] 123 * when it runs out of space. 124 */ 125 #define UNCLAIMED_TOKENS_BUFFER_GROWTH 4 126 127 128 # line 40 "zonecfg_lex.l" 129 /* 130 * Invariants: 131 * 132 * unclaimed_tokens == NULL IFF unclaimed_tokens_size == 0 133 * unclaimed_tokens_size == 0 IFF num_unclaimed_tokens == 0 134 */ 135 static char **unclaimed_tokens; /* TOKENs produced by Lex (see below) */ 136 /* but not claimed by YACC reduction */ 137 /* rules */ 138 static unsigned int unclaimed_tokens_size; /* size of unclaimed_tokens */ 139 static unsigned int num_unclaimed_tokens; /* number of unclaimed TOKENs */ 140 141 int lex_lineno = 1; /* line number for error reporting */ 142 static int state = INITIAL; 143 extern boolean_t cmd_file_mode; 144 extern boolean_t saw_error; 145 extern void yyerror(char *s); 146 147 static char *create_token(char *s); 148 149 # line 67 "zonecfg_lex.l" 150 /* 151 * The three states below are for tokens, lists and complex property values. 152 * Note that simple property values are a subset of tokens. 153 */ 154 # define TSTATE 2 155 # define LSTATE 4 156 # define CSTATE 6 157 # define YYNEWLINE 10 158 int yylex(){ 159 int nstr; extern int yyprevious; 160 #ifdef __cplusplus 161 /* to avoid CC and lint complaining yyfussy not being used ...*/ 162 static int __lex_hack = 0; 163 if (__lex_hack) goto yyfussy; 164 #endif 165 while((nstr = yylook()) >= 0) 166 yyfussy: switch(nstr){ 167 case 0: 168 if(yywrap()) return(0); break; 169 case 1: 170 171 # line 76 "zonecfg_lex.l" 172 { } 173 break; 174 case 2: 175 176 # line 78 "zonecfg_lex.l" 177 { 178 BEGIN TSTATE; 179 state = TSTATE; 180 return ADD; 181 } 182 break; 183 case 3: 184 185 # line 84 "zonecfg_lex.l" 186 { 187 BEGIN TSTATE; 188 state = TSTATE; 189 return CANCEL; 190 } 191 break; 192 case 4: 193 194 # line 90 "zonecfg_lex.l" 195 { 196 BEGIN TSTATE; 197 state = TSTATE; 198 return COMMIT; 199 } 200 break; 201 case 5: 202 203 # line 96 "zonecfg_lex.l" 204 { 205 BEGIN TSTATE; 206 state = TSTATE; 207 return CREATE; 208 } 209 break; 210 case 6: 211 212 # line 102 "zonecfg_lex.l" 213 { 214 BEGIN TSTATE; 215 state = TSTATE; 216 return DELETE; 217 } 218 break; 219 case 7: 220 221 # line 108 "zonecfg_lex.l" 222 { 223 BEGIN TSTATE; 224 state = TSTATE; 225 return END; 226 } 227 break; 228 case 8: 229 230 # line 114 "zonecfg_lex.l" 231 { 232 BEGIN TSTATE; 233 state = TSTATE; 234 return EXIT; 235 } 236 break; 237 case 9: 238 239 # line 120 "zonecfg_lex.l" 240 { 241 BEGIN TSTATE; 242 state = TSTATE; 243 return EXPORT; 244 } 245 break; 246 case 10: 247 248 # line 126 "zonecfg_lex.l" 249 { 250 BEGIN TSTATE; 251 state = TSTATE; 252 return HELP; 253 } 254 break; 255 case 11: 256 257 # line 132 "zonecfg_lex.l" 258 { 259 BEGIN TSTATE; 260 state = TSTATE; 261 return INFO; 262 } 263 break; 264 case 12: 265 266 # line 138 "zonecfg_lex.l" 267 { 268 BEGIN TSTATE; 269 state = TSTATE; 270 return REMOVE; 271 } 272 break; 273 case 13: 274 275 # line 144 "zonecfg_lex.l" 276 { 277 BEGIN TSTATE; 278 state = TSTATE; 279 return REVERT; 280 } 281 break; 282 case 14: 283 284 # line 150 "zonecfg_lex.l" 285 { 286 BEGIN TSTATE; 287 state = TSTATE; 288 return SELECT; 289 } 290 break; 291 case 15: 292 293 # line 156 "zonecfg_lex.l" 294 { 295 BEGIN TSTATE; 296 state = TSTATE; 297 return SET; 298 } 299 break; 300 case 16: 301 302 # line 162 "zonecfg_lex.l" 303 { 304 BEGIN TSTATE; 305 state = TSTATE; 306 return CLEAR; 307 } 308 break; 309 case 17: 310 311 # line 168 "zonecfg_lex.l" 312 { 313 BEGIN TSTATE; 314 state = TSTATE; 315 return VERIFY; 316 } 317 break; 318 case 18: 319 320 # line 174 "zonecfg_lex.l" 321 { return NET; } 322 break; 323 case 19: 324 325 # line 176 "zonecfg_lex.l" 326 { return FS; } 327 break; 328 case 20: 329 330 # line 178 "zonecfg_lex.l" 331 { return DEVICE; } 332 break; 333 case 21: 334 335 # line 180 "zonecfg_lex.l" 336 { return RCTL; } 337 break; 338 case 22: 339 340 # line 182 "zonecfg_lex.l" 341 { return ATTR; } 342 break; 343 case 23: 344 345 # line 184 "zonecfg_lex.l" 346 { return ADMIN; } 347 break; 348 case 24: 349 350 # line 186 "zonecfg_lex.l" 351 { return ZONENAME; } 352 break; 353 case 25: 354 355 # line 187 "zonecfg_lex.l" 356 { return ZONENAME; } 357 break; 358 case 26: 359 360 # line 189 "zonecfg_lex.l" 361 { return DATASET; } 362 break; 363 case 27: 364 365 # line 191 "zonecfg_lex.l" 366 { return PSET; } 367 break; 368 case 28: 369 370 # line 193 "zonecfg_lex.l" 371 { return PCAP; } 372 break; 373 case 29: 374 375 # line 195 "zonecfg_lex.l" 376 { return MCAP; } 377 break; 378 case 30: 379 380 # line 197 "zonecfg_lex.l" 381 { return ZONEPATH; } 382 break; 383 case 31: 384 385 # line 198 "zonecfg_lex.l" 386 { return ZONEPATH; } 387 break; 388 case 32: 389 390 # line 200 "zonecfg_lex.l" 391 { return BRAND; } 392 break; 393 case 33: 394 395 # line 201 "zonecfg_lex.l" 396 { return BRAND; } 397 break; 398 case 34: 399 400 # line 203 "zonecfg_lex.l" 401 { return AUTOBOOT; } 402 break; 403 case 35: 404 405 # line 204 "zonecfg_lex.l" 406 { return AUTOBOOT; } 407 break; 408 case 36: 409 410 # line 206 "zonecfg_lex.l" 411 { return IPTYPE; } 412 break; 413 case 37: 414 415 # line 207 "zonecfg_lex.l" 416 { return IPTYPE; } 417 break; 418 case 38: 419 420 # line 209 "zonecfg_lex.l" 421 { return POOL; } 422 break; 423 case 39: 424 425 # line 210 "zonecfg_lex.l" 426 { return POOL; } 427 break; 428 case 40: 429 430 # line 212 "zonecfg_lex.l" 431 { return LIMITPRIV; } 432 break; 433 case 41: 434 435 # line 213 "zonecfg_lex.l" 436 { return LIMITPRIV; } 437 break; 438 case 42: 439 440 # line 215 "zonecfg_lex.l" 441 { return BOOTARGS; } 442 break; 443 case 43: 444 445 # line 216 "zonecfg_lex.l" 446 { return BOOTARGS; } 447 break; 448 case 44: 449 450 # line 218 "zonecfg_lex.l" 451 { return TYPE; } 452 break; 453 case 45: 454 455 # line 219 "zonecfg_lex.l" 456 { return TYPE; } 457 break; 458 case 46: 459 460 # line 221 "zonecfg_lex.l" 461 { return VALUE; } 462 break; 463 case 47: 464 465 # line 222 "zonecfg_lex.l" 466 { return VALUE; } 467 break; 468 case 48: 469 470 # line 224 "zonecfg_lex.l" 471 { return OPTIONS; } 472 break; 473 case 49: 474 475 # line 225 "zonecfg_lex.l" 476 { return OPTIONS; } 477 break; 478 case 50: 479 480 # line 227 "zonecfg_lex.l" 481 { return ALLOWED_ADDRESS; } 482 break; 483 case 51: 484 485 # line 228 "zonecfg_lex.l" 486 { return ALLOWED_ADDRESS; } 487 break; 488 case 52: 489 490 # line 230 "zonecfg_lex.l" 491 { return ADDRESS; } 492 break; 493 case 53: 494 495 # line 231 "zonecfg_lex.l" 496 { return ADDRESS; } 497 break; 498 case 54: 499 500 # line 233 "zonecfg_lex.l" 501 { return PHYSICAL; } 502 break; 503 case 55: 504 505 # line 234 "zonecfg_lex.l" 506 { return PHYSICAL; } 507 break; 508 case 56: 509 510 # line 236 "zonecfg_lex.l" 511 { return DEFROUTER; } 512 break; 513 case 57: 514 515 # line 237 "zonecfg_lex.l" 516 { return DEFROUTER; } 517 break; 518 case 58: 519 520 # line 239 "zonecfg_lex.l" 521 { return DIR; } 522 break; 523 case 59: 524 525 # line 240 "zonecfg_lex.l" 526 { return DIR; } 527 break; 528 case 60: 529 530 # line 242 "zonecfg_lex.l" 531 { return SPECIAL; } 532 break; 533 case 61: 534 535 # line 243 "zonecfg_lex.l" 536 { return SPECIAL; } 537 break; 538 case 62: 539 540 # line 245 "zonecfg_lex.l" 541 { return RAW; } 542 break; 543 case 63: 544 545 # line 246 "zonecfg_lex.l" 546 { return RAW; } 547 break; 548 case 64: 549 550 # line 248 "zonecfg_lex.l" 551 { return NAME; } 552 break; 553 case 65: 554 555 # line 249 "zonecfg_lex.l" 556 { return NAME; } 557 break; 558 case 66: 559 560 # line 251 "zonecfg_lex.l" 561 { return MATCH; } 562 break; 563 case 67: 564 565 # line 252 "zonecfg_lex.l" 566 { return MATCH; } 567 break; 568 case 68: 569 570 # line 254 "zonecfg_lex.l" 571 { return PRIV; } 572 break; 573 case 69: 574 575 # line 255 "zonecfg_lex.l" 576 { return PRIV; } 577 break; 578 case 70: 579 580 # line 257 "zonecfg_lex.l" 581 { return LIMIT; } 582 break; 583 case 71: 584 585 # line 258 "zonecfg_lex.l" 586 { return LIMIT; } 587 break; 588 case 72: 589 590 # line 260 "zonecfg_lex.l" 591 { return ACTION; } 592 break; 593 case 73: 594 595 # line 261 "zonecfg_lex.l" 596 { return ACTION; } 597 break; 598 case 74: 599 600 # line 263 "zonecfg_lex.l" 601 { return NCPUS; } 602 break; 603 case 75: 604 605 # line 264 "zonecfg_lex.l" 606 { return NCPUS; } 607 break; 608 case 76: 609 610 # line 266 "zonecfg_lex.l" 611 { return LOCKED; } 612 break; 613 case 77: 614 615 # line 267 "zonecfg_lex.l" 616 { return LOCKED; } 617 break; 618 case 78: 619 620 # line 269 "zonecfg_lex.l" 621 { return SWAP; } 622 break; 623 case 79: 624 625 # line 270 "zonecfg_lex.l" 626 { return SWAP; } 627 break; 628 case 80: 629 630 # line 272 "zonecfg_lex.l" 631 { return IMPORTANCE; } 632 break; 633 case 81: 634 635 # line 273 "zonecfg_lex.l" 636 { return IMPORTANCE; } 637 break; 638 case 82: 639 640 # line 275 "zonecfg_lex.l" 641 { return SHARES; } 642 break; 643 case 83: 644 645 # line 276 "zonecfg_lex.l" 646 { return SHARES; } 647 break; 648 case 84: 649 650 # line 278 "zonecfg_lex.l" 651 { return MAXLWPS; } 652 break; 653 case 85: 654 655 # line 279 "zonecfg_lex.l" 656 { return MAXLWPS; } 657 break; 658 case 86: 659 660 # line 281 "zonecfg_lex.l" 661 { return MAXPROCS; } 662 break; 663 case 87: 664 665 # line 282 "zonecfg_lex.l" 666 { return MAXPROCS; } 667 break; 668 case 88: 669 670 # line 284 "zonecfg_lex.l" 671 { return MAXSHMMEM; } 672 break; 673 case 89: 674 675 # line 285 "zonecfg_lex.l" 676 { return MAXSHMMEM; } 677 break; 678 case 90: 679 680 # line 287 "zonecfg_lex.l" 681 { return MAXSHMIDS; } 682 break; 683 case 91: 684 685 # line 288 "zonecfg_lex.l" 686 { return MAXSHMIDS; } 687 break; 688 case 92: 689 690 # line 290 "zonecfg_lex.l" 691 { return MAXMSGIDS; } 692 break; 693 case 93: 694 695 # line 291 "zonecfg_lex.l" 696 { return MAXMSGIDS; } 697 break; 698 case 94: 699 700 # line 293 "zonecfg_lex.l" 701 { return MAXSEMIDS; } 702 break; 703 case 95: 704 705 # line 294 "zonecfg_lex.l" 706 { return MAXSEMIDS; } 707 break; 708 case 96: 709 710 # line 296 "zonecfg_lex.l" 711 { return SCHED; } 712 break; 713 case 97: 714 715 # line 297 "zonecfg_lex.l" 716 { return SCHED; } 717 break; 718 case 98: 719 720 # line 299 "zonecfg_lex.l" 721 { return HOSTID; } 722 break; 723 case 99: 724 725 # line 300 "zonecfg_lex.l" 726 { return HOSTID; } 727 break; 728 case 100: 729 730 # line 302 "zonecfg_lex.l" 731 { return USER; } 732 break; 733 case 101: 734 735 # line 303 "zonecfg_lex.l" 736 { return USER; } 737 break; 738 case 102: 739 740 # line 305 "zonecfg_lex.l" 741 { return AUTHS; } 742 break; 743 case 103: 744 745 # line 306 "zonecfg_lex.l" 746 { return AUTHS; } 747 break; 748 case 104: 749 750 # line 308 "zonecfg_lex.l" 751 { return FS_ALLOWED; } 752 break; 753 case 105: 754 755 # line 309 "zonecfg_lex.l" 756 { return FS_ALLOWED; } 757 break; 758 case 106: 759 760 # line 311 "zonecfg_lex.l" 761 { return EQUAL; } 762 break; 763 case 107: 764 765 # line 312 "zonecfg_lex.l" 766 { return EQUAL; } 767 break; 768 case 108: 769 770 # line 313 "zonecfg_lex.l" 771 { return EQUAL; } 772 break; 773 case 109: 774 775 # line 315 "zonecfg_lex.l" 776 { 777 BEGIN LSTATE; 778 state = LSTATE; 779 return OPEN_SQ_BRACKET; 780 } 781 break; 782 case 110: 783 784 # line 321 "zonecfg_lex.l" 785 { 786 BEGIN TSTATE; 787 state = TSTATE; 788 return CLOSE_SQ_BRACKET; 789 } 790 break; 791 case 111: 792 793 # line 327 "zonecfg_lex.l" 794 { 795 BEGIN CSTATE; 796 return OPEN_PAREN; 797 } 798 break; 799 case 112: 800 801 # line 332 "zonecfg_lex.l" 802 { 803 BEGIN CSTATE; 804 return OPEN_PAREN; 805 } 806 break; 807 case 113: 808 809 # line 337 "zonecfg_lex.l" 810 { 811 BEGIN state; 812 return CLOSE_PAREN; 813 } 814 break; 815 case 114: 816 817 # line 342 "zonecfg_lex.l" 818 { return COMMA; } 819 break; 820 case 115: 821 822 # line 343 "zonecfg_lex.l" 823 { return COMMA; } 824 break; 825 case 116: 826 827 # line 345 "zonecfg_lex.l" 828 { 829 yylval.strval = create_token(yytext); 830 return TOKEN; 831 } 832 break; 833 case 117: 834 835 # line 350 "zonecfg_lex.l" 836 { 837 yylval.strval = create_token(yytext); 838 return TOKEN; 839 } 840 break; 841 case 118: 842 843 # line 355 "zonecfg_lex.l" 844 { 845 yylval.strval = create_token(yytext); 846 return TOKEN; 847 } 848 break; 849 case 119: 850 851 # line 360 "zonecfg_lex.l" 852 { 853 yylval.strval = create_token(yytext + 1); 854 if (yylval.strval[yyleng - 2] == '"') 855 yylval.strval[yyleng - 2] = 0; 856 return TOKEN; 857 } 858 break; 859 case 120: 860 861 # line 367 "zonecfg_lex.l" 862 { 863 yylval.strval = create_token(yytext + 1); 864 if (yylval.strval[yyleng - 2] == '"') 865 yylval.strval[yyleng - 2] = 0; 866 return TOKEN; 867 } 868 break; 869 case 121: 870 871 # line 374 "zonecfg_lex.l" 872 { 873 BEGIN INITIAL; 874 return (yytext[0]); 875 } 876 break; 877 case 122: 878 879 # line 379 "zonecfg_lex.l" 880 { 881 lex_lineno++; 882 BEGIN INITIAL; 883 return (yytext[0]); 884 } 885 break; 886 case 123: 887 888 # line 385 "zonecfg_lex.l" 889 ; 890 break; 891 case 124: 892 893 # line 387 "zonecfg_lex.l" 894 { 895 return (yytext[0]); 896 } 897 break; 898 case -1: 899 break; 900 default: 901 (void)fprintf(yyout,"bad switch yylook %d",nstr); 902 } return(0); } 903 /* end of yylex */ 904 905 # line 392 "zonecfg_lex.l" 906 907 /* 908 * Assert that there are no unclaimed tokens. This function enforces the 909 * invariants mentioned at the top of this file. 910 */ 911 void 912 assert_no_unclaimed_tokens(void) 913 { 914 assert(num_unclaimed_tokens == 0); 915 assert(unclaimed_tokens == NULL); 916 assert(unclaimed_tokens_size == 0); 917 } 918 919 /* 920 * Claim the specified unclaimed TOKEN. YACC reduction rules that 921 * use TOKENs should invoke this function immediately before freeing the TOKENs 922 * or adding them to data structures that will be cleaned up when the YACC 923 * parser finishes or encounters errors. Reduction rules should only claim the 924 * TOKENs that they use. 925 * 926 * This function returns its argument but does not free its memory. 927 */ 928 char * 929 claim_token(char *token) 930 { 931 unsigned int index; 932 933 /* 934 * Find the token in the list of unclaimed tokens. 935 */ 936 assert(num_unclaimed_tokens > 0); 937 for (index = 0; index < num_unclaimed_tokens; index++) { 938 if (unclaimed_tokens[index] == token) 939 break; 940 } 941 942 /* 943 * Abort if we didn't find the token. 944 */ 945 assert(index != num_unclaimed_tokens); 946 947 /* 948 * Replace the token with the last unclaimed token. 949 */ 950 num_unclaimed_tokens--; 951 unclaimed_tokens[index] = unclaimed_tokens[num_unclaimed_tokens]; 952 953 /* 954 * Delete the list of unclaimed tokens if it's empty. 955 */ 956 if (num_unclaimed_tokens == 0) { 957 free(unclaimed_tokens); 958 unclaimed_tokens = NULL; 959 unclaimed_tokens_size = 0; 960 } 961 962 return (token); 963 } 964 965 /* 966 * Free all unclaimed TOKENs. This should only be invoked when the YACC 967 * parser encounters errors. 968 */ 969 static void 970 free_tokens(void) 971 { 972 if (unclaimed_tokens != NULL) { 973 while (num_unclaimed_tokens > 0) 974 free(unclaimed_tokens[--num_unclaimed_tokens]); 975 free(unclaimed_tokens); 976 unclaimed_tokens = NULL; 977 unclaimed_tokens_size = 0; 978 } 979 assert_no_unclaimed_tokens(); 980 } 981 982 /* 983 * Create a TOKEN from the specified string. The TOKEN is merely a duplicate 984 * of the specified string. TOKENs must be claimed by the YACC reduction rules 985 * that use them; see claim_token() above. 986 */ 987 char * 988 create_token(char *s) 989 { 990 char *result; 991 992 if ((result = strdup(s)) == NULL) { 993 yyerror("Out of memory"); 994 exit(Z_ERR); 995 } 996 997 /* 998 * Add the new TOKEN to the list of unclaimed TOKENs. The list might 999 * have to be resized. 1000 * 1001 * Reduction rules should claim TOKENs via claim_token() (see above). 1002 */ 1003 if (num_unclaimed_tokens == unclaimed_tokens_size) { 1004 char **new_unclaimed_tokens; 1005 1006 unclaimed_tokens_size += UNCLAIMED_TOKENS_BUFFER_GROWTH; 1007 new_unclaimed_tokens = (char **)realloc(unclaimed_tokens, 1008 unclaimed_tokens_size * sizeof (char *)); 1009 if (new_unclaimed_tokens == NULL) { 1010 yyerror("Out of memory"); 1011 free(result); 1012 exit(Z_ERR); 1013 } 1014 unclaimed_tokens = new_unclaimed_tokens; 1015 } 1016 unclaimed_tokens[num_unclaimed_tokens] = result; 1017 num_unclaimed_tokens++; 1018 return (result); 1019 } 1020 1021 void 1022 yyerror(char *s) 1023 { 1024 /* 1025 * Ensure that we won't leak unclaimed tokens. 1026 */ 1027 free_tokens(); 1028 1029 /* feof(yyin) is not an error; anything else is, so we set saw_error */ 1030 if (yytext[0] == '\0') { 1031 if (!feof(yyin)) { 1032 saw_error = B_TRUE; 1033 (void) fprintf(stderr, gettext("%s, token expected\n"), 1034 s); 1035 } 1036 return; 1037 } 1038 1039 saw_error = B_TRUE; 1040 if (cmd_file_mode) 1041 (void) fprintf(stderr, gettext("%s on line %d at '%s'\n"), s, 1042 lex_lineno, (yytext[0] == '\n') ? "\\n" : yytext); 1043 else 1044 (void) fprintf(stderr, gettext("%s at '%s'\n"), s, 1045 (yytext[0] == '\n') ? "\\n" : yytext); 1046 usage(B_FALSE, HELP_SUBCMDS); 1047 } 1048 int yyvstop[] = { 1049 0, 1050 1051 124, 1052 0, 1053 1054 123, 1055 124, 1056 0, 1057 1058 122, 1059 0, 1060 1061 1, 1062 124, 1063 0, 1064 1065 121, 1066 124, 1067 0, 1068 1069 10, 1070 124, 1071 0, 1072 1073 124, 1074 0, 1075 1076 124, 1077 0, 1078 1079 124, 1080 0, 1081 1082 124, 1083 0, 1084 1085 124, 1086 0, 1087 1088 124, 1089 0, 1090 1091 124, 1092 0, 1093 1094 124, 1095 0, 1096 1097 124, 1098 0, 1099 1100 116, 1101 124, 1102 0, 1103 1104 124, 1105 0, 1106 1107 111, 1108 124, 1109 0, 1110 1111 106, 1112 124, 1113 0, 1114 1115 109, 1116 124, 1117 0, 1118 1119 116, 1120 124, 1121 0, 1122 1123 116, 1124 124, 1125 0, 1126 1127 116, 1128 124, 1129 0, 1130 1131 116, 1132 124, 1133 0, 1134 1135 116, 1136 124, 1137 0, 1138 1139 116, 1140 124, 1141 0, 1142 1143 116, 1144 124, 1145 0, 1146 1147 116, 1148 124, 1149 0, 1150 1151 116, 1152 124, 1153 0, 1154 1155 116, 1156 124, 1157 0, 1158 1159 116, 1160 124, 1161 0, 1162 1163 116, 1164 124, 1165 0, 1166 1167 116, 1168 124, 1169 0, 1170 1171 116, 1172 124, 1173 0, 1174 1175 116, 1176 124, 1177 0, 1178 1179 116, 1180 124, 1181 0, 1182 1183 116, 1184 124, 1185 0, 1186 1187 116, 1188 124, 1189 0, 1190 1191 117, 1192 124, 1193 0, 1194 1195 124, 1196 0, 1197 1198 112, 1199 124, 1200 0, 1201 1202 114, 1203 124, 1204 0, 1205 1206 107, 1207 124, 1208 0, 1209 1210 110, 1211 124, 1212 0, 1213 1214 118, 1215 124, 1216 0, 1217 1218 113, 1219 124, 1220 0, 1221 1222 115, 1223 124, 1224 0, 1225 1226 108, 1227 124, 1228 0, 1229 1230 118, 1231 124, 1232 0, 1233 1234 118, 1235 124, 1236 0, 1237 1238 118, 1239 124, 1240 0, 1241 1242 118, 1243 124, 1244 0, 1245 1246 118, 1247 124, 1248 0, 1249 1250 118, 1251 124, 1252 0, 1253 1254 118, 1255 124, 1256 0, 1257 1258 118, 1259 124, 1260 0, 1261 1262 118, 1263 124, 1264 0, 1265 1266 118, 1267 124, 1268 0, 1269 1270 118, 1271 124, 1272 0, 1273 1274 118, 1275 124, 1276 0, 1277 1278 118, 1279 124, 1280 0, 1281 1282 118, 1283 124, 1284 0, 1285 1286 118, 1287 124, 1288 0, 1289 1290 118, 1291 124, 1292 0, 1293 1294 118, 1295 124, 1296 0, 1297 1298 118, 1299 124, 1300 0, 1301 1302 1, 1303 0, 1304 1305 116, 1306 0, 1307 1308 119, 1309 0, 1310 1311 116, 1312 0, 1313 1314 116, 1315 0, 1316 1317 116, 1318 0, 1319 1320 116, 1321 0, 1322 1323 116, 1324 0, 1325 1326 116, 1327 0, 1328 1329 116, 1330 0, 1331 1332 116, 1333 0, 1334 1335 116, 1336 0, 1337 1338 116, 1339 0, 1340 1341 116, 1342 0, 1343 1344 116, 1345 0, 1346 1347 19, 1348 116, 1349 0, 1350 1351 116, 1352 0, 1353 1354 116, 1355 0, 1356 1357 116, 1358 0, 1359 1360 116, 1361 0, 1362 1363 116, 1364 0, 1365 1366 116, 1367 0, 1368 1369 116, 1370 0, 1371 1372 116, 1373 0, 1374 1375 116, 1376 0, 1377 1378 116, 1379 0, 1380 1381 116, 1382 0, 1383 1384 116, 1385 0, 1386 1387 116, 1388 0, 1389 1390 116, 1391 0, 1392 1393 116, 1394 0, 1395 1396 116, 1397 0, 1398 1399 116, 1400 0, 1401 1402 116, 1403 0, 1404 1405 116, 1406 0, 1407 1408 116, 1409 0, 1410 1411 116, 1412 0, 1413 1414 116, 1415 0, 1416 1417 117, 1418 0, 1419 1420 120, 1421 0, 1422 1423 118, 1424 0, 1425 1426 118, 1427 0, 1428 1429 118, 1430 0, 1431 1432 118, 1433 0, 1434 1435 118, 1436 0, 1437 1438 118, 1439 0, 1440 1441 118, 1442 0, 1443 1444 118, 1445 0, 1446 1447 118, 1448 0, 1449 1450 118, 1451 0, 1452 1453 118, 1454 0, 1455 1456 118, 1457 0, 1458 1459 118, 1460 0, 1461 1462 118, 1463 0, 1464 1465 118, 1466 0, 1467 1468 118, 1469 0, 1470 1471 118, 1472 0, 1473 1474 118, 1475 0, 1476 1477 118, 1478 0, 1479 1480 118, 1481 0, 1482 1483 118, 1484 0, 1485 1486 118, 1487 0, 1488 1489 118, 1490 0, 1491 1492 118, 1493 0, 1494 1495 118, 1496 0, 1497 1498 118, 1499 0, 1500 1501 118, 1502 0, 1503 1504 118, 1505 0, 1506 1507 118, 1508 0, 1509 1510 118, 1511 0, 1512 1513 118, 1514 0, 1515 1516 2, 1517 0, 1518 1519 7, 1520 0, 1521 1522 15, 1523 0, 1524 1525 116, 1526 0, 1527 1528 116, 1529 0, 1530 1531 116, 1532 0, 1533 1534 116, 1535 0, 1536 1537 116, 1538 0, 1539 1540 116, 1541 0, 1542 1543 116, 1544 0, 1545 1546 116, 1547 0, 1548 1549 116, 1550 0, 1551 1552 116, 1553 0, 1554 1555 116, 1556 0, 1557 1558 116, 1559 0, 1560 1561 116, 1562 0, 1563 1564 116, 1565 0, 1566 1567 58, 1568 116, 1569 0, 1570 1571 116, 1572 0, 1573 1574 116, 1575 0, 1576 1577 116, 1578 0, 1579 1580 116, 1581 0, 1582 1583 116, 1584 0, 1585 1586 116, 1587 0, 1588 1589 116, 1590 0, 1591 1592 116, 1593 0, 1594 1595 116, 1596 0, 1597 1598 116, 1599 0, 1600 1601 18, 1602 116, 1603 0, 1604 1605 116, 1606 0, 1607 1608 116, 1609 0, 1610 1611 116, 1612 0, 1613 1614 116, 1615 0, 1616 1617 62, 1618 116, 1619 0, 1620 1621 116, 1622 0, 1623 1624 116, 1625 0, 1626 1627 116, 1628 0, 1629 1630 116, 1631 0, 1632 1633 116, 1634 0, 1635 1636 116, 1637 0, 1638 1639 116, 1640 0, 1641 1642 116, 1643 0, 1644 1645 118, 1646 0, 1647 1648 118, 1649 0, 1650 1651 118, 1652 0, 1653 1654 118, 1655 0, 1656 1657 118, 1658 0, 1659 1660 118, 1661 0, 1662 1663 118, 1664 0, 1665 1666 118, 1667 0, 1668 1669 59, 1670 118, 1671 0, 1672 1673 118, 1674 0, 1675 1676 118, 1677 0, 1678 1679 118, 1680 0, 1681 1682 118, 1683 0, 1684 1685 118, 1686 0, 1687 1688 118, 1689 0, 1690 1691 118, 1692 0, 1693 1694 118, 1695 0, 1696 1697 118, 1698 0, 1699 1700 118, 1701 0, 1702 1703 118, 1704 0, 1705 1706 118, 1707 0, 1708 1709 118, 1710 0, 1711 1712 118, 1713 0, 1714 1715 63, 1716 118, 1717 0, 1718 1719 118, 1720 0, 1721 1722 118, 1723 0, 1724 1725 118, 1726 0, 1727 1728 118, 1729 0, 1730 1731 118, 1732 0, 1733 1734 118, 1735 0, 1736 1737 118, 1738 0, 1739 1740 8, 1741 0, 1742 1743 10, 1744 0, 1745 1746 11, 1747 0, 1748 1749 116, 1750 0, 1751 1752 116, 1753 0, 1754 1755 116, 1756 0, 1757 1758 116, 1759 0, 1760 1761 22, 1762 116, 1763 0, 1764 1765 116, 1766 0, 1767 1768 116, 1769 0, 1770 1771 116, 1772 0, 1773 1774 116, 1775 0, 1776 1777 116, 1778 0, 1779 1780 116, 1781 0, 1782 1783 116, 1784 0, 1785 1786 116, 1787 0, 1788 1789 116, 1790 0, 1791 1792 116, 1793 0, 1794 1795 116, 1796 0, 1797 1798 116, 1799 0, 1800 1801 116, 1802 0, 1803 1804 116, 1805 0, 1806 1807 116, 1808 0, 1809 1810 116, 1811 0, 1812 1813 116, 1814 0, 1815 1816 116, 1817 0, 1818 1819 64, 1820 116, 1821 0, 1822 1823 116, 1824 0, 1825 1826 116, 1827 0, 1828 1829 116, 1830 0, 1831 1832 38, 1833 116, 1834 0, 1835 1836 68, 1837 116, 1838 0, 1839 1840 21, 1841 116, 1842 0, 1843 1844 116, 1845 0, 1846 1847 116, 1848 0, 1849 1850 78, 1851 116, 1852 0, 1853 1854 44, 1855 116, 1856 0, 1857 1858 100, 1859 116, 1860 0, 1861 1862 116, 1863 0, 1864 1865 116, 1866 0, 1867 1868 118, 1869 0, 1870 1871 118, 1872 0, 1873 1874 118, 1875 0, 1876 1877 118, 1878 0, 1879 1880 118, 1881 0, 1882 1883 118, 1884 0, 1885 1886 118, 1887 0, 1888 1889 118, 1890 0, 1891 1892 118, 1893 0, 1894 1895 118, 1896 0, 1897 1898 118, 1899 0, 1900 1901 118, 1902 0, 1903 1904 118, 1905 0, 1906 1907 118, 1908 0, 1909 1910 118, 1911 0, 1912 1913 118, 1914 0, 1915 1916 118, 1917 0, 1918 1919 65, 1920 118, 1921 0, 1922 1923 118, 1924 0, 1925 1926 118, 1927 0, 1928 1929 118, 1930 0, 1931 1932 39, 1933 118, 1934 0, 1935 1936 69, 1937 118, 1938 0, 1939 1940 118, 1941 0, 1942 1943 118, 1944 0, 1945 1946 79, 1947 118, 1948 0, 1949 1950 45, 1951 118, 1952 0, 1953 1954 101, 1955 118, 1956 0, 1957 1958 118, 1959 0, 1960 1961 118, 1962 0, 1963 1964 16, 1965 0, 1966 1967 116, 1968 0, 1969 1970 116, 1971 0, 1972 1973 23, 1974 116, 1975 0, 1976 1977 116, 1978 0, 1979 1980 102, 1981 116, 1982 0, 1983 1984 116, 1985 0, 1986 1987 116, 1988 0, 1989 1990 32, 1991 116, 1992 0, 1993 1994 116, 1995 0, 1996 1997 116, 1998 0, 1999 2000 116, 2001 0, 2002 2003 116, 2004 0, 2005 2006 116, 2007 0, 2008 2009 116, 2010 0, 2011 2012 116, 2013 0, 2014 2015 116, 2016 0, 2017 2018 116, 2019 0, 2020 2021 116, 2022 0, 2023 2024 70, 2025 116, 2026 0, 2027 2028 116, 2029 0, 2030 2031 66, 2032 116, 2033 0, 2034 2035 116, 2036 0, 2037 2038 116, 2039 0, 2040 2041 116, 2042 0, 2043 2044 116, 2045 0, 2046 2047 74, 2048 116, 2049 0, 2050 2051 116, 2052 0, 2053 2054 116, 2055 0, 2056 2057 116, 2058 0, 2059 2060 116, 2061 0, 2062 2063 46, 2064 116, 2065 0, 2066 2067 116, 2068 0, 2069 2070 116, 2071 0, 2072 2073 118, 2074 0, 2075 2076 118, 2077 0, 2078 2079 118, 2080 0, 2081 2082 103, 2083 118, 2084 0, 2085 2086 118, 2087 0, 2088 2089 118, 2090 0, 2091 2092 33, 2093 118, 2094 0, 2095 2096 118, 2097 0, 2098 2099 118, 2100 0, 2101 2102 118, 2103 0, 2104 2105 118, 2106 0, 2107 2108 118, 2109 0, 2110 2111 118, 2112 0, 2113 2114 71, 2115 118, 2116 0, 2117 2118 118, 2119 0, 2120 2121 67, 2122 118, 2123 0, 2124 2125 118, 2126 0, 2127 2128 118, 2129 0, 2130 2131 118, 2132 0, 2133 2134 118, 2135 0, 2136 2137 75, 2138 118, 2139 0, 2140 2141 118, 2142 0, 2143 2144 118, 2145 0, 2146 2147 118, 2148 0, 2149 2150 118, 2151 0, 2152 2153 47, 2154 118, 2155 0, 2156 2157 118, 2158 0, 2159 2160 118, 2161 0, 2162 2163 3, 2164 0, 2165 2166 4, 2167 0, 2168 2169 5, 2170 0, 2171 2172 6, 2173 0, 2174 2175 9, 2176 0, 2177 2178 12, 2179 0, 2180 2181 13, 2182 0, 2183 2184 14, 2185 0, 2186 2187 17, 2188 0, 2189 2190 72, 2191 116, 2192 0, 2193 2194 116, 2195 0, 2196 2197 116, 2198 0, 2199 2200 116, 2201 0, 2202 2203 116, 2204 0, 2205 2206 116, 2207 0, 2208 2209 116, 2210 0, 2211 2212 116, 2213 0, 2214 2215 116, 2216 0, 2217 2218 116, 2219 0, 2220 2221 20, 2222 116, 2223 0, 2224 2225 116, 2226 0, 2227 2228 98, 2229 116, 2230 0, 2231 2232 116, 2233 0, 2234 2235 116, 2236 0, 2237 2238 116, 2239 0, 2240 2241 76, 2242 116, 2243 0, 2244 2245 116, 2246 0, 2247 2248 116, 2249 0, 2250 2251 116, 2252 0, 2253 2254 116, 2255 0, 2256 2257 116, 2258 0, 2259 2260 116, 2261 0, 2262 2263 116, 2264 0, 2265 2266 116, 2267 0, 2268 2269 116, 2270 0, 2271 2272 116, 2273 0, 2274 2275 116, 2276 0, 2277 2278 73, 2279 118, 2280 0, 2281 2282 118, 2283 0, 2284 2285 118, 2286 0, 2287 2288 118, 2289 0, 2290 2291 118, 2292 0, 2293 2294 118, 2295 0, 2296 2297 118, 2298 0, 2299 2300 118, 2301 0, 2302 2303 99, 2304 118, 2305 0, 2306 2307 118, 2308 0, 2309 2310 118, 2311 0, 2312 2313 118, 2314 0, 2315 2316 77, 2317 118, 2318 0, 2319 2320 118, 2321 0, 2322 2323 118, 2324 0, 2325 2326 118, 2327 0, 2328 2329 118, 2330 0, 2331 2332 118, 2333 0, 2334 2335 118, 2336 0, 2337 2338 118, 2339 0, 2340 2341 118, 2342 0, 2343 2344 118, 2345 0, 2346 2347 118, 2348 0, 2349 2350 118, 2351 0, 2352 2353 52, 2354 116, 2355 0, 2356 2357 116, 2358 0, 2359 2360 116, 2361 0, 2362 2363 116, 2364 0, 2365 2366 116, 2367 0, 2368 2369 116, 2370 0, 2371 2372 26, 2373 116, 2374 0, 2375 2376 116, 2377 0, 2378 2379 116, 2380 0, 2381 2382 116, 2383 0, 2384 2385 116, 2386 0, 2387 2388 36, 2389 116, 2390 0, 2391 2392 116, 2393 0, 2394 2395 116, 2396 0, 2397 2398 116, 2399 0, 2400 2401 116, 2402 0, 2403 2404 116, 2405 0, 2406 2407 116, 2408 0, 2409 2410 48, 2411 116, 2412 0, 2413 2414 116, 2415 0, 2416 2417 116, 2418 0, 2419 2420 60, 2421 116, 2422 0, 2423 2424 116, 2425 0, 2426 2427 116, 2428 0, 2429 2430 53, 2431 118, 2432 0, 2433 2434 118, 2435 0, 2436 2437 118, 2438 0, 2439 2440 118, 2441 0, 2442 2443 118, 2444 0, 2445 2446 118, 2447 0, 2448 2449 118, 2450 0, 2451 2452 118, 2453 0, 2454 2455 37, 2456 118, 2457 0, 2458 2459 118, 2460 0, 2461 2462 118, 2463 0, 2464 2465 118, 2466 0, 2467 2468 118, 2469 0, 2470 2471 118, 2472 0, 2473 2474 118, 2475 0, 2476 2477 49, 2478 118, 2479 0, 2480 2481 118, 2482 0, 2483 2484 118, 2485 0, 2486 2487 61, 2488 118, 2489 0, 2490 2491 118, 2492 0, 2493 2494 118, 2495 0, 2496 2497 116, 2498 0, 2499 2500 34, 2501 116, 2502 0, 2503 2504 42, 2505 116, 2506 0, 2507 2508 116, 2509 0, 2510 2511 116, 2512 0, 2513 2514 116, 2515 0, 2516 2517 116, 2518 0, 2519 2520 116, 2521 0, 2522 2523 116, 2524 0, 2525 2526 116, 2527 0, 2528 2529 116, 2530 0, 2531 2532 84, 2533 116, 2534 0, 2535 2536 116, 2537 0, 2538 2539 116, 2540 0, 2541 2542 116, 2543 0, 2544 2545 116, 2546 0, 2547 2548 54, 2549 116, 2550 0, 2551 2552 116, 2553 0, 2554 2555 24, 2556 116, 2557 0, 2558 2559 30, 2560 116, 2561 0, 2562 2563 118, 2564 0, 2565 2566 35, 2567 118, 2568 0, 2569 2570 43, 2571 118, 2572 0, 2573 2574 118, 2575 0, 2576 2577 118, 2578 0, 2579 2580 118, 2581 0, 2582 2583 118, 2584 0, 2585 2586 118, 2587 0, 2588 2589 85, 2590 118, 2591 0, 2592 2593 118, 2594 0, 2595 2596 118, 2597 0, 2598 2599 118, 2600 0, 2601 2602 118, 2603 0, 2604 2605 55, 2606 118, 2607 0, 2608 2609 118, 2610 0, 2611 2612 25, 2613 118, 2614 0, 2615 2616 31, 2617 118, 2618 0, 2619 2620 116, 2621 0, 2622 2623 116, 2624 0, 2625 2626 116, 2627 0, 2628 2629 116, 2630 0, 2631 2632 116, 2633 0, 2634 2635 56, 2636 116, 2637 0, 2638 2639 116, 2640 0, 2641 2642 116, 2643 0, 2644 2645 40, 2646 116, 2647 0, 2648 2649 116, 2650 0, 2651 2652 116, 2653 0, 2654 2655 116, 2656 0, 2657 2658 116, 2659 0, 2660 2661 116, 2662 0, 2663 2664 116, 2665 0, 2666 2667 118, 2668 0, 2669 2670 118, 2671 0, 2672 2673 57, 2674 118, 2675 0, 2676 2677 118, 2678 0, 2679 2680 118, 2681 0, 2682 2683 41, 2684 118, 2685 0, 2686 2687 118, 2688 0, 2689 2690 118, 2691 0, 2692 2693 118, 2694 0, 2695 2696 118, 2697 0, 2698 2699 118, 2700 0, 2701 2702 118, 2703 0, 2704 2705 116, 2706 0, 2707 2708 28, 2709 116, 2710 0, 2711 2712 116, 2713 0, 2714 2715 82, 2716 116, 2717 0, 2718 2719 116, 2720 0, 2721 2722 104, 2723 116, 2724 0, 2725 2726 80, 2727 116, 2728 0, 2729 2730 116, 2731 0, 2732 2733 116, 2734 0, 2735 2736 116, 2737 0, 2738 2739 116, 2740 0, 2741 2742 116, 2743 0, 2744 2745 116, 2746 0, 2747 2748 118, 2749 0, 2750 2751 83, 2752 118, 2753 0, 2754 2755 105, 2756 118, 2757 0, 2758 2759 81, 2760 118, 2761 0, 2762 2763 118, 2764 0, 2765 2766 118, 2767 0, 2768 2769 118, 2770 0, 2771 2772 118, 2773 0, 2774 2775 118, 2776 0, 2777 2778 118, 2779 0, 2780 2781 116, 2782 0, 2783 2784 116, 2785 0, 2786 2787 116, 2788 0, 2789 2790 92, 2791 116, 2792 0, 2793 2794 116, 2795 0, 2796 2797 94, 2798 116, 2799 0, 2800 2801 90, 2802 116, 2803 0, 2804 2805 116, 2806 0, 2807 2808 116, 2809 0, 2810 2811 118, 2812 0, 2813 2814 93, 2815 118, 2816 0, 2817 2818 118, 2819 0, 2820 2821 95, 2822 118, 2823 0, 2824 2825 91, 2826 118, 2827 0, 2828 2829 118, 2830 0, 2831 2832 118, 2833 0, 2834 2835 116, 2836 0, 2837 2838 116, 2839 0, 2840 2841 116, 2842 0, 2843 2844 116, 2845 0, 2846 2847 116, 2848 0, 2849 2850 116, 2851 0, 2852 2853 118, 2854 0, 2855 2856 118, 2857 0, 2858 2859 118, 2860 0, 2861 2862 118, 2863 0, 2864 2865 116, 2866 0, 2867 2868 29, 2869 116, 2870 0, 2871 2872 27, 2873 116, 2874 0, 2875 2876 86, 2877 116, 2878 0, 2879 2880 116, 2881 0, 2882 2883 116, 2884 0, 2885 2886 118, 2887 0, 2888 2889 87, 2890 118, 2891 0, 2892 2893 118, 2894 0, 2895 2896 118, 2897 0, 2898 2899 116, 2900 0, 2901 2902 88, 2903 116, 2904 0, 2905 2906 116, 2907 0, 2908 2909 118, 2910 0, 2911 2912 89, 2913 118, 2914 0, 2915 2916 118, 2917 0, 2918 2919 50, 2920 116, 2921 0, 2922 2923 116, 2924 0, 2925 2926 51, 2927 118, 2928 0, 2929 2930 118, 2931 0, 2932 2933 96, 2934 116, 2935 0, 2936 2937 97, 2938 118, 2939 0, 2940 0}; 2941 # define YYTYPE int 2942 struct yywork { YYTYPE verify, advance; } yycrank[] = { 2943 0,0, 0,0, 1,9, 0,0, 2944 0,0, 0,0, 0,0, 12,75, 2945 0,0, 0,0, 1,10, 1,11, 2946 75,0, 0,0, 0,0, 12,75, 2947 12,0, 0,0, 0,0, 5,47, 2948 0,0, 0,0, 0,0, 0,0, 2949 0,0, 0,0, 0,0, 5,10, 2950 5,11, 0,0, 0,0, 0,0, 2951 0,0, 0,0, 0,0, 1,9, 2952 1,12, 0,0, 0,0, 0,0, 2953 12,75, 1,9, 0,0, 6,9, 2954 0,0, 1,9, 12,75, 0,0, 2955 2,12, 0,0, 12,75, 0,0, 2956 5,48, 0,0, 0,0, 0,0, 2957 0,0, 0,0, 5,49, 5,9, 2958 1,13, 6,13, 5,50, 6,51, 2959 1,14, 0,0, 0,0, 0,0, 2960 0,0, 0,0, 0,0, 0,0, 2961 2,13, 0,0, 0,0, 0,0, 2962 2,14, 5,13, 0,0, 5,51, 2963 0,0, 0,0, 0,0, 0,0, 2964 0,0, 0,0, 0,0, 0,0, 2965 0,0, 0,0, 0,0, 0,0, 2966 1,9, 0,0, 0,0, 6,52, 2967 0,0, 12,75, 1,15, 3,24, 2968 1,16, 1,17, 1,18, 15,76, 2969 4,9, 1,19, 1,20, 3,10, 2970 3,11, 5,9, 2,15, 5,52, 2971 2,16, 2,17, 2,18, 1,21, 2972 1,22, 2,19, 2,20, 1,23, 2973 17,81, 19,84, 4,13, 16,77, 2974 4,27, 18,82, 20,85, 2,21, 2975 2,22, 21,86, 22,87, 2,23, 2976 3,25, 23,88, 16,78, 18,83, 2977 76,161, 16,79, 3,26, 3,9, 2978 16,80, 77,162, 3,24, 25,90, 2979 78,163, 79,164, 80,165, 81,166, 2980 82,167, 84,170, 85,171, 25,90, 2981 25,91, 88,176, 162,247, 86,172, 2982 4,9, 3,13, 87,174, 3,27, 2983 4,29, 4,30, 4,31, 4,32, 2984 86,173, 4,33, 87,175, 4,34, 2985 4,35, 163,248, 164,249, 4,36, 2986 4,37, 4,38, 4,39, 4,40, 2987 25,91, 4,41, 4,42, 4,43, 2988 4,44, 4,45, 25,90, 83,168, 2989 7,53, 4,46, 25,90, 165,250, 2990 166,251, 3,28, 83,169, 3,9, 2991 7,10, 7,11, 168,252, 3,29, 2992 3,30, 3,31, 3,32, 169,253, 2993 3,33, 170,254, 3,34, 3,35, 2994 171,255, 172,256, 3,36, 3,37, 2995 3,38, 3,39, 3,40, 173,257, 2996 3,41, 3,42, 3,43, 3,44, 2997 3,45, 7,9, 174,258, 176,259, 2998 3,46, 247,327, 48,128, 7,9, 2999 7,54, 248,328, 249,329, 7,55, 3000 250,330, 251,331, 48,128, 48,129, 3001 253,332, 25,90, 256,333, 257,334, 3002 258,335, 259,336, 327,398, 329,399, 3003 330,400, 331,401, 7,13, 332,402, 3004 7,56, 333,403, 334,404, 335,405, 3005 336,406, 0,0, 8,54, 0,0, 3006 0,0, 0,0, 0,0, 48,129, 3007 0,0, 0,0, 0,0, 0,0, 3008 0,0, 48,128, 0,0, 0,0, 3009 0,0, 48,128, 0,0, 0,0, 3010 8,13, 0,0, 8,56, 0,0, 3011 0,0, 0,0, 7,53, 0,0, 3012 0,0, 0,0, 0,0, 0,0, 3013 7,57, 7,58, 7,59, 7,60, 3014 0,0, 7,61, 0,0, 7,62, 3015 7,63, 0,0, 0,0, 7,64, 3016 7,65, 7,66, 7,67, 7,68, 3017 0,0, 7,69, 7,70, 7,71, 3018 7,72, 7,73, 0,0, 0,0, 3019 0,0, 7,74, 8,57, 8,58, 3020 8,59, 8,60, 0,0, 8,61, 3021 48,128, 8,62, 8,63, 0,0, 3022 0,0, 8,64, 8,65, 8,66, 3023 8,67, 8,68, 0,0, 8,69, 3024 8,70, 8,71, 8,72, 8,73, 3025 24,89, 0,0, 0,0, 8,74, 3026 0,0, 29,89, 0,0, 0,0, 3027 24,0, 24,0, 0,0, 0,0, 3028 0,0, 29,0, 29,0, 0,0, 3029 30,89, 0,0, 0,0, 0,0, 3030 0,0, 0,0, 0,0, 0,0, 3031 30,0, 30,0, 0,0, 0,0, 3032 0,0, 0,0, 0,0, 24,0, 3033 0,0, 24,0, 0,0, 0,0, 3034 29,0, 0,0, 29,0, 24,0, 3035 24,0, 0,0, 31,89, 24,89, 3036 29,0, 29,0, 0,0, 30,0, 3037 29,89, 30,0, 31,0, 31,0, 3038 0,0, 0,0, 0,0, 30,0, 3039 30,0, 0,0, 24,0, 30,89, 3040 24,0, 0,0, 0,0, 29,0, 3041 0,0, 29,0, 0,0, 0,0, 3042 0,0, 0,0, 0,0, 0,0, 3043 0,0, 31,0, 30,0, 31,0, 3044 30,0, 0,0, 0,0, 0,0, 3045 0,0, 31,0, 31,0, 0,0, 3046 0,0, 31,89, 0,0, 0,0, 3047 0,0, 0,0, 24,0, 0,0, 3048 24,0, 0,0, 0,0, 29,0, 3049 0,0, 29,0, 0,0, 0,0, 3050 31,0, 0,0, 31,0, 29,92, 3051 29,93, 0,0, 30,0, 0,0, 3052 30,0, 32,89, 0,0, 0,0, 3053 29,94, 0,0, 33,0, 33,0, 3054 0,0, 32,0, 32,0, 0,0, 3055 29,95, 29,96, 0,0, 0,0, 3056 0,0, 0,0, 30,97, 0,0, 3057 0,0, 30,98, 0,0, 0,0, 3058 31,0, 0,0, 31,0, 0,0, 3059 0,0, 33,0, 31,99, 33,0, 3060 32,0, 0,0, 32,0, 0,0, 3061 0,0, 33,0, 33,0, 0,0, 3062 32,0, 32,0, 34,0, 34,0, 3063 32,89, 31,100, 35,89, 0,0, 3064 0,0, 0,0, 0,0, 0,0, 3065 0,0, 0,0, 35,0, 35,0, 3066 33,0, 0,0, 33,0, 32,0, 3067 0,0, 32,0, 0,0, 0,0, 3068 0,0, 34,0, 0,0, 34,0, 3069 0,0, 0,0, 0,0, 0,0, 3070 0,0, 34,0, 34,0, 0,0, 3071 0,0, 35,0, 0,0, 35,0, 3072 0,0, 0,0, 0,0, 0,0, 3073 0,0, 35,0, 35,0, 0,0, 3074 33,0, 35,89, 33,0, 32,0, 3075 34,0, 32,0, 34,0, 0,0, 3076 0,0, 32,101, 37,0, 37,0, 3077 36,89, 32,102, 0,0, 0,0, 3078 35,0, 32,103, 35,0, 0,0, 3079 36,0, 36,0, 0,0, 0,0, 3080 33,104, 0,0, 0,0, 0,0, 3081 0,0, 0,0, 0,0, 0,0, 3082 0,0, 37,0, 0,0, 37,0, 3083 34,0, 0,0, 34,0, 0,0, 3084 0,0, 37,0, 37,0, 36,0, 3085 0,0, 36,0, 0,0, 0,0, 3086 35,0, 0,0, 35,0, 36,0, 3087 36,0, 0,0, 0,0, 36,89, 3088 34,105, 0,0, 0,0, 0,0, 3089 37,0, 0,0, 37,0, 0,0, 3090 0,0, 0,0, 35,106, 0,0, 3091 38,89, 35,107, 36,0, 0,0, 3092 36,0, 0,0, 0,0, 0,0, 3093 38,0, 38,0, 0,0, 0,0, 3094 0,0, 0,0, 0,0, 0,0, 3095 0,0, 0,0, 0,0, 39,0, 3096 39,0, 0,0, 0,0, 0,0, 3097 37,0, 0,0, 37,0, 0,0, 3098 0,0, 0,0, 37,110, 38,0, 3099 0,0, 38,0, 36,0, 0,0, 3100 36,0, 0,0, 0,0, 38,0, 3101 38,0, 0,0, 39,0, 38,89, 3102 39,0, 40,0, 40,0, 0,0, 3103 36,108, 0,0, 39,0, 39,0, 3104 0,0, 0,0, 36,109, 0,0, 3105 0,0, 0,0, 38,0, 0,0, 3106 38,0, 0,0, 0,0, 0,0, 3107 0,0, 0,0, 0,0, 0,0, 3108 40,0, 39,0, 40,0, 39,0, 3109 0,0, 41,89, 0,0, 0,0, 3110 40,0, 40,0, 42,89, 0,0, 3111 0,0, 41,0, 41,0, 0,0, 3112 0,0, 0,0, 42,0, 42,0, 3113 0,0, 0,0, 38,0, 0,0, 3114 38,0, 0,0, 0,0, 40,0, 3115 38,111, 40,0, 38,112, 0,0, 3116 38,113, 39,0, 0,0, 39,0, 3117 41,0, 0,0, 41,0, 0,0, 3118 0,0, 42,0, 0,0, 42,0, 3119 41,0, 41,0, 0,0, 0,0, 3120 41,89, 42,0, 42,0, 0,0, 3121 0,0, 42,89, 39,114, 43,0, 3122 43,0, 0,0, 0,0, 40,0, 3123 0,0, 40,0, 0,0, 41,0, 3124 0,0, 41,0, 0,0, 0,0, 3125 42,0, 0,0, 42,0, 0,0, 3126 40,115, 0,0, 0,0, 0,0, 3127 0,0, 0,0, 43,0, 40,116, 3128 43,0, 0,0, 40,117, 0,0, 3129 0,0, 0,0, 43,0, 43,0, 3130 44,0, 44,0, 0,0, 45,0, 3131 45,0, 0,0, 0,0, 41,0, 3132 0,0, 41,0, 0,0, 0,0, 3133 42,0, 41,118, 42,0, 41,119, 3134 0,0, 43,0, 0,0, 43,0, 3135 42,120, 0,0, 0,0, 44,0, 3136 0,0, 44,0, 45,0, 0,0, 3137 45,0, 0,0, 0,0, 44,0, 3138 44,0, 42,121, 45,0, 45,0, 3139 46,0, 46,0, 47,127, 0,0, 3140 42,122, 0,0, 0,0, 0,0, 3141 0,0, 0,0, 47,0, 47,0, 3142 0,0, 43,0, 44,0, 43,0, 3143 44,0, 45,0, 0,0, 45,0, 3144 0,0, 0,0, 0,0, 46,0, 3145 0,0, 46,0, 0,0, 0,0, 3146 53,130, 0,0, 0,0, 46,0, 3147 46,0, 47,0, 0,0, 47,0, 3148 53,0, 53,0, 0,0, 0,0, 3149 0,0, 47,0, 47,0, 43,123, 3150 0,0, 47,0, 44,0, 0,0, 3151 44,0, 45,0, 46,0, 45,0, 3152 46,0, 0,0, 0,0, 45,125, 3153 57,130, 0,0, 0,0, 53,0, 3154 47,0, 53,0, 47,0, 0,0, 3155 57,0, 57,0, 0,0, 53,0, 3156 53,0, 0,0, 44,124, 53,0, 3157 58,130, 0,0, 0,0, 59,0, 3158 59,0, 0,0, 0,0, 0,0, 3159 58,0, 58,0, 46,0, 0,0, 3160 46,0, 0,0, 53,0, 57,0, 3161 53,0, 57,0, 0,0, 0,0, 3162 47,0, 0,0, 47,0, 57,0, 3163 57,0, 0,0, 59,0, 57,0, 3164 59,0, 0,0, 46,126, 58,0, 3165 0,0, 58,0, 59,0, 59,0, 3166 61,0, 61,0, 59,0, 58,0, 3167 58,0, 0,0, 57,0, 58,0, 3168 57,0, 0,0, 53,130, 0,0, 3169 0,0, 0,0, 0,0, 0,0, 3170 0,0, 59,0, 60,130, 59,0, 3171 0,0, 0,0, 58,0, 61,0, 3172 58,0, 61,0, 60,0, 60,0, 3173 0,0, 0,0, 0,0, 61,0, 3174 61,0, 0,0, 0,0, 61,0, 3175 0,0, 0,0, 57,130, 0,0, 3176 62,0, 62,0, 0,0, 0,0, 3177 0,0, 0,0, 57,131, 57,132, 3178 0,0, 60,0, 61,0, 60,0, 3179 61,0, 0,0, 58,130, 57,133, 3180 0,0, 60,0, 60,0, 0,0, 3181 0,0, 60,0, 0,0, 62,0, 3182 57,134, 62,0, 0,0, 0,0, 3183 0,0, 0,0, 59,137, 62,0, 3184 62,0, 0,0, 58,135, 62,0, 3185 60,0, 58,136, 60,0, 0,0, 3186 63,130, 0,0, 0,0, 0,0, 3187 0,0, 0,0, 0,0, 0,0, 3188 63,0, 63,0, 62,0, 0,0, 3189 62,0, 64,130, 0,0, 0,0, 3190 0,0, 0,0, 0,0, 0,0, 3191 0,0, 64,0, 64,0, 0,0, 3192 0,0, 0,0, 61,140, 0,0, 3193 60,130, 0,0, 0,0, 63,0, 3194 0,0, 63,0, 65,0, 65,0, 3195 0,0, 0,0, 60,138, 63,0, 3196 63,0, 0,0, 60,139, 63,0, 3197 64,0, 0,0, 64,0, 67,0, 3198 67,0, 0,0, 0,0, 0,0, 3199 64,0, 64,0, 0,0, 0,0, 3200 64,0, 65,0, 63,0, 65,0, 3201 63,0, 0,0, 62,141, 0,0, 3202 0,0, 65,0, 65,0, 66,130, 3203 0,0, 65,0, 67,0, 64,0, 3204 67,0, 64,0, 0,0, 66,0, 3205 66,0, 0,0, 67,0, 67,0, 3206 0,0, 0,0, 67,0, 0,0, 3207 65,0, 0,0, 65,0, 0,0, 3208 0,0, 0,0, 63,130, 0,0, 3209 0,0, 0,0, 0,0, 0,0, 3210 0,0, 67,0, 66,0, 67,0, 3211 66,0, 68,0, 68,0, 64,130, 3212 0,0, 0,0, 66,0, 66,0, 3213 63,142, 0,0, 66,0, 63,143, 3214 69,0, 69,0, 0,0, 0,0, 3215 0,0, 64,144, 0,0, 0,0, 3216 0,0, 0,0, 65,146, 64,145, 3217 68,0, 66,0, 68,0, 66,0, 3218 0,0, 0,0, 0,0, 0,0, 3219 68,0, 68,0, 0,0, 69,0, 3220 68,0, 69,0, 0,0, 0,0, 3221 0,0, 0,0, 0,0, 69,0, 3222 69,0, 0,0, 0,0, 69,0, 3223 0,0, 0,0, 67,149, 68,0, 3224 70,130, 68,0, 0,0, 71,0, 3225 71,0, 66,130, 0,0, 0,0, 3226 70,0, 70,0, 69,0, 66,147, 3227 69,0, 66,148, 0,0, 0,0, 3228 0,0, 0,0, 0,0, 0,0, 3229 0,0, 0,0, 0,0, 0,0, 3230 0,0, 0,0, 71,0, 0,0, 3231 71,0, 0,0, 0,0, 70,0, 3232 0,0, 70,0, 71,0, 71,0, 3233 72,0, 72,0, 71,0, 70,0, 3234 70,0, 73,0, 73,0, 70,0, 3235 68,150, 0,0, 0,0, 0,0, 3236 69,153, 0,0, 0,0, 68,151, 3237 0,0, 71,0, 68,152, 71,0, 3238 0,0, 0,0, 70,0, 72,0, 3239 70,0, 72,0, 0,0, 0,0, 3240 73,0, 0,0, 73,0, 72,0, 3241 72,0, 74,0, 74,0, 72,0, 3242 73,0, 73,0, 89,0, 89,0, 3243 73,0, 0,0, 0,0, 0,0, 3244 0,0, 0,0, 0,0, 0,0, 3245 0,0, 0,0, 72,0, 0,0, 3246 72,0, 0,0, 70,130, 73,0, 3247 74,0, 73,0, 74,0, 0,0, 3248 0,0, 89,0, 70,154, 89,0, 3249 74,0, 74,0, 92,0, 92,0, 3250 74,0, 89,0, 89,0, 0,0, 3251 93,89, 0,0, 0,0, 70,155, 3252 94,0, 94,0, 0,0, 71,157, 3253 93,0, 93,0, 70,156, 74,0, 3254 0,0, 74,0, 0,0, 0,0, 3255 89,0, 92,0, 89,0, 92,0, 3256 0,0, 73,159, 0,0, 0,0, 3257 0,0, 92,0, 92,0, 94,0, 3258 0,0, 94,0, 0,0, 93,0, 3259 0,0, 93,0, 72,158, 94,0, 3260 94,0, 0,0, 0,0, 93,0, 3261 93,0, 95,0, 95,0, 93,89, 3262 92,0, 0,0, 92,0, 0,0, 3263 89,0, 0,0, 89,0, 0,0, 3264 96,0, 96,0, 94,0, 0,0, 3265 94,0, 0,0, 93,0, 0,0, 3266 93,0, 0,0, 0,0, 74,160, 3267 95,0, 0,0, 95,0, 0,0, 3268 0,0, 0,0, 0,0, 0,0, 3269 95,0, 95,0, 0,0, 96,0, 3270 92,0, 96,0, 92,0, 0,0, 3271 0,0, 0,0, 0,0, 96,0, 3272 96,0, 0,0, 94,0, 0,0, 3273 94,0, 0,0, 93,0, 95,0, 3274 93,0, 95,0, 0,0, 97,0, 3275 97,0, 0,0, 0,0, 93,178, 3276 0,0, 92,177, 96,0, 94,180, 3277 96,0, 0,0, 98,0, 98,0, 3278 93,179, 0,0, 0,0, 0,0, 3279 0,0, 0,0, 0,0, 0,0, 3280 0,0, 0,0, 97,0, 0,0, 3281 97,0, 99,0, 99,0, 95,0, 3282 0,0, 95,0, 97,0, 97,0, 3283 0,0, 98,0, 0,0, 98,0, 3284 100,0, 100,0, 96,0, 0,0, 3285 96,0, 98,0, 98,0, 0,0, 3286 0,0, 0,0, 0,0, 0,0, 3287 99,0, 97,0, 99,0, 97,0, 3288 95,181, 101,0, 101,0, 0,0, 3289 99,0, 99,0, 0,0, 100,0, 3290 98,0, 100,0, 98,0, 96,182, 3291 0,0, 0,0, 0,0, 100,0, 3292 100,0, 0,0, 0,0, 102,89, 3293 0,0, 0,0, 0,0, 99,0, 3294 101,0, 99,0, 101,0, 102,0, 3295 102,0, 97,0, 0,0, 97,0, 3296 101,0, 101,0, 100,0, 0,0, 3297 100,0, 0,0, 0,0, 0,0, 3298 98,0, 0,0, 98,0, 0,0, 3299 0,0, 0,0, 98,184, 0,0, 3300 0,0, 97,183, 102,0, 101,0, 3301 102,0, 101,0, 0,0, 99,0, 3302 0,0, 99,0, 102,0, 102,0, 3303 0,0, 0,0, 102,89, 103,0, 3304 103,0, 0,0, 100,0, 0,0, 3305 100,0, 0,0, 0,0, 0,0, 3306 0,0, 0,0, 104,0, 104,0, 3307 99,185, 102,0, 0,0, 102,0, 3308 0,0, 0,0, 0,0, 101,0, 3309 0,0, 101,0, 103,0, 0,0, 3310 103,0, 0,0, 0,0, 0,0, 3311 100,186, 0,0, 103,0, 103,0, 3312 0,0, 104,0, 0,0, 104,0, 3313 105,0, 105,0, 0,0, 0,0, 3314 0,0, 104,0, 104,0, 0,0, 3315 101,187, 102,0, 104,192, 102,0, 3316 0,0, 103,0, 0,0, 103,0, 3317 0,0, 0,0, 102,188, 0,0, 3318 102,189, 0,0, 0,0, 105,0, 3319 104,0, 105,0, 104,0, 0,0, 3320 106,0, 106,0, 0,0, 105,0, 3321 105,0, 0,0, 0,0, 0,0, 3322 102,190, 0,0, 107,0, 107,0, 3323 0,0, 108,0, 108,0, 0,0, 3324 0,0, 103,0, 0,0, 103,0, 3325 0,0, 0,0, 105,0, 106,0, 3326 105,0, 106,0, 0,0, 0,0, 3327 104,0, 0,0, 104,0, 106,0, 3328 106,0, 107,0, 0,0, 107,0, 3329 108,0, 0,0, 108,0, 0,0, 3330 103,191, 107,0, 107,0, 0,0, 3331 108,0, 108,0, 107,195, 0,0, 3332 109,0, 109,0, 106,0, 0,0, 3333 106,0, 0,0, 105,0, 0,0, 3334 105,0, 0,0, 0,0, 0,0, 3335 107,0, 0,0, 107,0, 108,0, 3336 0,0, 108,0, 0,0, 0,0, 3337 110,89, 0,0, 0,0, 109,0, 3338 0,0, 109,0, 0,0, 0,0, 3339 110,0, 110,0, 105,193, 109,0, 3340 109,0, 0,0, 106,0, 0,0, 3341 106,0, 0,0, 0,0, 0,0, 3342 0,0, 111,0, 111,0, 0,0, 3343 107,0, 0,0, 107,0, 108,0, 3344 0,0, 108,0, 109,0, 110,0, 3345 109,0, 110,0, 0,0, 106,194, 3346 112,0, 112,0, 0,0, 110,0, 3347 110,0, 0,0, 0,0, 110,89, 3348 111,0, 108,196, 111,0, 0,0, 3349 0,0, 113,0, 113,0, 0,0, 3350 111,0, 111,0, 0,0, 0,0, 3351 0,0, 0,0, 110,0, 112,0, 3352 110,0, 112,0, 109,0, 0,0, 3353 109,0, 0,0, 0,0, 112,0, 3354 112,0, 0,0, 109,197, 111,0, 3355 113,0, 111,0, 113,0, 114,0, 3356 114,0, 0,0, 0,0, 0,0, 3357 113,0, 113,0, 0,0, 0,0, 3358 0,0, 0,0, 112,0, 0,0, 3359 112,0, 0,0, 110,0, 0,0, 3360 110,0, 0,0, 0,0, 0,0, 3361 0,0, 0,0, 114,0, 113,0, 3362 114,0, 113,0, 0,0, 111,0, 3363 0,0, 111,0, 114,0, 114,0, 3364 0,0, 0,0, 0,0, 115,0, 3365 115,0, 0,0, 0,0, 110,198, 3366 0,0, 0,0, 112,0, 110,199, 3367 112,0, 111,200, 116,0, 116,0, 3368 0,0, 114,0, 0,0, 114,0, 3369 0,0, 0,0, 0,0, 113,0, 3370 0,0, 113,0, 115,0, 0,0, 3371 115,0, 117,0, 117,0, 112,201, 3372 0,0, 0,0, 115,0, 115,0, 3373 0,0, 116,0, 0,0, 116,0, 3374 118,0, 118,0, 0,0, 0,0, 3375 0,0, 116,0, 116,0, 0,0, 3376 113,202, 114,0, 0,0, 114,0, 3377 117,0, 115,0, 117,0, 115,0, 3378 0,0, 119,0, 119,0, 0,0, 3379 117,0, 117,0, 0,0, 118,0, 3380 116,0, 118,0, 116,0, 0,0, 3381 0,0, 0,0, 0,0, 118,0, 3382 118,0, 0,0, 114,203, 0,0, 3383 0,0, 0,0, 0,0, 117,0, 3384 119,0, 117,0, 119,0, 0,0, 3385 0,0, 115,0, 0,0, 115,0, 3386 119,0, 119,0, 118,0, 0,0, 3387 118,0, 0,0, 0,0, 0,0, 3388 116,0, 0,0, 116,0, 0,0, 3389 0,0, 0,0, 0,0, 120,0, 3390 120,0, 0,0, 0,0, 119,0, 3391 0,0, 119,0, 0,0, 117,0, 3392 0,0, 117,0, 0,0, 115,204, 3393 116,205, 121,0, 121,0, 0,0, 3394 122,0, 122,0, 118,0, 0,0, 3395 118,0, 117,206, 120,0, 0,0, 3396 120,0, 0,0, 0,0, 123,0, 3397 123,0, 0,0, 120,0, 120,0, 3398 0,0, 0,0, 0,0, 119,0, 3399 121,0, 119,0, 121,0, 122,0, 3400 0,0, 122,0, 0,0, 0,0, 3401 121,0, 121,0, 118,207, 122,0, 3402 122,0, 120,0, 123,0, 120,0, 3403 123,0, 0,0, 0,0, 0,0, 3404 0,0, 0,0, 123,0, 123,0, 3405 119,208, 0,0, 0,0, 121,0, 3406 0,0, 121,0, 122,0, 0,0, 3407 122,0, 0,0, 0,0, 0,0, 3408 0,0, 0,0, 0,0, 0,0, 3409 0,0, 123,0, 0,0, 123,0, 3410 0,0, 120,0, 0,0, 120,0, 3411 0,0, 124,0, 124,0, 0,0, 3412 0,0, 125,0, 125,0, 0,0, 3413 0,0, 0,0, 120,209, 121,0, 3414 0,0, 121,0, 122,0, 0,0, 3415 122,0, 126,0, 126,0, 0,0, 3416 122,211, 121,210, 0,0, 0,0, 3417 124,0, 123,0, 124,0, 123,0, 3418 125,0, 0,0, 125,0, 0,0, 3419 124,0, 124,0, 0,0, 0,0, 3420 125,0, 125,0, 0,0, 0,0, 3421 126,0, 0,0, 126,0, 0,0, 3422 0,0, 0,0, 123,212, 0,0, 3423 126,0, 126,0, 0,0, 124,0, 3424 0,0, 124,0, 0,0, 125,0, 3425 0,0, 125,0, 0,0, 127,0, 3426 127,0, 0,0, 0,0, 0,0, 3427 0,0, 0,0, 0,0, 126,0, 3428 0,0, 126,0, 0,0, 0,0, 3429 0,0, 0,0, 0,0, 130,0, 3430 130,0, 0,0, 0,0, 0,0, 3431 0,0, 0,0, 127,0, 124,0, 3432 127,0, 124,0, 0,0, 125,0, 3433 0,0, 125,0, 127,0, 127,0, 3434 0,0, 124,213, 127,0, 0,0, 3435 0,0, 0,0, 130,0, 126,0, 3436 130,0, 126,0, 0,0, 0,0, 3437 125,214, 0,0, 130,0, 130,0, 3438 0,0, 127,0, 130,0, 127,0, 3439 0,0, 131,0, 131,0, 0,0, 3440 0,0, 0,0, 126,215, 0,0, 3441 0,0, 0,0, 0,0, 0,0, 3442 0,0, 130,0, 0,0, 130,0, 3443 0,0, 0,0, 0,0, 0,0, 3444 0,0, 0,0, 0,0, 0,0, 3445 131,0, 0,0, 131,0, 132,0, 3446 132,0, 127,0, 0,0, 127,0, 3447 131,0, 131,0, 0,0, 0,0, 3448 131,0, 0,0, 133,0, 133,0, 3449 0,0, 0,0, 0,0, 134,0, 3450 134,0, 0,0, 0,0, 0,0, 3451 0,0, 0,0, 132,0, 131,0, 3452 132,0, 131,0, 0,0, 0,0, 3453 0,0, 0,0, 132,0, 132,0, 3454 0,0, 133,0, 132,0, 133,0, 3455 0,0, 0,0, 134,0, 0,0, 3456 134,0, 133,0, 133,0, 135,0, 3457 135,0, 133,0, 134,0, 134,0, 3458 0,0, 132,0, 134,0, 132,0, 3459 0,0, 0,0, 136,0, 136,0, 3460 0,0, 0,0, 0,0, 0,0, 3461 133,0, 0,0, 133,0, 0,0, 3462 0,0, 134,0, 135,0, 134,0, 3463 135,0, 0,0, 0,0, 0,0, 3464 0,0, 0,0, 135,0, 135,0, 3465 0,0, 136,0, 135,0, 136,0, 3466 131,216, 0,0, 137,0, 137,0, 3467 0,0, 136,0, 136,0, 0,0, 3468 0,0, 136,0, 132,217, 0,0, 3469 0,0, 135,0, 0,0, 135,0, 3470 138,0, 138,0, 0,0, 0,0, 3471 0,0, 0,0, 0,0, 0,0, 3472 136,0, 137,0, 136,0, 137,0, 3473 0,0, 133,218, 0,0, 0,0, 3474 0,0, 137,0, 137,0, 0,0, 3475 0,0, 137,0, 0,0, 138,0, 3476 0,0, 138,0, 134,219, 0,0, 3477 139,0, 139,0, 0,0, 138,0, 3478 138,0, 140,0, 140,0, 138,0, 3479 137,0, 0,0, 137,0, 0,0, 3480 0,0, 0,0, 0,0, 0,0, 3481 0,0, 0,0, 136,221, 0,0, 3482 0,0, 135,220, 138,0, 139,0, 3483 138,0, 139,0, 0,0, 0,0, 3484 140,0, 0,0, 140,0, 139,0, 3485 139,0, 0,0, 0,0, 139,0, 3486 140,0, 140,0, 141,0, 141,0, 3487 140,0, 140,225, 0,0, 0,0, 3488 0,0, 0,0, 0,0, 0,0, 3489 0,0, 0,0, 139,0, 0,0, 3490 139,0, 0,0, 0,0, 140,0, 3491 0,0, 140,0, 0,0, 0,0, 3492 0,0, 141,0, 0,0, 141,0, 3493 0,0, 138,223, 137,222, 0,0, 3494 0,0, 141,0, 141,0, 142,0, 3495 142,0, 141,0, 0,0, 0,0, 3496 143,0, 143,0, 0,0, 0,0, 3497 0,0, 0,0, 0,0, 0,0, 3498 0,0, 0,0, 0,0, 0,0, 3499 141,0, 0,0, 141,0, 0,0, 3500 0,0, 0,0, 142,0, 0,0, 3501 142,0, 0,0, 0,0, 143,0, 3502 0,0, 143,0, 142,0, 142,0, 3503 0,0, 139,224, 142,0, 143,0, 3504 143,0, 0,0, 0,0, 143,0, 3505 143,228, 0,0, 144,0, 144,0, 3506 0,0, 0,0, 0,0, 0,0, 3507 0,0, 142,0, 0,0, 142,0, 3508 0,0, 0,0, 143,0, 0,0, 3509 143,0, 0,0, 145,0, 145,0, 3510 0,0, 0,0, 0,0, 0,0, 3511 0,0, 144,0, 0,0, 144,0, 3512 0,0, 0,0, 0,0, 0,0, 3513 141,226, 144,0, 144,0, 0,0, 3514 146,130, 144,0, 0,0, 0,0, 3515 0,0, 145,0, 0,0, 145,0, 3516 146,0, 146,0, 0,0, 0,0, 3517 0,0, 145,0, 145,0, 0,0, 3518 144,0, 145,0, 144,0, 0,0, 3519 0,0, 147,0, 147,0, 0,0, 3520 0,0, 0,0, 142,227, 0,0, 3521 0,0, 0,0, 0,0, 146,0, 3522 145,0, 146,0, 145,0, 0,0, 3523 0,0, 0,0, 0,0, 146,0, 3524 146,0, 0,0, 0,0, 146,0, 3525 147,0, 0,0, 147,0, 0,0, 3526 0,0, 0,0, 0,0, 0,0, 3527 147,0, 147,0, 148,0, 148,0, 3528 147,0, 0,0, 146,0, 0,0, 3529 146,0, 0,0, 0,0, 0,0, 3530 0,0, 0,0, 144,229, 0,0, 3531 149,0, 149,0, 0,0, 147,0, 3532 145,230, 147,0, 0,0, 0,0, 3533 0,0, 148,0, 0,0, 148,0, 3534 0,0, 0,0, 150,0, 150,0, 3535 0,0, 148,0, 148,0, 0,0, 3536 0,0, 148,0, 146,130, 149,0, 3537 0,0, 149,0, 0,0, 0,0, 3538 0,0, 0,0, 0,0, 149,0, 3539 149,0, 0,0, 0,0, 149,0, 3540 148,0, 150,0, 148,0, 150,0, 3541 151,0, 151,0, 0,0, 0,0, 3542 0,0, 150,0, 150,0, 146,231, 3543 0,0, 150,0, 149,0, 146,232, 3544 149,0, 147,233, 0,0, 0,0, 3545 152,0, 152,0, 0,0, 0,0, 3546 0,0, 0,0, 0,0, 151,0, 3547 150,0, 151,0, 150,0, 0,0, 3548 0,0, 0,0, 0,0, 151,0, 3549 151,0, 0,0, 0,0, 151,0, 3550 0,0, 0,0, 0,0, 152,0, 3551 0,0, 152,0, 0,0, 0,0, 3552 0,0, 0,0, 0,0, 152,0, 3553 152,0, 148,234, 151,0, 152,0, 3554 151,0, 153,0, 153,0, 0,0, 3555 0,0, 0,0, 154,0, 154,0, 3556 0,0, 0,0, 0,0, 0,0, 3557 0,0, 0,0, 152,0, 149,235, 3558 152,0, 155,0, 155,0, 0,0, 3559 0,0, 0,0, 0,0, 0,0, 3560 153,0, 0,0, 153,0, 0,0, 3561 0,0, 154,0, 0,0, 154,0, 3562 153,0, 153,0, 150,236, 0,0, 3563 153,0, 154,0, 154,0, 0,0, 3564 155,0, 154,0, 155,0, 156,0, 3565 156,0, 0,0, 0,0, 0,0, 3566 155,0, 155,0, 151,237, 153,0, 3567 155,0, 153,0, 157,0, 157,0, 3568 154,0, 0,0, 154,0, 0,0, 3569 152,238, 0,0, 0,0, 0,0, 3570 0,0, 0,0, 156,0, 155,0, 3571 156,0, 155,0, 0,0, 0,0, 3572 0,0, 0,0, 156,0, 156,0, 3573 0,0, 157,0, 156,0, 157,0, 3574 0,0, 0,0, 158,0, 158,0, 3575 0,0, 157,0, 157,0, 159,0, 3576 159,0, 157,0, 0,0, 0,0, 3577 0,0, 156,0, 0,0, 156,0, 3578 0,0, 0,0, 160,0, 160,0, 3579 0,0, 154,240, 0,0, 0,0, 3580 157,0, 158,0, 157,0, 158,0, 3581 0,0, 155,241, 159,0, 153,239, 3582 159,0, 158,0, 158,0, 0,0, 3583 0,0, 158,0, 159,0, 159,0, 3584 0,0, 160,0, 159,0, 160,0, 3585 0,0, 0,0, 0,0, 0,0, 3586 0,0, 160,0, 160,0, 156,242, 3587 158,0, 160,0, 158,0, 177,0, 3588 177,0, 159,0, 0,0, 159,0, 3589 178,0, 178,0, 0,0, 0,0, 3590 0,0, 179,0, 179,0, 0,0, 3591 160,0, 0,0, 160,0, 0,0, 3592 0,0, 0,0, 0,0, 0,0, 3593 0,0, 157,243, 177,0, 0,0, 3594 177,0, 0,0, 0,0, 178,0, 3595 0,0, 178,0, 177,0, 177,0, 3596 179,0, 0,0, 179,0, 178,0, 3597 178,0, 0,0, 158,244, 0,0, 3598 179,0, 179,0, 180,0, 180,0, 3599 0,0, 0,0, 181,0, 181,0, 3600 0,0, 177,0, 159,245, 177,0, 3601 0,0, 0,0, 178,0, 0,0, 3602 178,0, 0,0, 0,0, 179,0, 3603 0,0, 179,0, 0,0, 160,246, 3604 0,0, 180,0, 0,0, 180,0, 3605 0,0, 181,0, 0,0, 181,0, 3606 0,0, 180,0, 180,0, 0,0, 3607 0,0, 181,0, 181,0, 0,0, 3608 0,0, 177,0, 0,0, 177,0, 3609 0,0, 0,0, 178,0, 0,0, 3610 178,0, 0,0, 0,0, 179,0, 3611 180,0, 179,0, 180,0, 177,260, 3612 181,0, 0,0, 181,0, 0,0, 3613 183,0, 183,0, 182,89, 0,0, 3614 0,0, 179,262, 0,0, 0,0, 3615 0,0, 178,261, 182,0, 182,0, 3616 0,0, 0,0, 0,0, 184,0, 3617 184,0, 0,0, 0,0, 0,0, 3618 0,0, 0,0, 0,0, 183,0, 3619 180,0, 183,0, 180,0, 0,0, 3620 181,0, 0,0, 181,0, 183,0, 3621 183,0, 182,0, 0,0, 182,0, 3622 0,0, 0,0, 184,0, 0,0, 3623 184,0, 182,0, 182,0, 0,0, 3624 180,263, 182,89, 184,0, 184,0, 3625 185,0, 185,0, 183,0, 181,264, 3626 183,0, 0,0, 0,0, 0,0, 3627 0,0, 0,0, 187,0, 187,0, 3628 182,0, 0,0, 182,0, 0,0, 3629 0,0, 184,0, 0,0, 184,0, 3630 0,0, 0,0, 0,0, 185,0, 3631 0,0, 185,0, 0,0, 0,0, 3632 0,0, 0,0, 0,0, 185,0, 3633 185,0, 187,0, 183,0, 187,0, 3634 183,0, 0,0, 186,0, 186,0, 3635 0,0, 187,0, 187,0, 0,0, 3636 182,0, 0,0, 182,0, 0,0, 3637 0,0, 184,0, 185,0, 184,0, 3638 185,0, 0,0, 188,0, 188,0, 3639 0,0, 182,265, 0,0, 183,267, 3640 187,0, 186,0, 187,0, 186,0, 3641 182,266, 0,0, 0,0, 0,0, 3642 184,268, 186,0, 186,0, 0,0, 3643 0,0, 0,0, 186,270, 0,0, 3644 0,0, 188,0, 0,0, 188,0, 3645 0,0, 0,0, 185,0, 0,0, 3646 185,0, 188,0, 188,0, 0,0, 3647 186,0, 0,0, 186,0, 0,0, 3648 187,0, 0,0, 187,0, 0,0, 3649 189,0, 189,0, 187,271, 0,0, 3650 0,0, 190,0, 190,0, 185,269, 3651 188,0, 0,0, 188,0, 0,0, 3652 0,0, 0,0, 0,0, 0,0, 3653 191,0, 191,0, 0,0, 0,0, 3654 0,0, 0,0, 0,0, 189,0, 3655 186,0, 189,0, 186,0, 0,0, 3656 190,0, 0,0, 190,0, 189,0, 3657 189,0, 192,0, 192,0, 0,0, 3658 190,0, 190,0, 0,0, 191,0, 3659 188,0, 191,0, 188,0, 0,0, 3660 193,0, 193,0, 0,0, 191,0, 3661 191,0, 0,0, 189,0, 0,0, 3662 189,0, 0,0, 188,272, 190,0, 3663 192,0, 190,0, 192,0, 0,0, 3664 0,0, 0,0, 0,0, 0,0, 3665 192,0, 192,0, 191,0, 193,0, 3666 191,0, 193,0, 0,0, 0,0, 3667 194,0, 194,0, 0,0, 193,0, 3668 193,0, 0,0, 0,0, 0,0, 3669 0,0, 0,0, 189,0, 192,0, 3670 189,0, 192,0, 0,0, 190,0, 3671 0,0, 190,0, 0,0, 0,0, 3672 0,0, 0,0, 193,0, 194,0, 3673 193,0, 194,0, 191,0, 0,0, 3674 191,0, 190,274, 0,0, 194,0, 3675 194,0, 189,273, 0,0, 195,0, 3676 195,0, 0,0, 196,0, 196,0, 3677 0,0, 0,0, 0,0, 192,0, 3678 0,0, 192,0, 0,0, 0,0, 3679 0,0, 192,275, 194,0, 0,0, 3680 194,0, 0,0, 193,0, 0,0, 3681 193,0, 0,0, 195,0, 0,0, 3682 195,0, 196,0, 0,0, 196,0, 3683 0,0, 0,0, 195,0, 195,0, 3684 0,0, 196,0, 196,0, 0,0, 3685 0,0, 197,0, 197,0, 0,0, 3686 198,0, 198,0, 0,0, 193,276, 3687 0,0, 0,0, 194,0, 0,0, 3688 194,0, 195,0, 0,0, 195,0, 3689 196,0, 0,0, 196,0, 0,0, 3690 0,0, 0,0, 0,0, 0,0, 3691 197,0, 0,0, 197,0, 198,0, 3692 0,0, 198,0, 194,277, 0,0, 3693 197,0, 197,0, 0,0, 198,0, 3694 198,0, 0,0, 0,0, 0,0, 3695 199,0, 199,0, 0,0, 200,0, 3696 200,0, 195,0, 0,0, 195,0, 3697 196,0, 0,0, 196,0, 197,0, 3698 0,0, 197,0, 198,0, 0,0, 3699 198,0, 0,0, 0,0, 0,0, 3700 0,0, 0,0, 196,279, 199,0, 3701 0,0, 199,0, 200,0, 0,0, 3702 200,0, 0,0, 195,278, 199,0, 3703 199,0, 0,0, 200,0, 200,0, 3704 199,282, 0,0, 201,0, 201,0, 3705 0,0, 202,0, 202,0, 197,0, 3706 0,0, 197,0, 198,0, 0,0, 3707 198,0, 0,0, 199,0, 0,0, 3708 199,0, 200,0, 198,281, 200,0, 3709 0,0, 0,0, 0,0, 197,280, 3710 0,0, 201,0, 0,0, 201,0, 3711 202,0, 0,0, 202,0, 0,0, 3712 0,0, 201,0, 201,0, 0,0, 3713 202,0, 202,0, 203,0, 203,0, 3714 0,0, 204,0, 204,0, 0,0, 3715 0,0, 0,0, 199,0, 0,0, 3716 199,0, 200,0, 0,0, 200,0, 3717 201,0, 0,0, 201,0, 202,0, 3718 0,0, 202,0, 0,0, 200,283, 3719 0,0, 203,0, 0,0, 203,0, 3720 204,0, 0,0, 204,0, 0,0, 3721 0,0, 203,0, 203,0, 0,0, 3722 204,0, 204,0, 205,0, 205,0, 3723 0,0, 206,0, 206,0, 0,0, 3724 0,0, 0,0, 0,0, 0,0, 3725 201,0, 0,0, 201,0, 202,0, 3726 203,0, 202,0, 203,0, 204,0, 3727 0,0, 204,0, 0,0, 0,0, 3728 0,0, 205,0, 0,0, 205,0, 3729 206,0, 0,0, 206,0, 0,0, 3730 0,0, 205,0, 205,0, 0,0, 3731 206,0, 206,0, 201,284, 0,0, 3732 207,0, 207,0, 0,0, 0,0, 3733 0,0, 208,0, 208,0, 0,0, 3734 203,0, 0,0, 203,0, 204,0, 3735 205,0, 204,0, 205,0, 206,0, 3736 0,0, 206,0, 0,0, 0,0, 3737 0,0, 0,0, 203,285, 207,0, 3738 0,0, 207,0, 0,0, 0,0, 3739 208,0, 0,0, 208,0, 207,0, 3740 207,0, 209,0, 209,0, 204,286, 3741 208,0, 208,0, 0,0, 0,0, 3742 0,0, 0,0, 0,0, 0,0, 3743 205,0, 0,0, 205,0, 206,0, 3744 0,0, 206,0, 207,0, 0,0, 3745 207,0, 0,0, 0,0, 208,0, 3746 209,0, 208,0, 209,0, 0,0, 3747 0,0, 205,287, 0,0, 0,0, 3748 209,0, 209,0, 0,0, 0,0, 3749 210,0, 210,0, 0,0, 211,0, 3750 211,0, 0,0, 206,288, 0,0, 3751 0,0, 0,0, 0,0, 0,0, 3752 0,0, 0,0, 207,0, 209,0, 3753 207,0, 209,0, 0,0, 208,0, 3754 0,0, 208,0, 0,0, 210,0, 3755 0,0, 210,0, 211,0, 0,0, 3756 211,0, 0,0, 0,0, 210,0, 3757 210,0, 0,0, 211,0, 211,0, 3758 208,289, 0,0, 0,0, 212,0, 3759 212,0, 0,0, 213,0, 213,0, 3760 0,0, 0,0, 0,0, 209,0, 3761 0,0, 209,0, 210,0, 0,0, 3762 210,0, 211,0, 0,0, 211,0, 3763 0,0, 209,290, 0,0, 0,0, 3764 0,0, 0,0, 212,0, 0,0, 3765 212,0, 213,0, 0,0, 213,0, 3766 0,0, 0,0, 212,0, 212,0, 3767 0,0, 213,0, 213,0, 0,0, 3768 0,0, 214,0, 214,0, 0,0, 3769 215,0, 215,0, 210,0, 0,0, 3770 210,0, 211,0, 0,0, 211,0, 3771 0,0, 212,0, 210,291, 212,0, 3772 213,0, 0,0, 213,0, 0,0, 3773 0,0, 0,0, 0,0, 0,0, 3774 214,0, 0,0, 214,0, 215,0, 3775 0,0, 215,0, 211,292, 0,0, 3776 214,0, 214,0, 0,0, 215,0, 3777 215,0, 216,0, 216,0, 0,0, 3778 0,0, 0,0, 217,0, 217,0, 3779 0,0, 212,0, 0,0, 212,0, 3780 213,0, 0,0, 213,0, 214,0, 3781 0,0, 214,0, 215,0, 212,293, 3782 215,0, 0,0, 0,0, 0,0, 3783 216,0, 0,0, 216,0, 0,0, 3784 0,0, 217,0, 0,0, 217,0, 3785 216,0, 216,0, 0,0, 213,294, 3786 216,0, 217,0, 217,0, 218,0, 3787 218,0, 217,0, 0,0, 0,0, 3788 0,0, 0,0, 0,0, 214,0, 3789 0,0, 214,0, 215,0, 216,0, 3790 215,0, 216,0, 0,0, 0,0, 3791 217,0, 0,0, 217,0, 219,130, 3792 215,296, 0,0, 218,0, 0,0, 3793 218,0, 0,0, 0,0, 219,0, 3794 219,0, 0,0, 218,0, 218,0, 3795 0,0, 214,295, 218,0, 0,0, 3796 0,0, 0,0, 220,0, 220,0, 3797 0,0, 0,0, 0,0, 221,0, 3798 221,0, 0,0, 0,0, 0,0, 3799 0,0, 218,0, 219,0, 218,0, 3800 219,0, 0,0, 0,0, 0,0, 3801 0,0, 216,297, 219,0, 219,0, 3802 0,0, 220,0, 219,0, 220,0, 3803 0,0, 0,0, 221,0, 0,0, 3804 221,0, 220,0, 220,0, 217,298, 3805 0,0, 220,0, 221,0, 221,0, 3806 0,0, 219,0, 221,0, 219,0, 3807 222,0, 222,0, 0,0, 0,0, 3808 0,0, 0,0, 0,0, 0,0, 3809 220,0, 0,0, 220,0, 0,0, 3810 0,0, 221,0, 0,0, 221,0, 3811 223,0, 223,0, 0,0, 0,0, 3812 0,0, 218,299, 0,0, 222,0, 3813 0,0, 222,0, 0,0, 0,0, 3814 0,0, 219,130, 0,0, 222,0, 3815 222,0, 0,0, 0,0, 222,0, 3816 222,304, 0,0, 0,0, 223,0, 3817 0,0, 223,0, 219,300, 0,0, 3818 224,0, 224,0, 0,0, 223,0, 3819 223,0, 219,301, 222,0, 223,0, 3820 222,0, 0,0, 0,0, 225,0, 3821 225,0, 0,0, 0,0, 0,0, 3822 226,0, 226,0, 0,0, 0,0, 3823 221,303, 220,302, 223,0, 224,0, 3824 223,0, 224,0, 0,0, 0,0, 3825 0,0, 0,0, 0,0, 224,0, 3826 224,0, 0,0, 225,0, 224,0, 3827 225,0, 0,0, 0,0, 226,0, 3828 0,0, 226,0, 225,0, 225,0, 3829 227,0, 227,0, 225,0, 226,0, 3830 226,0, 0,0, 224,0, 226,0, 3831 224,0, 0,0, 0,0, 228,0, 3832 228,0, 0,0, 0,0, 0,0, 3833 0,0, 225,0, 0,0, 225,0, 3834 0,0, 0,0, 226,0, 227,0, 3835 226,0, 227,0, 0,0, 0,0, 3836 0,0, 0,0, 0,0, 227,0, 3837 227,0, 223,305, 228,0, 227,0, 3838 228,0, 229,0, 229,0, 0,0, 3839 0,0, 0,0, 228,0, 228,0, 3840 0,0, 0,0, 228,0, 0,0, 3841 0,0, 0,0, 227,0, 0,0, 3842 227,0, 230,0, 230,0, 225,306, 3843 0,0, 0,0, 0,0, 0,0, 3844 229,0, 228,0, 229,0, 228,0, 3845 0,0, 0,0, 0,0, 0,0, 3846 229,0, 229,0, 0,0, 0,0, 3847 229,0, 0,0, 0,0, 0,0, 3848 230,0, 0,0, 230,0, 226,307, 3849 0,0, 0,0, 0,0, 0,0, 3850 230,0, 230,0, 0,0, 229,0, 3851 230,0, 229,0, 231,0, 231,0, 3852 0,0, 0,0, 0,0, 0,0, 3853 0,0, 0,0, 0,0, 0,0, 3854 0,0, 0,0, 227,308, 230,0, 3855 0,0, 230,0, 0,0, 0,0, 3856 0,0, 0,0, 0,0, 0,0, 3857 0,0, 231,0, 0,0, 231,0, 3858 0,0, 0,0, 228,309, 0,0, 3859 0,0, 231,0, 231,0, 232,0, 3860 232,0, 231,0, 0,0, 0,0, 3861 0,0, 0,0, 0,0, 0,0, 3862 0,0, 229,310, 0,0, 0,0, 3863 0,0, 233,0, 233,0, 0,0, 3864 231,0, 0,0, 231,0, 0,0, 3865 0,0, 0,0, 232,0, 0,0, 3866 232,0, 0,0, 0,0, 230,311, 3867 0,0, 0,0, 232,0, 232,0, 3868 0,0, 0,0, 232,0, 232,313, 3869 233,0, 0,0, 233,0, 234,0, 3870 234,0, 0,0, 0,0, 0,0, 3871 233,0, 233,0, 0,0, 0,0, 3872 233,0, 232,0, 0,0, 232,0, 3873 235,0, 235,0, 0,0, 0,0, 3874 231,312, 0,0, 0,0, 0,0, 3875 0,0, 0,0, 234,0, 233,0, 3876 234,0, 233,0, 0,0, 0,0, 3877 0,0, 0,0, 234,0, 234,0, 3878 0,0, 0,0, 234,0, 235,0, 3879 0,0, 235,0, 236,0, 236,0, 3880 0,0, 0,0, 0,0, 235,0, 3881 235,0, 0,0, 0,0, 235,0, 3882 0,0, 234,0, 0,0, 234,0, 3883 237,0, 237,0, 0,0, 0,0, 3884 0,0, 0,0, 0,0, 0,0, 3885 0,0, 236,0, 235,0, 236,0, 3886 235,0, 233,314, 238,0, 238,0, 3887 0,0, 236,0, 236,0, 0,0, 3888 0,0, 236,0, 0,0, 237,0, 3889 0,0, 237,0, 0,0, 0,0, 3890 239,0, 239,0, 0,0, 237,0, 3891 237,0, 0,0, 0,0, 237,0, 3892 236,0, 238,0, 236,0, 238,0, 3893 0,0, 0,0, 0,0, 0,0, 3894 0,0, 238,0, 238,0, 0,0, 3895 0,0, 238,0, 237,0, 239,0, 3896 237,0, 239,0, 0,0, 234,315, 3897 235,316, 0,0, 0,0, 239,0, 3898 239,0, 0,0, 0,0, 239,0, 3899 238,0, 0,0, 238,0, 0,0, 3900 0,0, 0,0, 240,0, 240,0, 3901 0,0, 0,0, 0,0, 241,0, 3902 241,0, 0,0, 239,0, 0,0, 3903 239,0, 0,0, 0,0, 0,0, 3904 0,0, 0,0, 242,0, 242,0, 3905 0,0, 0,0, 0,0, 0,0, 3906 236,317, 240,0, 0,0, 240,0, 3907 0,0, 0,0, 241,0, 237,318, 3908 241,0, 240,0, 240,0, 0,0, 3909 0,0, 240,0, 241,0, 241,0, 3910 0,0, 242,0, 241,0, 242,0, 3911 0,0, 0,0, 243,0, 243,0, 3912 0,0, 242,0, 242,0, 0,0, 3913 240,0, 242,0, 240,0, 238,319, 3914 0,0, 241,0, 0,0, 241,0, 3915 244,0, 244,0, 0,0, 0,0, 3916 0,0, 0,0, 0,0, 0,0, 3917 242,0, 243,0, 242,0, 243,0, 3918 0,0, 0,0, 0,0, 0,0, 3919 0,0, 243,0, 243,0, 0,0, 3920 0,0, 243,0, 0,0, 244,0, 3921 0,0, 244,0, 0,0, 0,0, 3922 0,0, 0,0, 0,0, 244,0, 3923 244,0, 0,0, 240,320, 244,0, 3924 243,0, 241,321, 243,0, 245,0, 3925 245,0, 0,0, 0,0, 0,0, 3926 246,0, 246,0, 0,0, 0,0, 3927 0,0, 0,0, 244,0, 0,0, 3928 244,0, 0,0, 0,0, 0,0, 3929 0,0, 0,0, 0,0, 0,0, 3930 0,0, 242,322, 245,0, 0,0, 3931 245,0, 0,0, 0,0, 246,0, 3932 0,0, 246,0, 245,0, 245,0, 3933 260,0, 260,0, 245,0, 246,0, 3934 246,0, 0,0, 243,323, 246,0, 3935 0,0, 0,0, 0,0, 261,0, 3936 261,0, 0,0, 0,0, 262,0, 3937 262,0, 245,0, 0,0, 245,0, 3938 0,0, 0,0, 246,0, 260,0, 3939 246,0, 260,0, 263,0, 263,0, 3940 0,0, 0,0, 0,0, 260,0, 3941 260,0, 244,324, 261,0, 0,0, 3942 261,0, 0,0, 262,0, 0,0, 3943 262,0, 0,0, 261,0, 261,0, 3944 0,0, 0,0, 262,0, 262,0, 3945 0,0, 263,0, 260,0, 263,0, 3946 260,0, 0,0, 0,0, 0,0, 3947 0,0, 263,0, 263,0, 0,0, 3948 0,0, 261,0, 0,0, 261,0, 3949 246,326, 262,0, 0,0, 262,0, 3950 0,0, 264,0, 264,0, 0,0, 3951 0,0, 265,0, 265,0, 245,325, 3952 263,0, 0,0, 263,0, 0,0, 3953 0,0, 0,0, 260,0, 0,0, 3954 260,0, 0,0, 0,0, 0,0, 3955 0,0, 0,0, 0,0, 0,0, 3956 264,0, 261,0, 264,0, 261,0, 3957 265,0, 262,0, 265,0, 262,0, 3958 264,0, 264,0, 260,337, 261,338, 3959 265,0, 265,0, 266,0, 266,0, 3960 263,0, 0,0, 263,0, 0,0, 3961 0,0, 0,0, 0,0, 0,0, 3962 262,339, 267,0, 267,0, 264,0, 3963 0,0, 264,0, 0,0, 265,0, 3964 0,0, 265,0, 0,0, 0,0, 3965 0,0, 266,0, 0,0, 266,0, 3966 0,0, 0,0, 0,0, 0,0, 3967 263,340, 266,0, 266,0, 0,0, 3968 267,0, 0,0, 267,0, 0,0, 3969 0,0, 0,0, 0,0, 0,0, 3970 267,0, 267,0, 0,0, 264,0, 3971 0,0, 264,0, 0,0, 265,0, 3972 266,0, 265,0, 266,0, 0,0, 3973 268,0, 268,0, 0,0, 0,0, 3974 0,0, 0,0, 0,0, 267,0, 3975 0,0, 267,0, 0,0, 269,0, 3976 269,0, 0,0, 0,0, 270,0, 3977 270,0, 0,0, 0,0, 265,341, 3978 0,0, 0,0, 0,0, 268,0, 3979 0,0, 268,0, 271,0, 271,0, 3980 266,0, 0,0, 266,0, 268,0, 3981 268,0, 0,0, 269,0, 266,342, 3982 269,0, 0,0, 270,0, 267,0, 3983 270,0, 267,0, 269,0, 269,0, 3984 0,0, 267,343, 270,0, 270,0, 3985 0,0, 271,0, 268,0, 271,0, 3986 268,0, 0,0, 272,0, 272,0, 3987 0,0, 271,0, 271,0, 0,0, 3988 0,0, 269,0, 0,0, 269,0, 3989 0,0, 270,0, 0,0, 270,0, 3990 0,0, 0,0, 0,0, 0,0, 3991 0,0, 0,0, 0,0, 0,0, 3992 271,0, 272,0, 271,0, 272,0, 3993 0,0, 0,0, 268,0, 0,0, 3994 268,0, 272,0, 272,0, 0,0, 3995 0,0, 0,0, 0,0, 268,344, 3996 0,0, 269,0, 0,0, 269,0, 3997 0,0, 270,0, 0,0, 270,0, 3998 0,0, 0,0, 0,0, 269,345, 3999 272,0, 0,0, 272,0, 0,0, 4000 271,0, 0,0, 271,0, 0,0, 4001 0,0, 0,0, 273,0, 273,0, 4002 0,0, 274,0, 274,0, 0,0, 4003 0,0, 270,346, 0,0, 0,0, 4004 0,0, 0,0, 0,0, 275,0, 4005 275,0, 0,0, 0,0, 0,0, 4006 271,347, 0,0, 0,0, 0,0, 4007 272,0, 273,0, 272,0, 273,0, 4008 274,0, 0,0, 274,0, 0,0, 4009 272,348, 273,0, 273,0, 0,0, 4010 274,0, 274,0, 275,0, 0,0, 4011 275,0, 276,0, 276,0, 0,0, 4012 0,0, 0,0, 275,0, 275,0, 4013 0,0, 0,0, 0,0, 0,0, 4014 273,0, 0,0, 273,0, 274,0, 4015 0,0, 274,0, 0,0, 0,0, 4016 0,0, 0,0, 0,0, 0,0, 4017 276,0, 275,0, 276,0, 275,0, 4018 0,0, 277,0, 277,0, 0,0, 4019 276,0, 276,0, 0,0, 0,0, 4020 0,0, 0,0, 0,0, 0,0, 4021 278,0, 278,0, 0,0, 0,0, 4022 273,0, 0,0, 273,0, 274,0, 4023 0,0, 274,0, 0,0, 276,0, 4024 277,0, 276,0, 277,0, 274,350, 4025 0,0, 275,0, 0,0, 275,0, 4026 277,0, 277,0, 0,0, 278,0, 4027 273,349, 278,0, 0,0, 0,0, 4028 0,0, 0,0, 0,0, 278,0, 4029 278,0, 0,0, 275,351, 279,0, 4030 279,0, 0,0, 0,0, 277,0, 4031 0,0, 277,0, 0,0, 276,0, 4032 0,0, 276,0, 0,0, 280,0, 4033 280,0, 0,0, 278,0, 0,0, 4034 278,0, 0,0, 0,0, 0,0, 4035 0,0, 276,352, 279,0, 0,0, 4036 279,0, 0,0, 0,0, 0,0, 4037 0,0, 0,0, 279,0, 279,0, 4038 0,0, 0,0, 280,0, 277,0, 4039 280,0, 277,0, 0,0, 281,0, 4040 281,0, 0,0, 280,0, 280,0, 4041 0,0, 0,0, 278,0, 282,89, 4042 278,0, 279,0, 0,0, 279,0, 4043 0,0, 0,0, 0,0, 282,0, 4044 282,0, 0,0, 277,353, 0,0, 4045 0,0, 280,0, 281,0, 280,0, 4046 281,0, 0,0, 0,0, 0,0, 4047 0,0, 0,0, 281,0, 281,0, 4048 0,0, 0,0, 0,0, 0,0, 4049 278,354, 0,0, 282,0, 0,0, 4050 282,0, 279,0, 0,0, 279,0, 4051 0,0, 0,0, 282,0, 282,0, 4052 0,0, 281,0, 282,89, 281,0, 4053 0,0, 280,0, 0,0, 280,0, 4054 0,0, 283,0, 283,0, 0,0, 4055 0,0, 284,0, 284,0, 280,356, 4056 0,0, 282,0, 279,355, 282,0, 4057 0,0, 0,0, 0,0, 0,0, 4058 0,0, 285,0, 285,0, 0,0, 4059 0,0, 0,0, 0,0, 0,0, 4060 283,0, 281,0, 283,0, 281,0, 4061 284,0, 0,0, 284,0, 0,0, 4062 283,0, 283,0, 0,0, 0,0, 4063 284,0, 284,0, 281,357, 0,0, 4064 285,0, 282,0, 285,0, 282,0, 4065 0,0, 286,0, 286,0, 0,0, 4066 285,0, 285,0, 0,0, 283,0, 4067 0,0, 283,0, 0,0, 284,0, 4068 0,0, 284,0, 282,358, 282,359, 4069 0,0, 0,0, 282,360, 0,0, 4070 0,0, 282,361, 0,0, 285,0, 4071 286,0, 285,0, 286,0, 287,0, 4072 287,0, 0,0, 0,0, 0,0, 4073 286,0, 286,0, 0,0, 0,0, 4074 0,0, 288,0, 288,0, 283,0, 4075 0,0, 283,0, 0,0, 284,0, 4076 0,0, 284,0, 0,0, 0,0, 4077 0,0, 0,0, 287,0, 286,0, 4078 287,0, 286,0, 0,0, 285,0, 4079 0,0, 285,0, 287,0, 287,0, 4080 288,0, 0,0, 288,0, 289,0, 4081 289,0, 0,0, 0,0, 284,362, 4082 288,0, 288,0, 0,0, 0,0, 4083 0,0, 290,0, 290,0, 285,363, 4084 0,0, 287,0, 0,0, 287,0, 4085 0,0, 0,0, 0,0, 286,0, 4086 0,0, 286,0, 289,0, 288,0, 4087 289,0, 288,0, 0,0, 0,0, 4088 0,0, 0,0, 289,0, 289,0, 4089 290,0, 286,364, 290,0, 291,0, 4090 291,0, 0,0, 0,0, 0,0, 4091 290,0, 290,0, 0,0, 0,0, 4092 0,0, 287,0, 0,0, 287,0, 4093 0,0, 289,0, 0,0, 289,0, 4094 0,0, 0,0, 0,0, 288,0, 4095 0,0, 288,0, 291,0, 290,0, 4096 291,0, 290,0, 0,0, 292,0, 4097 292,0, 0,0, 291,0, 291,0, 4098 0,0, 0,0, 0,0, 0,0, 4099 0,0, 293,0, 293,0, 0,0, 4100 294,0, 294,0, 0,0, 0,0, 4101 0,0, 289,0, 0,0, 289,0, 4102 0,0, 291,0, 292,0, 291,0, 4103 292,0, 295,0, 295,0, 290,0, 4104 0,0, 290,0, 292,0, 292,0, 4105 293,0, 0,0, 293,0, 294,0, 4106 290,365, 294,0, 0,0, 0,0, 4107 293,0, 293,0, 0,0, 294,0, 4108 294,0, 0,0, 0,0, 0,0, 4109 295,0, 292,0, 295,0, 292,0, 4110 0,0, 291,0, 0,0, 291,0, 4111 295,0, 295,0, 0,0, 293,0, 4112 0,0, 293,0, 294,0, 0,0, 4113 294,0, 0,0, 0,0, 291,366, 4114 0,0, 0,0, 0,0, 296,89, 4115 0,0, 0,0, 0,0, 295,0, 4116 0,0, 295,0, 0,0, 296,0, 4117 296,0, 292,0, 0,0, 292,0, 4118 0,0, 0,0, 0,0, 0,0, 4119 0,0, 0,0, 0,0, 293,0, 4120 0,0, 293,0, 294,0, 0,0, 4121 294,0, 0,0, 0,0, 0,0, 4122 0,0, 0,0, 296,0, 0,0, 4123 296,0, 297,0, 297,0, 295,0, 4124 0,0, 295,0, 296,0, 296,0, 4125 0,0, 0,0, 296,89, 0,0, 4126 0,0, 295,367, 298,0, 298,0, 4127 0,0, 0,0, 0,0, 0,0, 4128 0,0, 0,0, 0,0, 0,0, 4129 297,0, 296,0, 297,0, 296,0, 4130 0,0, 0,0, 0,0, 0,0, 4131 297,0, 297,0, 0,0, 0,0, 4132 297,0, 298,0, 0,0, 298,0, 4133 299,0, 299,0, 0,0, 0,0, 4134 0,0, 298,0, 298,0, 0,0, 4135 0,0, 298,0, 0,0, 297,0, 4136 0,0, 297,0, 0,0, 0,0, 4137 0,0, 296,0, 0,0, 296,0, 4138 0,0, 0,0, 0,0, 299,0, 4139 298,0, 299,0, 298,0, 0,0, 4140 0,0, 0,0, 0,0, 299,0, 4141 299,0, 300,0, 300,0, 299,0, 4142 296,368, 0,0, 296,369, 0,0, 4143 0,0, 0,0, 0,0, 0,0, 4144 301,0, 301,0, 0,0, 0,0, 4145 0,0, 0,0, 299,0, 0,0, 4146 299,0, 0,0, 0,0, 0,0, 4147 300,0, 0,0, 300,0, 0,0, 4148 0,0, 0,0, 0,0, 297,370, 4149 300,0, 300,0, 298,371, 301,0, 4150 300,0, 301,0, 302,0, 302,0, 4151 0,0, 0,0, 0,0, 301,0, 4152 301,0, 0,0, 0,0, 301,0, 4153 0,0, 0,0, 0,0, 300,0, 4154 0,0, 300,0, 303,0, 303,0, 4155 0,0, 0,0, 0,0, 0,0, 4156 0,0, 302,0, 301,0, 302,0, 4157 301,0, 0,0, 0,0, 0,0, 4158 0,0, 302,0, 302,0, 0,0, 4159 0,0, 302,0, 0,0, 0,0, 4160 0,0, 303,0, 299,372, 303,0, 4161 304,0, 304,0, 0,0, 0,0, 4162 0,0, 303,0, 303,0, 0,0, 4163 302,0, 303,0, 302,0, 0,0, 4164 0,0, 0,0, 0,0, 0,0, 4165 305,0, 305,0, 0,0, 0,0, 4166 0,0, 301,374, 0,0, 304,0, 4167 303,0, 304,0, 303,0, 300,373, 4168 0,0, 0,0, 0,0, 304,0, 4169 304,0, 0,0, 0,0, 304,0, 4170 0,0, 0,0, 0,0, 305,0, 4171 0,0, 305,0, 0,0, 0,0, 4172 306,0, 306,0, 302,375, 305,0, 4173 305,0, 0,0, 304,0, 305,0, 4174 304,0, 0,0, 0,0, 307,0, 4175 307,0, 0,0, 0,0, 0,0, 4176 308,0, 308,0, 0,0, 0,0, 4177 0,0, 303,376, 305,0, 306,0, 4178 305,0, 306,0, 0,0, 0,0, 4179 0,0, 0,0, 0,0, 306,0, 4180 306,0, 0,0, 307,0, 306,0, 4181 307,0, 0,0, 0,0, 308,0, 4182 0,0, 308,0, 307,0, 307,0, 4183 309,0, 309,0, 307,0, 308,0, 4184 308,0, 0,0, 306,0, 308,0, 4185 306,0, 0,0, 0,0, 0,0, 4186 0,0, 0,0, 310,0, 310,0, 4187 0,0, 307,0, 304,377, 307,0, 4188 0,0, 0,0, 308,0, 309,0, 4189 308,0, 309,0, 0,0, 0,0, 4190 0,0, 0,0, 305,378, 309,0, 4191 309,0, 0,0, 0,0, 309,0, 4192 0,0, 310,0, 0,0, 310,0, 4193 0,0, 0,0, 0,0, 0,0, 4194 0,0, 310,0, 310,0, 311,0, 4195 311,0, 310,0, 309,0, 0,0, 4196 309,0, 0,0, 0,0, 306,379, 4197 0,0, 0,0, 312,0, 312,0, 4198 0,0, 0,0, 0,0, 307,380, 4199 310,0, 0,0, 310,0, 0,0, 4200 0,0, 0,0, 311,0, 0,0, 4201 311,0, 0,0, 0,0, 0,0, 4202 313,130, 308,381, 311,0, 311,0, 4203 0,0, 312,0, 311,0, 312,0, 4204 313,0, 313,0, 0,0, 0,0, 4205 0,0, 312,0, 312,0, 0,0, 4206 0,0, 312,0, 0,0, 314,0, 4207 314,0, 311,0, 0,0, 311,0, 4208 315,0, 315,0, 0,0, 0,0, 4209 0,0, 0,0, 0,0, 313,0, 4210 312,0, 313,0, 312,0, 0,0, 4211 309,382, 0,0, 0,0, 313,0, 4212 313,0, 0,0, 314,0, 313,0, 4213 314,0, 310,383, 0,0, 315,0, 4214 0,0, 315,0, 314,0, 314,0, 4215 0,0, 0,0, 314,0, 315,0, 4216 315,0, 0,0, 313,0, 315,0, 4217 313,0, 0,0, 0,0, 311,384, 4218 0,0, 0,0, 316,0, 316,0, 4219 0,0, 314,0, 0,0, 314,0, 4220 0,0, 0,0, 315,0, 0,0, 4221 315,0, 312,385, 0,0, 0,0, 4222 0,0, 0,0, 0,0, 0,0, 4223 0,0, 0,0, 0,0, 0,0, 4224 0,0, 316,0, 313,130, 316,0, 4225 317,0, 317,0, 0,0, 0,0, 4226 0,0, 316,0, 316,0, 0,0, 4227 0,0, 316,0, 0,0, 318,0, 4228 318,0, 0,0, 0,0, 313,386, 4229 313,387, 0,0, 0,0, 313,388, 4230 0,0, 0,0, 313,389, 317,0, 4231 316,0, 317,0, 316,0, 0,0, 4232 0,0, 0,0, 0,0, 317,0, 4233 317,0, 0,0, 318,0, 317,0, 4234 318,0, 0,0, 315,390, 319,0, 4235 319,0, 0,0, 318,0, 318,0, 4236 0,0, 0,0, 318,0, 0,0, 4237 0,0, 0,0, 317,0, 0,0, 4238 317,0, 0,0, 0,0, 320,0, 4239 320,0, 0,0, 0,0, 0,0, 4240 0,0, 318,0, 319,0, 318,0, 4241 319,0, 0,0, 0,0, 0,0, 4242 0,0, 0,0, 319,0, 319,0, 4243 0,0, 0,0, 319,0, 0,0, 4244 316,391, 0,0, 320,0, 0,0, 4245 320,0, 321,0, 321,0, 0,0, 4246 0,0, 0,0, 320,0, 320,0, 4247 0,0, 319,0, 320,0, 319,0, 4248 322,0, 322,0, 0,0, 0,0, 4249 317,392, 323,0, 323,0, 0,0, 4250 0,0, 0,0, 0,0, 0,0, 4251 321,0, 320,0, 321,0, 320,0, 4252 0,0, 0,0, 0,0, 0,0, 4253 321,0, 321,0, 0,0, 322,0, 4254 321,0, 322,0, 0,0, 0,0, 4255 323,0, 0,0, 323,0, 322,0, 4256 322,0, 0,0, 0,0, 322,0, 4257 323,0, 323,0, 0,0, 321,0, 4258 323,0, 321,0, 324,0, 324,0, 4259 0,0, 0,0, 0,0, 325,0, 4260 325,0, 0,0, 322,0, 0,0, 4261 322,0, 0,0, 320,393, 323,0, 4262 0,0, 323,0, 0,0, 0,0, 4263 0,0, 0,0, 0,0, 0,0, 4264 0,0, 324,0, 0,0, 324,0, 4265 0,0, 0,0, 325,0, 0,0, 4266 325,0, 324,0, 324,0, 326,130, 4267 0,0, 324,0, 325,0, 325,0, 4268 337,0, 337,0, 325,0, 326,0, 4269 326,0, 321,394, 0,0, 0,0, 4270 0,0, 0,0, 0,0, 0,0, 4271 324,0, 0,0, 324,0, 0,0, 4272 0,0, 325,0, 0,0, 325,0, 4273 0,0, 0,0, 0,0, 337,0, 4274 0,0, 337,0, 326,0, 0,0, 4275 326,0, 0,0, 0,0, 337,0, 4276 337,0, 0,0, 326,0, 326,0, 4277 0,0, 0,0, 326,0, 338,0, 4278 338,0, 0,0, 339,0, 339,0, 4279 0,0, 0,0, 0,0, 0,0, 4280 0,0, 0,0, 337,0, 0,0, 4281 337,0, 326,0, 0,0, 326,0, 4282 0,0, 0,0, 0,0, 325,395, 4283 0,0, 0,0, 338,0, 0,0, 4284 338,0, 339,0, 0,0, 339,0, 4285 0,0, 0,0, 338,0, 338,0, 4286 0,0, 339,0, 339,0, 0,0, 4287 0,0, 340,0, 340,0, 0,0, 4288 341,0, 341,0, 337,0, 0,0, 4289 337,0, 326,130, 0,0, 0,0, 4290 0,0, 338,0, 0,0, 338,0, 4291 339,0, 0,0, 339,0, 0,0, 4292 0,0, 0,0, 0,0, 0,0, 4293 340,0, 337,407, 340,0, 341,0, 4294 326,396, 341,0, 326,397, 0,0, 4295 340,0, 340,0, 0,0, 341,0, 4296 341,0, 0,0, 0,0, 342,0, 4297 342,0, 0,0, 343,0, 343,0, 4298 0,0, 338,0, 0,0, 338,0, 4299 339,0, 0,0, 339,0, 340,0, 4300 0,0, 340,0, 341,0, 0,0, 4301 341,0, 0,0, 0,0, 0,0, 4302 0,0, 0,0, 342,0, 0,0, 4303 342,0, 343,0, 0,0, 343,0, 4304 0,0, 338,408, 342,0, 342,0, 4305 0,0, 343,0, 343,0, 344,0, 4306 344,0, 0,0, 345,0, 345,0, 4307 0,0, 0,0, 0,0, 340,0, 4308 0,0, 340,0, 341,0, 0,0, 4309 341,0, 342,0, 0,0, 342,0, 4310 343,0, 340,409, 343,0, 0,0, 4311 0,0, 0,0, 344,0, 0,0, 4312 344,0, 345,0, 0,0, 345,0, 4313 0,0, 0,0, 344,0, 344,0, 4314 0,0, 345,0, 345,0, 346,0, 4315 346,0, 0,0, 0,0, 0,0, 4316 0,0, 0,0, 0,0, 0,0, 4317 0,0, 342,0, 0,0, 342,0, 4318 343,0, 344,0, 343,0, 344,0, 4319 345,0, 0,0, 345,0, 0,0, 4320 0,0, 0,0, 346,0, 0,0, 4321 346,0, 0,0, 0,0, 0,0, 4322 0,0, 342,410, 346,0, 346,0, 4323 0,0, 0,0, 0,0, 343,411, 4324 347,0, 347,0, 0,0, 348,0, 4325 348,0, 0,0, 0,0, 0,0, 4326 0,0, 344,0, 0,0, 344,0, 4327 345,0, 346,0, 345,0, 346,0, 4328 0,0, 349,0, 349,0, 0,0, 4329 0,0, 345,412, 0,0, 347,0, 4330 0,0, 347,0, 348,0, 0,0, 4331 348,0, 0,0, 0,0, 347,0, 4332 347,0, 0,0, 348,0, 348,0, 4333 0,0, 0,0, 0,0, 0,0, 4334 349,0, 0,0, 349,0, 0,0, 4335 0,0, 346,0, 0,0, 346,0, 4336 349,0, 349,0, 347,0, 0,0, 4337 347,0, 348,0, 0,0, 348,0, 4338 0,0, 0,0, 346,413, 0,0, 4339 0,0, 0,0, 0,0, 350,0, 4340 350,0, 0,0, 0,0, 349,0, 4341 0,0, 349,0, 0,0, 0,0, 4342 0,0, 0,0, 0,0, 0,0, 4343 0,0, 351,0, 351,0, 0,0, 4344 352,0, 352,0, 347,0, 0,0, 4345 347,0, 348,0, 350,0, 348,0, 4346 350,0, 0,0, 0,0, 348,415, 4347 347,414, 0,0, 350,0, 350,0, 4348 0,0, 0,0, 0,0, 349,0, 4349 351,0, 349,0, 351,0, 352,0, 4350 0,0, 352,0, 0,0, 0,0, 4351 351,0, 351,0, 0,0, 352,0, 4352 352,0, 350,0, 0,0, 350,0, 4353 0,0, 353,0, 353,0, 0,0, 4354 0,0, 0,0, 0,0, 0,0, 4355 0,0, 349,416, 0,0, 351,0, 4356 0,0, 351,0, 352,0, 0,0, 4357 352,0, 0,0, 0,0, 0,0, 4358 0,0, 0,0, 0,0, 0,0, 4359 353,0, 0,0, 353,0, 354,0, 4360 354,0, 350,0, 0,0, 350,0, 4361 353,0, 353,0, 0,0, 0,0, 4362 0,0, 0,0, 0,0, 350,417, 4363 355,0, 355,0, 0,0, 351,0, 4364 0,0, 351,0, 352,0, 0,0, 4365 352,0, 0,0, 354,0, 353,0, 4366 354,0, 353,0, 0,0, 352,419, 4367 0,0, 0,0, 354,0, 354,0, 4368 351,418, 0,0, 0,0, 355,0, 4369 0,0, 355,0, 356,0, 356,0, 4370 0,0, 0,0, 0,0, 355,0, 4371 355,0, 0,0, 0,0, 0,0, 4372 0,0, 354,0, 0,0, 354,0, 4373 0,0, 357,0, 357,0, 353,0, 4374 0,0, 353,0, 0,0, 0,0, 4375 0,0, 356,0, 355,0, 356,0, 4376 355,0, 0,0, 358,0, 358,0, 4377 0,0, 356,0, 356,0, 0,0, 4378 0,0, 0,0, 0,0, 0,0, 4379 357,0, 0,0, 357,0, 0,0, 4380 353,420, 354,0, 0,0, 354,0, 4381 357,0, 357,0, 0,0, 0,0, 4382 356,0, 358,0, 356,0, 358,0, 4383 0,0, 0,0, 355,0, 0,0, 4384 355,0, 358,0, 358,0, 0,0, 4385 0,0, 0,0, 354,421, 357,0, 4386 0,0, 357,0, 0,0, 359,0, 4387 359,0, 0,0, 0,0, 360,0, 4388 360,0, 0,0, 0,0, 355,422, 4389 358,0, 0,0, 358,0, 0,0, 4390 356,0, 0,0, 356,0, 0,0, 4391 0,0, 0,0, 0,0, 0,0, 4392 0,0, 356,423, 359,0, 0,0, 4393 359,0, 0,0, 360,0, 357,0, 4394 360,0, 357,0, 359,0, 359,0, 4395 0,0, 0,0, 360,0, 360,0, 4396 361,89, 0,0, 0,0, 0,0, 4397 358,0, 0,0, 358,0, 0,0, 4398 361,0, 361,0, 0,0, 0,0, 4399 0,0, 359,0, 0,0, 359,0, 4400 0,0, 360,0, 0,0, 360,0, 4401 0,0, 0,0, 0,0, 362,0, 4402 362,0, 0,0, 0,0, 0,0, 4403 0,0, 0,0, 0,0, 361,0, 4404 358,424, 361,0, 363,0, 363,0, 4405 0,0, 0,0, 0,0, 361,0, 4406 361,0, 0,0, 0,0, 361,89, 4407 0,0, 359,0, 362,0, 359,0, 4408 362,0, 360,0, 0,0, 360,0, 4409 0,0, 0,0, 362,0, 362,0, 4410 0,0, 363,0, 361,0, 363,0, 4411 361,0, 0,0, 364,0, 364,0, 4412 0,0, 363,0, 363,0, 0,0, 4413 0,0, 359,425, 0,0, 0,0, 4414 360,426, 362,0, 0,0, 362,0, 4415 0,0, 0,0, 0,0, 365,0, 4416 365,0, 0,0, 0,0, 0,0, 4417 363,0, 364,0, 363,0, 364,0, 4418 0,0, 0,0, 361,0, 0,0, 4419 361,0, 364,0, 364,0, 0,0, 4420 0,0, 0,0, 0,0, 0,0, 4421 361,427, 0,0, 365,0, 361,428, 4422 365,0, 362,0, 0,0, 362,0, 4423 0,0, 0,0, 365,0, 365,0, 4424 364,0, 0,0, 364,0, 0,0, 4425 363,0, 0,0, 363,0, 0,0, 4426 0,0, 0,0, 366,0, 366,0, 4427 0,0, 367,0, 367,0, 0,0, 4428 0,0, 365,0, 0,0, 365,0, 4429 0,0, 0,0, 0,0, 363,429, 4430 0,0, 0,0, 0,0, 368,0, 4431 368,0, 0,0, 0,0, 0,0, 4432 364,0, 366,0, 364,0, 366,0, 4433 367,0, 0,0, 367,0, 0,0, 4434 364,430, 366,0, 366,0, 0,0, 4435 367,0, 367,0, 0,0, 0,0, 4436 0,0, 365,0, 368,0, 365,0, 4437 368,0, 369,0, 369,0, 0,0, 4438 0,0, 0,0, 368,0, 368,0, 4439 366,0, 0,0, 366,0, 367,0, 4440 0,0, 367,0, 0,0, 0,0, 4441 0,0, 0,0, 0,0, 0,0, 4442 0,0, 0,0, 0,0, 365,431, 4443 369,0, 368,0, 369,0, 368,0, 4444 0,0, 370,0, 370,0, 0,0, 4445 369,0, 369,0, 0,0, 0,0, 4446 0,0, 0,0, 0,0, 0,0, 4447 366,0, 0,0, 366,0, 367,0, 4448 0,0, 367,0, 366,432, 0,0, 4449 0,0, 0,0, 0,0, 369,0, 4450 370,0, 369,0, 370,0, 371,0, 4451 371,0, 368,0, 0,0, 368,0, 4452 370,0, 370,0, 0,0, 368,433, 4453 370,0, 0,0, 0,0, 0,0, 4454 372,0, 372,0, 0,0, 0,0, 4455 0,0, 0,0, 0,0, 0,0, 4456 0,0, 0,0, 371,0, 370,0, 4457 371,0, 370,0, 0,0, 369,0, 4458 0,0, 369,0, 371,0, 371,0, 4459 0,0, 369,434, 371,0, 372,0, 4460 0,0, 372,0, 373,0, 373,0, 4461 0,0, 0,0, 0,0, 372,0, 4462 372,0, 0,0, 0,0, 372,0, 4463 0,0, 371,0, 0,0, 371,0, 4464 0,0, 0,0, 0,0, 0,0, 4465 0,0, 0,0, 0,0, 0,0, 4466 0,0, 373,0, 372,0, 373,0, 4467 372,0, 0,0, 374,0, 374,0, 4468 0,0, 373,0, 373,0, 375,0, 4469 375,0, 373,0, 370,435, 0,0, 4470 0,0, 0,0, 0,0, 0,0, 4471 0,0, 0,0, 0,0, 0,0, 4472 0,0, 0,0, 0,0, 0,0, 4473 373,0, 374,0, 373,0, 374,0, 4474 0,0, 0,0, 375,0, 0,0, 4475 375,0, 374,0, 374,0, 376,0, 4476 376,0, 374,0, 375,0, 375,0, 4477 372,437, 371,436, 375,0, 0,0, 4478 0,0, 0,0, 377,0, 377,0, 4479 0,0, 0,0, 0,0, 0,0, 4480 374,0, 0,0, 374,0, 0,0, 4481 0,0, 375,0, 376,0, 375,0, 4482 376,0, 0,0, 0,0, 0,0, 4483 0,0, 0,0, 376,0, 376,0, 4484 0,0, 377,0, 376,0, 377,0, 4485 0,0, 0,0, 378,0, 378,0, 4486 0,0, 377,0, 377,0, 0,0, 4487 0,0, 377,0, 0,0, 0,0, 4488 0,0, 376,0, 0,0, 376,0, 4489 379,0, 379,0, 0,0, 0,0, 4490 0,0, 0,0, 0,0, 0,0, 4491 377,0, 378,0, 377,0, 378,0, 4492 0,0, 0,0, 380,0, 380,0, 4493 374,438, 378,0, 378,0, 0,0, 4494 0,0, 378,0, 0,0, 379,0, 4495 375,439, 379,0, 0,0, 0,0, 4496 0,0, 0,0, 0,0, 379,0, 4497 379,0, 0,0, 0,0, 379,0, 4498 378,0, 380,0, 378,0, 380,0, 4499 381,0, 381,0, 0,0, 0,0, 4500 0,0, 380,0, 380,0, 0,0, 4501 0,0, 380,0, 379,0, 0,0, 4502 379,0, 377,440, 382,0, 382,0, 4503 0,0, 0,0, 0,0, 0,0, 4504 0,0, 0,0, 0,0, 381,0, 4505 380,0, 381,0, 380,0, 0,0, 4506 0,0, 0,0, 0,0, 381,0, 4507 381,0, 0,0, 0,0, 381,0, 4508 0,0, 382,0, 0,0, 382,0, 4509 0,0, 0,0, 0,0, 0,0, 4510 0,0, 382,0, 382,0, 383,0, 4511 383,0, 382,0, 381,0, 0,0, 4512 381,0, 0,0, 378,441, 0,0, 4513 0,0, 0,0, 0,0, 379,442, 4514 384,0, 384,0, 0,0, 0,0, 4515 382,0, 380,443, 382,0, 0,0, 4516 0,0, 0,0, 383,0, 0,0, 4517 383,0, 385,0, 385,0, 0,0, 4518 0,0, 0,0, 383,0, 383,0, 4519 0,0, 0,0, 383,0, 384,0, 4520 0,0, 384,0, 0,0, 0,0, 4521 0,0, 0,0, 0,0, 384,0, 4522 384,0, 0,0, 0,0, 384,0, 4523 385,0, 383,0, 385,0, 383,0, 4524 0,0, 0,0, 0,0, 0,0, 4525 385,0, 385,0, 0,0, 381,444, 4526 385,0, 0,0, 384,0, 0,0, 4527 384,0, 386,0, 386,0, 0,0, 4528 0,0, 382,445, 0,0, 0,0, 4529 0,0, 0,0, 0,0, 385,0, 4530 0,0, 385,0, 0,0, 0,0, 4531 0,0, 387,0, 387,0, 0,0, 4532 0,0, 0,0, 0,0, 0,0, 4533 386,0, 0,0, 386,0, 0,0, 4534 0,0, 0,0, 0,0, 0,0, 4535 386,0, 386,0, 0,0, 0,0, 4536 386,0, 0,0, 383,446, 384,447, 4537 387,0, 0,0, 387,0, 388,0, 4538 388,0, 0,0, 389,130, 0,0, 4539 387,0, 387,0, 0,0, 386,0, 4540 387,0, 386,0, 389,0, 389,0, 4541 0,0, 0,0, 0,0, 0,0, 4542 0,0, 0,0, 0,0, 0,0, 4543 0,0, 0,0, 388,0, 387,0, 4544 388,0, 387,0, 0,0, 0,0, 4545 0,0, 0,0, 388,0, 388,0, 4546 0,0, 389,0, 388,0, 389,0, 4547 0,0, 0,0, 390,0, 390,0, 4548 0,0, 389,0, 389,0, 391,0, 4549 391,0, 389,0, 0,0, 0,0, 4550 0,0, 388,0, 0,0, 388,0, 4551 0,0, 0,0, 0,0, 0,0, 4552 0,0, 0,0, 0,0, 0,0, 4553 389,0, 390,0, 389,0, 390,0, 4554 0,0, 0,0, 391,0, 386,448, 4555 391,0, 390,0, 390,0, 0,0, 4556 0,0, 390,0, 391,0, 391,0, 4557 392,0, 392,0, 391,0, 387,449, 4558 0,0, 0,0, 0,0, 0,0, 4559 0,0, 0,0, 0,0, 0,0, 4560 390,0, 0,0, 390,0, 0,0, 4561 389,130, 391,0, 0,0, 391,0, 4562 0,0, 0,0, 0,0, 392,0, 4563 0,0, 392,0, 389,451, 0,0, 4564 388,450, 389,452, 0,0, 392,0, 4565 392,0, 0,0, 0,0, 392,0, 4566 0,0, 0,0, 0,0, 393,0, 4567 393,0, 0,0, 0,0, 0,0, 4568 394,0, 394,0, 0,0, 0,0, 4569 0,0, 0,0, 392,0, 0,0, 4570 392,0, 0,0, 0,0, 0,0, 4571 0,0, 0,0, 0,0, 0,0, 4572 0,0, 0,0, 393,0, 0,0, 4573 393,0, 0,0, 0,0, 394,0, 4574 391,453, 394,0, 393,0, 393,0, 4575 395,0, 395,0, 393,0, 394,0, 4576 394,0, 396,0, 396,0, 394,0, 4577 0,0, 0,0, 0,0, 0,0, 4578 0,0, 0,0, 0,0, 0,0, 4579 0,0, 393,0, 392,454, 393,0, 4580 0,0, 0,0, 394,0, 395,0, 4581 394,0, 395,0, 0,0, 0,0, 4582 396,0, 0,0, 396,0, 395,0, 4583 395,0, 397,0, 397,0, 395,0, 4584 396,0, 396,0, 407,0, 407,0, 4585 396,0, 0,0, 0,0, 0,0, 4586 0,0, 0,0, 0,0, 0,0, 4587 408,0, 408,0, 395,0, 0,0, 4588 395,0, 0,0, 0,0, 396,0, 4589 397,0, 396,0, 397,0, 0,0, 4590 394,456, 407,0, 0,0, 407,0, 4591 397,0, 397,0, 0,0, 0,0, 4592 397,0, 407,0, 407,0, 408,0, 4593 0,0, 408,0, 0,0, 393,455, 4594 409,0, 409,0, 0,0, 408,0, 4595 408,0, 410,0, 410,0, 397,0, 4596 0,0, 397,0, 411,0, 411,0, 4597 407,0, 0,0, 407,0, 0,0, 4598 0,0, 396,457, 0,0, 0,0, 4599 0,0, 0,0, 408,0, 409,0, 4600 408,0, 409,0, 0,0, 0,0, 4601 410,0, 0,0, 410,0, 409,0, 4602 409,0, 411,0, 0,0, 411,0, 4603 410,0, 410,0, 412,0, 412,0, 4604 0,0, 411,0, 411,0, 0,0, 4605 407,0, 397,458, 407,0, 0,0, 4606 413,0, 413,0, 409,0, 0,0, 4607 409,0, 0,0, 408,0, 410,0, 4608 408,0, 410,0, 0,0, 0,0, 4609 411,0, 412,0, 411,0, 412,0, 4610 0,0, 0,0, 0,0, 0,0, 4611 0,0, 412,0, 412,0, 413,0, 4612 0,0, 413,0, 412,463, 0,0, 4613 0,0, 0,0, 408,459, 413,0, 4614 413,0, 0,0, 409,0, 0,0, 4615 409,0, 414,0, 414,0, 410,0, 4616 412,0, 410,0, 412,0, 409,460, 4617 411,0, 0,0, 411,0, 0,0, 4618 415,0, 415,0, 413,0, 0,0, 4619 413,0, 0,0, 0,0, 0,0, 4620 411,462, 0,0, 0,0, 410,461, 4621 414,0, 0,0, 414,0, 0,0, 4622 0,0, 0,0, 0,0, 0,0, 4623 414,0, 414,0, 0,0, 415,0, 4624 412,0, 415,0, 412,0, 0,0, 4625 416,0, 416,0, 0,0, 415,0, 4626 415,0, 0,0, 413,0, 0,0, 4627 413,0, 0,0, 0,0, 414,0, 4628 413,464, 414,0, 0,0, 417,0, 4629 417,0, 0,0, 0,0, 0,0, 4630 0,0, 0,0, 415,0, 416,0, 4631 415,0, 416,0, 418,0, 418,0, 4632 0,0, 0,0, 0,0, 416,0, 4633 416,0, 0,0, 0,0, 0,0, 4634 0,0, 0,0, 417,0, 0,0, 4635 417,0, 419,0, 419,0, 414,0, 4636 0,0, 414,0, 417,0, 417,0, 4637 0,0, 418,0, 416,0, 418,0, 4638 416,0, 0,0, 415,0, 0,0, 4639 415,0, 418,0, 418,0, 0,0, 4640 0,0, 0,0, 0,0, 0,0, 4641 419,0, 417,0, 419,0, 417,0, 4642 414,465, 420,0, 420,0, 0,0, 4643 419,0, 419,0, 0,0, 0,0, 4644 418,0, 0,0, 418,0, 415,466, 4645 421,0, 421,0, 416,0, 0,0, 4646 416,0, 0,0, 0,0, 0,0, 4647 0,0, 0,0, 0,0, 419,0, 4648 420,0, 419,0, 420,0, 422,0, 4649 422,0, 417,0, 0,0, 417,0, 4650 420,0, 420,0, 0,0, 421,0, 4651 0,0, 421,0, 0,0, 416,467, 4652 418,0, 0,0, 418,0, 421,0, 4653 421,0, 0,0, 0,0, 0,0, 4654 0,0, 0,0, 422,0, 420,0, 4655 422,0, 420,0, 0,0, 419,0, 4656 0,0, 419,0, 422,0, 422,0, 4657 418,468, 0,0, 421,0, 0,0, 4658 421,0, 0,0, 0,0, 423,0, 4659 423,0, 0,0, 424,0, 424,0, 4660 0,0, 0,0, 0,0, 0,0, 4661 0,0, 422,0, 0,0, 422,0, 4662 0,0, 0,0, 0,0, 420,0, 4663 0,0, 420,0, 0,0, 0,0, 4664 0,0, 420,469, 423,0, 0,0, 4665 423,0, 424,0, 421,0, 424,0, 4666 421,0, 0,0, 423,0, 423,0, 4667 0,0, 424,0, 424,0, 0,0, 4668 421,470, 425,0, 425,0, 0,0, 4669 0,0, 422,0, 0,0, 422,0, 4670 0,0, 0,0, 0,0, 0,0, 4671 0,0, 423,0, 0,0, 423,0, 4672 424,0, 0,0, 424,0, 0,0, 4673 0,0, 0,0, 0,0, 0,0, 4674 425,0, 0,0, 425,0, 0,0, 4675 422,471, 426,0, 426,0, 0,0, 4676 425,0, 425,0, 427,0, 427,0, 4677 0,0, 0,0, 0,0, 428,0, 4678 428,0, 0,0, 0,0, 0,0, 4679 0,0, 423,0, 0,0, 423,0, 4680 424,0, 0,0, 424,0, 425,0, 4681 426,0, 425,0, 426,0, 0,0, 4682 0,0, 427,0, 0,0, 427,0, 4683 426,0, 426,0, 428,0, 0,0, 4684 428,0, 427,0, 427,0, 429,0, 4685 429,0, 424,472, 428,0, 428,0, 4686 0,0, 0,0, 0,0, 0,0, 4687 0,0, 430,0, 430,0, 426,0, 4688 0,0, 426,0, 0,0, 425,0, 4689 427,0, 425,0, 427,0, 0,0, 4690 0,0, 428,0, 429,0, 428,0, 4691 429,0, 0,0, 0,0, 425,473, 4692 0,0, 0,0, 429,0, 429,0, 4693 430,0, 0,0, 430,0, 0,0, 4694 0,0, 431,0, 431,0, 0,0, 4695 430,0, 430,0, 0,0, 426,0, 4696 0,0, 426,0, 0,0, 0,0, 4697 427,0, 429,0, 427,0, 429,0, 4698 0,0, 428,0, 0,0, 428,0, 4699 0,0, 0,0, 0,0, 430,0, 4700 431,0, 430,0, 431,0, 426,474, 4701 0,0, 0,0, 427,475, 0,0, 4702 431,0, 431,0, 0,0, 428,476, 4703 0,0, 0,0, 0,0, 432,0, 4704 432,0, 0,0, 433,0, 433,0, 4705 0,0, 429,0, 0,0, 429,0, 4706 0,0, 0,0, 0,0, 431,0, 4707 0,0, 431,0, 0,0, 430,0, 4708 0,0, 430,0, 0,0, 0,0, 4709 0,0, 430,478, 432,0, 0,0, 4710 432,0, 433,0, 0,0, 433,0, 4711 0,0, 429,477, 432,0, 432,0, 4712 0,0, 433,0, 433,0, 0,0, 4713 0,0, 0,0, 434,0, 434,0, 4714 0,0, 435,0, 435,0, 431,0, 4715 0,0, 431,0, 0,0, 0,0, 4716 0,0, 432,0, 0,0, 432,0, 4717 433,0, 0,0, 433,0, 0,0, 4718 0,0, 0,0, 0,0, 0,0, 4719 431,479, 434,0, 0,0, 434,0, 4720 435,0, 0,0, 435,0, 0,0, 4721 0,0, 434,0, 434,0, 0,0, 4722 435,0, 435,0, 436,0, 436,0, 4723 435,0, 0,0, 0,0, 0,0, 4724 0,0, 432,0, 0,0, 432,0, 4725 433,0, 0,0, 433,0, 0,0, 4726 434,0, 0,0, 434,0, 435,0, 4727 0,0, 435,0, 0,0, 0,0, 4728 0,0, 436,0, 432,480, 436,0, 4729 437,0, 437,0, 433,481, 0,0, 4730 0,0, 436,0, 436,0, 0,0, 4731 0,0, 436,0, 0,0, 438,0, 4732 438,0, 0,0, 0,0, 0,0, 4733 439,0, 439,0, 0,0, 0,0, 4734 434,0, 0,0, 434,0, 437,0, 4735 436,0, 437,0, 436,0, 0,0, 4736 0,0, 0,0, 0,0, 437,0, 4737 437,0, 0,0, 438,0, 437,0, 4738 438,0, 0,0, 0,0, 439,0, 4739 0,0, 439,0, 438,0, 438,0, 4740 0,0, 434,482, 438,0, 439,0, 4741 439,0, 0,0, 437,0, 439,0, 4742 437,0, 440,0, 440,0, 0,0, 4743 0,0, 0,0, 0,0, 0,0, 4744 0,0, 438,0, 0,0, 438,0, 4745 441,0, 441,0, 439,0, 0,0, 4746 439,0, 0,0, 0,0, 0,0, 4747 0,0, 0,0, 0,0, 0,0, 4748 440,0, 0,0, 440,0, 0,0, 4749 436,483, 0,0, 0,0, 0,0, 4750 440,0, 440,0, 0,0, 441,0, 4751 440,0, 441,0, 0,0, 437,484, 4752 442,0, 442,0, 0,0, 441,0, 4753 441,0, 443,0, 443,0, 441,0, 4754 0,0, 0,0, 0,0, 440,0, 4755 0,0, 440,0, 0,0, 0,0, 4756 444,0, 444,0, 439,486, 0,0, 4757 0,0, 438,485, 441,0, 442,0, 4758 441,0, 442,0, 0,0, 0,0, 4759 443,0, 0,0, 443,0, 442,0, 4760 442,0, 0,0, 0,0, 442,0, 4761 443,0, 443,0, 0,0, 444,0, 4762 443,0, 444,0, 445,0, 445,0, 4763 0,0, 0,0, 0,0, 444,0, 4764 444,0, 440,487, 442,0, 444,0, 4765 442,0, 446,0, 446,0, 443,0, 4766 0,0, 443,0, 447,0, 447,0, 4767 0,0, 0,0, 0,0, 0,0, 4768 0,0, 445,0, 444,0, 445,0, 4769 444,0, 0,0, 0,0, 0,0, 4770 0,0, 445,0, 445,0, 0,0, 4771 446,0, 445,0, 446,0, 441,488, 4772 0,0, 447,0, 0,0, 447,0, 4773 446,0, 446,0, 448,0, 448,0, 4774 446,0, 447,0, 447,0, 0,0, 4775 445,0, 447,0, 445,0, 0,0, 4776 0,0, 449,0, 449,0, 0,0, 4777 0,0, 0,0, 442,489, 446,0, 4778 444,490, 446,0, 0,0, 0,0, 4779 447,0, 448,0, 447,0, 448,0, 4780 0,0, 0,0, 0,0, 0,0, 4781 0,0, 448,0, 448,0, 0,0, 4782 449,0, 448,0, 449,0, 0,0, 4783 0,0, 450,0, 450,0, 0,0, 4784 449,0, 449,0, 451,0, 451,0, 4785 449,0, 0,0, 445,491, 0,0, 4786 448,0, 0,0, 448,0, 0,0, 4787 0,0, 0,0, 0,0, 0,0, 4788 0,0, 0,0, 0,0, 449,0, 4789 450,0, 449,0, 450,0, 0,0, 4790 0,0, 451,0, 0,0, 451,0, 4791 450,0, 450,0, 446,492, 0,0, 4792 450,0, 451,0, 451,0, 452,0, 4793 452,0, 451,0, 0,0, 0,0, 4794 0,0, 0,0, 0,0, 0,0, 4795 0,0, 0,0, 0,0, 450,0, 4796 0,0, 450,0, 0,0, 0,0, 4797 451,0, 0,0, 451,0, 0,0, 4798 0,0, 0,0, 452,0, 0,0, 4799 452,0, 448,493, 0,0, 449,494, 4800 0,0, 0,0, 452,0, 452,0, 4801 0,0, 0,0, 452,0, 0,0, 4802 453,0, 453,0, 0,0, 0,0, 4803 0,0, 0,0, 0,0, 0,0, 4804 0,0, 0,0, 0,0, 0,0, 4805 0,0, 452,0, 0,0, 452,0, 4806 454,0, 454,0, 0,0, 0,0, 4807 0,0, 0,0, 0,0, 453,0, 4808 0,0, 453,0, 0,0, 450,495, 4809 0,0, 0,0, 451,496, 453,0, 4810 453,0, 0,0, 0,0, 453,0, 4811 0,0, 0,0, 0,0, 454,0, 4812 0,0, 454,0, 455,0, 455,0, 4813 0,0, 0,0, 0,0, 454,0, 4814 454,0, 0,0, 453,0, 454,0, 4815 453,0, 456,0, 456,0, 0,0, 4816 0,0, 0,0, 457,0, 457,0, 4817 0,0, 0,0, 0,0, 452,497, 4818 0,0, 455,0, 454,0, 455,0, 4819 454,0, 0,0, 0,0, 0,0, 4820 0,0, 455,0, 455,0, 0,0, 4821 456,0, 455,0, 456,0, 0,0, 4822 0,0, 457,0, 0,0, 457,0, 4823 456,0, 456,0, 458,0, 458,0, 4824 456,0, 457,0, 457,0, 0,0, 4825 455,0, 457,0, 455,0, 0,0, 4826 0,0, 459,0, 459,0, 0,0, 4827 0,0, 460,0, 460,0, 456,0, 4828 454,499, 456,0, 453,498, 0,0, 4829 457,0, 458,0, 457,0, 458,0, 4830 0,0, 0,0, 0,0, 0,0, 4831 0,0, 458,0, 458,0, 0,0, 4832 459,0, 458,0, 459,0, 0,0, 4833 460,0, 0,0, 460,0, 0,0, 4834 459,0, 459,0, 0,0, 0,0, 4835 460,0, 460,0, 461,0, 461,0, 4836 458,0, 460,504, 458,0, 462,0, 4837 462,0, 455,500, 0,0, 0,0, 4838 0,0, 0,0, 0,0, 459,0, 4839 0,0, 459,0, 0,0, 460,0, 4840 456,501, 460,0, 0,0, 0,0, 4841 0,0, 461,0, 457,502, 461,0, 4842 0,0, 0,0, 462,0, 0,0, 4843 462,0, 461,0, 461,0, 463,89, 4844 0,0, 0,0, 462,0, 462,0, 4845 464,0, 464,0, 0,0, 463,0, 4846 463,0, 0,0, 0,0, 459,0, 4847 0,0, 459,0, 0,0, 460,0, 4848 461,0, 460,0, 461,0, 0,0, 4849 0,0, 462,0, 0,0, 462,0, 4850 0,0, 458,503, 0,0, 464,0, 4851 0,0, 464,0, 463,0, 0,0, 4852 463,0, 0,0, 0,0, 464,0, 4853 464,0, 0,0, 463,0, 463,0, 4854 465,0, 465,0, 463,89, 466,0, 4855 466,0, 0,0, 0,0, 0,0, 4856 461,0, 0,0, 461,0, 0,0, 4857 0,0, 462,0, 464,0, 462,0, 4858 464,0, 463,0, 0,0, 463,0, 4859 0,0, 0,0, 0,0, 465,0, 4860 0,0, 465,0, 466,0, 0,0, 4861 466,0, 0,0, 0,0, 465,0, 4862 465,0, 461,505, 466,0, 466,0, 4863 0,0, 462,506, 0,0, 467,0, 4864 467,0, 0,0, 0,0, 0,0, 4865 0,0, 0,0, 464,0, 0,0, 4866 464,0, 463,0, 465,0, 463,0, 4867 465,0, 466,0, 0,0, 466,0, 4868 0,0, 463,507, 0,0, 0,0, 4869 0,0, 0,0, 467,0, 0,0, 4870 467,0, 468,0, 468,0, 463,508, 4871 0,0, 464,509, 467,0, 467,0, 4872 0,0, 0,0, 0,0, 469,0, 4873 469,0, 0,0, 470,0, 470,0, 4874 0,0, 0,0, 465,0, 0,0, 4875 465,0, 466,0, 0,0, 466,0, 4876 468,0, 467,0, 468,0, 467,0, 4877 0,0, 0,0, 0,0, 466,510, 4878 468,0, 468,0, 469,0, 0,0, 4879 469,0, 470,0, 0,0, 470,0, 4880 0,0, 0,0, 469,0, 469,0, 4881 0,0, 470,0, 470,0, 471,0, 4882 471,0, 0,0, 0,0, 468,0, 4883 0,0, 468,0, 0,0, 0,0, 4884 0,0, 467,0, 0,0, 467,0, 4885 0,0, 469,0, 0,0, 469,0, 4886 470,0, 0,0, 470,0, 467,511, 4887 0,0, 0,0, 471,0, 0,0, 4888 471,0, 0,0, 0,0, 0,0, 4889 0,0, 0,0, 471,0, 471,0, 4890 0,0, 0,0, 0,0, 468,0, 4891 0,0, 468,0, 0,0, 0,0, 4892 0,0, 0,0, 472,0, 472,0, 4893 0,0, 469,0, 0,0, 469,0, 4894 470,0, 471,0, 470,0, 471,0, 4895 0,0, 473,0, 473,0, 0,0, 4896 0,0, 0,0, 0,0, 0,0, 4897 0,0, 0,0, 0,0, 468,512, 4898 469,513, 472,0, 0,0, 472,0, 4899 474,0, 474,0, 0,0, 0,0, 4900 0,0, 472,0, 472,0, 0,0, 4901 473,0, 0,0, 473,0, 475,0, 4902 475,0, 471,0, 0,0, 471,0, 4903 473,0, 473,0, 0,0, 0,0, 4904 0,0, 473,516, 0,0, 474,0, 4905 472,0, 474,0, 472,0, 471,514, 4906 0,0, 0,0, 0,0, 474,0, 4907 474,0, 0,0, 475,0, 473,0, 4908 475,0, 473,0, 0,0, 476,0, 4909 476,0, 0,0, 475,0, 475,0, 4910 0,0, 0,0, 0,0, 475,518, 4911 0,0, 0,0, 474,0, 0,0, 4912 474,0, 0,0, 477,0, 477,0, 4913 472,0, 0,0, 472,0, 0,0, 4914 0,0, 475,0, 476,0, 475,0, 4915 476,0, 0,0, 0,0, 473,0, 4916 0,0, 473,0, 476,0, 476,0, 4917 0,0, 0,0, 0,0, 476,519, 4918 0,0, 477,0, 0,0, 477,0, 4919 472,515, 0,0, 474,0, 0,0, 4920 474,0, 477,0, 477,0, 478,0, 4921 478,0, 476,0, 474,517, 476,0, 4922 0,0, 475,0, 0,0, 475,0, 4923 0,0, 479,0, 479,0, 0,0, 4924 0,0, 480,0, 480,0, 0,0, 4925 477,0, 0,0, 477,0, 0,0, 4926 0,0, 0,0, 478,0, 0,0, 4927 478,0, 0,0, 0,0, 0,0, 4928 0,0, 0,0, 478,0, 478,0, 4929 479,0, 476,0, 479,0, 476,0, 4930 480,0, 0,0, 480,0, 0,0, 4931 479,0, 479,0, 0,0, 0,0, 4932 480,0, 480,0, 0,0, 0,0, 4933 477,0, 478,0, 477,0, 478,0, 4934 0,0, 0,0, 481,0, 481,0, 4935 0,0, 482,0, 482,0, 479,0, 4936 0,0, 479,0, 0,0, 480,0, 4937 0,0, 480,0, 0,0, 0,0, 4938 0,0, 0,0, 0,0, 0,0, 4939 0,0, 0,0, 0,0, 0,0, 4940 0,0, 481,0, 0,0, 481,0, 4941 482,0, 478,0, 482,0, 478,0, 4942 0,0, 481,0, 481,0, 0,0, 4943 482,0, 482,0, 0,0, 479,0, 4944 0,0, 479,0, 0,0, 480,0, 4945 0,0, 480,0, 478,520, 483,0, 4946 483,0, 0,0, 0,0, 0,0, 4947 481,0, 479,521, 481,0, 482,0, 4948 0,0, 482,0, 0,0, 0,0, 4949 484,0, 484,0, 0,0, 0,0, 4950 0,0, 0,0, 0,0, 0,0, 4951 0,0, 0,0, 483,0, 0,0, 4952 483,0, 0,0, 0,0, 0,0, 4953 0,0, 0,0, 483,0, 483,0, 4954 0,0, 0,0, 483,0, 484,0, 4955 481,0, 484,0, 481,0, 482,0, 4956 0,0, 482,0, 0,0, 484,0, 4957 484,0, 0,0, 481,522, 484,0, 4958 484,524, 483,0, 0,0, 483,0, 4959 482,523, 485,0, 485,0, 0,0, 4960 0,0, 0,0, 486,0, 486,0, 4961 0,0, 0,0, 484,0, 0,0, 4962 484,0, 0,0, 0,0, 0,0, 4963 0,0, 487,0, 487,0, 0,0, 4964 0,0, 0,0, 0,0, 0,0, 4965 485,0, 0,0, 485,0, 0,0, 4966 0,0, 486,0, 0,0, 486,0, 4967 485,0, 485,0, 0,0, 0,0, 4968 485,0, 486,0, 486,0, 0,0, 4969 487,0, 486,0, 487,0, 488,0, 4970 488,0, 0,0, 0,0, 0,0, 4971 487,0, 487,0, 0,0, 485,0, 4972 487,0, 485,0, 489,0, 489,0, 4973 486,0, 0,0, 486,0, 490,0, 4974 490,0, 0,0, 0,0, 0,0, 4975 0,0, 0,0, 488,0, 487,0, 4976 488,0, 487,0, 0,0, 0,0, 4977 0,0, 0,0, 488,0, 488,0, 4978 0,0, 489,0, 488,0, 489,0, 4979 0,0, 0,0, 490,0, 0,0, 4980 490,0, 489,0, 489,0, 0,0, 4981 0,0, 489,0, 490,0, 490,0, 4982 0,0, 488,0, 490,0, 488,0, 4983 491,0, 491,0, 0,0, 0,0, 4984 0,0, 492,0, 492,0, 0,0, 4985 489,0, 0,0, 489,0, 0,0, 4986 485,525, 490,0, 0,0, 490,0, 4987 486,526, 0,0, 0,0, 0,0, 4988 0,0, 0,0, 0,0, 491,0, 4989 0,0, 491,0, 487,527, 0,0, 4990 492,0, 0,0, 492,0, 491,0, 4991 491,0, 0,0, 0,0, 491,0, 4992 492,0, 492,0, 0,0, 488,528, 4993 492,0, 0,0, 493,0, 493,0, 4994 0,0, 0,0, 0,0, 494,0, 4995 494,0, 0,0, 491,0, 0,0, 4996 491,0, 0,0, 0,0, 492,0, 4997 0,0, 492,0, 0,0, 0,0, 4998 0,0, 0,0, 0,0, 0,0, 4999 490,530, 493,0, 0,0, 493,0, 5000 489,529, 0,0, 494,0, 0,0, 5001 494,0, 493,0, 493,0, 495,0, 5002 495,0, 493,0, 494,0, 494,0, 5003 496,0, 496,0, 494,0, 494,533, 5004 0,0, 0,0, 0,0, 0,0, 5005 0,0, 0,0, 0,0, 0,0, 5006 493,0, 0,0, 493,0, 0,0, 5007 0,0, 494,0, 495,0, 494,0, 5008 495,0, 492,531, 0,0, 496,0, 5009 0,0, 496,0, 495,0, 495,0, 5010 497,0, 497,0, 495,0, 496,0, 5011 496,0, 0,0, 0,0, 496,0, 5012 496,535, 0,0, 0,0, 0,0, 5013 0,0, 0,0, 498,0, 498,0, 5014 0,0, 495,0, 0,0, 495,0, 5015 0,0, 0,0, 496,0, 497,0, 5016 496,0, 497,0, 0,0, 0,0, 5017 499,0, 499,0, 0,0, 497,0, 5018 497,0, 0,0, 0,0, 497,0, 5019 497,536, 498,0, 0,0, 498,0, 5020 493,532, 0,0, 500,0, 500,0, 5021 0,0, 498,0, 498,0, 0,0, 5022 0,0, 498,0, 497,0, 499,0, 5023 497,0, 499,0, 0,0, 0,0, 5024 0,0, 495,534, 0,0, 499,0, 5025 499,0, 0,0, 0,0, 499,0, 5026 498,0, 500,0, 498,0, 500,0, 5027 501,0, 501,0, 0,0, 0,0, 5028 0,0, 500,0, 500,0, 0,0, 5029 0,0, 500,0, 499,0, 0,0, 5030 499,0, 502,0, 502,0, 0,0, 5031 0,0, 0,0, 0,0, 0,0, 5032 0,0, 0,0, 0,0, 501,0, 5033 500,0, 501,0, 500,0, 0,0, 5034 0,0, 0,0, 0,0, 501,0, 5035 501,0, 0,0, 0,0, 501,0, 5036 502,0, 0,0, 502,0, 0,0, 5037 0,0, 503,0, 503,0, 0,0, 5038 502,0, 502,0, 504,0, 504,0, 5039 502,0, 0,0, 501,0, 0,0, 5040 501,0, 0,0, 0,0, 0,0, 5041 505,0, 505,0, 0,0, 499,537, 5042 0,0, 0,0, 0,0, 502,0, 5043 503,0, 502,0, 503,0, 0,0, 5044 0,0, 504,0, 500,538, 504,0, 5045 503,0, 503,0, 0,0, 0,0, 5046 503,0, 504,0, 504,0, 505,0, 5047 0,0, 505,0, 0,0, 0,0, 5048 0,0, 0,0, 0,0, 505,0, 5049 505,0, 506,0, 506,0, 503,0, 5050 0,0, 503,0, 507,0, 507,0, 5051 504,0, 0,0, 504,0, 0,0, 5052 0,0, 0,0, 0,0, 0,0, 5053 0,0, 502,539, 505,0, 0,0, 5054 505,0, 0,0, 0,0, 0,0, 5055 506,0, 0,0, 506,0, 0,0, 5056 0,0, 507,0, 0,0, 507,0, 5057 506,0, 506,0, 508,0, 508,0, 5058 0,0, 507,0, 507,0, 0,0, 5059 504,0, 0,0, 504,0, 0,0, 5060 0,0, 0,0, 504,541, 0,0, 5061 503,540, 0,0, 505,0, 506,0, 5062 505,0, 506,0, 0,0, 0,0, 5063 507,0, 508,0, 507,0, 508,0, 5064 0,0, 0,0, 0,0, 0,0, 5065 0,0, 508,0, 508,0, 0,0, 5066 0,0, 509,0, 509,0, 0,0, 5067 510,0, 510,0, 0,0, 0,0, 5068 0,0, 0,0, 0,0, 0,0, 5069 0,0, 0,0, 0,0, 506,0, 5070 508,0, 506,0, 508,0, 0,0, 5071 507,0, 0,0, 507,0, 0,0, 5072 509,0, 0,0, 509,0, 510,0, 5073 0,0, 510,0, 0,0, 0,0, 5074 509,0, 509,0, 0,0, 510,0, 5075 510,0, 511,0, 511,0, 0,0, 5076 0,0, 507,542, 512,0, 512,0, 5077 0,0, 0,0, 0,0, 0,0, 5078 508,0, 0,0, 508,0, 509,0, 5079 0,0, 509,0, 510,0, 0,0, 5080 510,0, 0,0, 508,543, 0,0, 5081 511,0, 0,0, 511,0, 0,0, 5082 0,0, 512,0, 0,0, 512,0, 5083 511,0, 511,0, 0,0, 0,0, 5084 0,0, 512,0, 512,0, 513,0, 5085 513,0, 0,0, 514,0, 514,0, 5086 0,0, 0,0, 0,0, 509,0, 5087 0,0, 509,0, 510,0, 511,0, 5088 510,0, 511,0, 0,0, 0,0, 5089 512,0, 509,544, 512,0, 510,545, 5090 0,0, 0,0, 513,0, 0,0, 5091 513,0, 514,0, 0,0, 514,0, 5092 0,0, 0,0, 513,0, 513,0, 5093 0,0, 514,0, 514,0, 0,0, 5094 0,0, 0,0, 515,0, 515,0, 5095 0,0, 0,0, 0,0, 511,0, 5096 0,0, 511,0, 0,0, 0,0, 5097 512,0, 513,0, 512,0, 513,0, 5098 514,0, 0,0, 514,0, 0,0, 5099 0,0, 0,0, 512,547, 0,0, 5100 0,0, 515,0, 0,0, 515,0, 5101 0,0, 0,0, 511,546, 0,0, 5102 0,0, 515,0, 515,0, 516,0, 5103 516,0, 0,0, 517,0, 517,0, 5104 0,0, 0,0, 0,0, 0,0, 5105 0,0, 513,0, 0,0, 513,0, 5106 514,0, 0,0, 514,0, 0,0, 5107 515,0, 513,548, 515,0, 0,0, 5108 0,0, 0,0, 516,0, 0,0, 5109 516,0, 517,0, 0,0, 517,0, 5110 0,0, 0,0, 516,0, 516,0, 5111 519,89, 517,0, 517,0, 518,0, 5112 518,0, 0,0, 0,0, 514,549, 5113 519,0, 519,0, 0,0, 0,0, 5114 0,0, 0,0, 0,0, 0,0, 5115 515,0, 516,0, 515,0, 516,0, 5116 517,0, 0,0, 517,0, 0,0, 5117 0,0, 0,0, 518,0, 0,0, 5118 518,0, 0,0, 0,0, 519,0, 5119 0,0, 519,0, 518,0, 518,0, 5120 520,0, 520,0, 0,0, 519,0, 5121 519,0, 521,0, 521,0, 519,89, 5122 0,0, 0,0, 522,0, 522,0, 5123 0,0, 516,0, 0,0, 516,0, 5124 517,0, 518,0, 517,0, 518,0, 5125 0,0, 0,0, 519,0, 520,0, 5126 519,0, 520,0, 517,551, 516,550, 5127 521,0, 0,0, 521,0, 520,0, 5128 520,0, 522,0, 0,0, 522,0, 5129 521,0, 521,0, 0,0, 0,0, 5130 0,0, 522,0, 522,0, 0,0, 5131 0,0, 0,0, 523,0, 523,0, 5132 0,0, 518,0, 520,0, 518,0, 5133 520,0, 0,0, 519,0, 521,0, 5134 519,0, 521,0, 0,0, 0,0, 5135 522,0, 0,0, 522,0, 518,552, 5136 0,0, 0,0, 0,0, 0,0, 5137 519,553, 523,0, 0,0, 523,0, 5138 519,554, 0,0, 0,0, 0,0, 5139 0,0, 523,0, 523,0, 524,0, 5140 524,0, 0,0, 520,0, 0,0, 5141 520,0, 0,0, 0,0, 521,0, 5142 0,0, 521,0, 525,0, 525,0, 5143 522,0, 0,0, 522,0, 0,0, 5144 523,0, 0,0, 523,0, 0,0, 5145 0,0, 0,0, 524,0, 0,0, 5146 524,0, 0,0, 521,555, 0,0, 5147 0,0, 0,0, 524,0, 524,0, 5148 0,0, 525,0, 524,0, 525,0, 5149 526,0, 526,0, 0,0, 0,0, 5150 0,0, 525,0, 525,0, 0,0, 5151 0,0, 525,0, 0,0, 0,0, 5152 523,0, 524,0, 523,0, 524,0, 5153 0,0, 0,0, 0,0, 0,0, 5154 0,0, 0,0, 0,0, 526,0, 5155 525,0, 526,0, 525,0, 0,0, 5156 0,0, 0,0, 0,0, 526,0, 5157 526,0, 527,0, 527,0, 526,0, 5158 0,0, 0,0, 528,0, 528,0, 5159 0,0, 0,0, 0,0, 0,0, 5160 0,0, 0,0, 0,0, 0,0, 5161 0,0, 0,0, 526,0, 524,556, 5162 526,0, 0,0, 0,0, 0,0, 5163 527,0, 0,0, 527,0, 0,0, 5164 0,0, 528,0, 0,0, 528,0, 5165 527,0, 527,0, 529,0, 529,0, 5166 527,0, 528,0, 528,0, 530,0, 5167 530,0, 528,0, 0,0, 0,0, 5168 0,0, 0,0, 0,0, 0,0, 5169 0,0, 0,0, 0,0, 527,0, 5170 0,0, 527,0, 0,0, 0,0, 5171 528,0, 529,0, 528,0, 529,0, 5172 0,0, 0,0, 530,0, 0,0, 5173 530,0, 529,0, 529,0, 531,0, 5174 531,0, 529,0, 530,0, 530,0, 5175 532,0, 532,0, 530,0, 0,0, 5176 0,0, 0,0, 0,0, 0,0, 5177 0,0, 0,0, 0,0, 0,0, 5178 529,0, 0,0, 529,0, 0,0, 5179 0,0, 530,0, 531,0, 530,0, 5180 531,0, 527,557, 0,0, 532,0, 5181 0,0, 532,0, 531,0, 531,0, 5182 533,0, 533,0, 531,0, 532,0, 5183 532,0, 534,0, 534,0, 532,0, 5184 0,0, 0,0, 0,0, 528,558, 5185 0,0, 0,0, 0,0, 0,0, 5186 0,0, 531,0, 0,0, 531,0, 5187 0,0, 0,0, 532,0, 533,0, 5188 532,0, 533,0, 529,559, 0,0, 5189 534,0, 530,560, 534,0, 533,0, 5190 533,0, 535,0, 535,0, 533,0, 5191 534,0, 534,0, 0,0, 0,0, 5192 534,0, 0,0, 0,0, 0,0, 5193 0,0, 0,0, 0,0, 0,0, 5194 0,0, 0,0, 533,0, 536,130, 5195 533,0, 0,0, 0,0, 534,0, 5196 535,0, 534,0, 535,0, 536,0, 5197 536,0, 0,0, 0,0, 0,0, 5198 535,0, 535,0, 0,0, 0,0, 5199 535,0, 0,0, 537,0, 537,0, 5200 0,0, 0,0, 0,0, 0,0, 5201 531,561, 0,0, 0,0, 0,0, 5202 0,0, 0,0, 536,0, 535,0, 5203 536,0, 535,0, 0,0, 0,0, 5204 0,0, 0,0, 536,0, 536,0, 5205 0,0, 537,0, 536,0, 537,0, 5206 533,562, 534,563, 0,0, 0,0, 5207 0,0, 537,0, 537,0, 0,0, 5208 0,0, 537,0, 0,0, 0,0, 5209 0,0, 536,0, 0,0, 536,0, 5210 538,0, 538,0, 0,0, 0,0, 5211 0,0, 539,0, 539,0, 0,0, 5212 537,0, 0,0, 537,0, 0,0, 5213 0,0, 0,0, 0,0, 0,0, 5214 0,0, 535,564, 0,0, 0,0, 5215 0,0, 0,0, 0,0, 538,0, 5216 0,0, 538,0, 0,0, 0,0, 5217 539,0, 536,130, 539,0, 538,0, 5218 538,0, 540,0, 540,0, 538,0, 5219 539,0, 539,0, 541,0, 541,0, 5220 539,0, 0,0, 0,0, 536,565, 5221 0,0, 0,0, 0,0, 536,566, 5222 542,0, 542,0, 538,0, 0,0, 5223 538,0, 0,0, 0,0, 539,0, 5224 540,0, 539,0, 540,0, 0,0, 5225 0,0, 541,0, 0,0, 541,0, 5226 540,0, 540,0, 0,0, 0,0, 5227 540,0, 541,0, 541,0, 542,0, 5228 0,0, 542,0, 0,0, 0,0, 5229 0,0, 0,0, 0,0, 542,0, 5230 542,0, 543,0, 543,0, 540,0, 5231 0,0, 540,0, 544,0, 544,0, 5232 541,0, 0,0, 541,0, 0,0, 5233 0,0, 0,0, 0,0, 0,0, 5234 0,0, 0,0, 542,0, 0,0, 5235 542,0, 538,567, 0,0, 0,0, 5236 543,0, 0,0, 543,0, 0,0, 5237 0,0, 544,0, 0,0, 544,0, 5238 543,0, 543,0, 545,0, 545,0, 5239 0,0, 544,0, 544,0, 0,0, 5240 541,0, 0,0, 541,0, 0,0, 5241 0,0, 0,0, 546,0, 546,0, 5242 0,0, 541,568, 542,0, 543,0, 5243 542,0, 543,0, 0,0, 0,0, 5244 544,0, 545,0, 544,0, 545,0, 5245 0,0, 0,0, 0,0, 0,0, 5246 0,0, 545,0, 545,0, 0,0, 5247 0,0, 546,0, 545,572, 546,0, 5248 547,0, 547,0, 0,0, 0,0, 5249 542,569, 546,0, 546,0, 0,0, 5250 0,0, 0,0, 0,0, 543,0, 5251 545,0, 543,0, 545,0, 0,0, 5252 544,0, 0,0, 544,0, 0,0, 5253 0,0, 0,0, 0,0, 547,0, 5254 546,0, 547,0, 546,0, 0,0, 5255 0,0, 543,570, 0,0, 547,0, 5256 547,0, 0,0, 0,0, 0,0, 5257 548,0, 548,0, 0,0, 0,0, 5258 544,571, 0,0, 0,0, 0,0, 5259 545,0, 0,0, 545,0, 549,0, 5260 549,0, 0,0, 547,0, 0,0, 5261 547,0, 0,0, 0,0, 0,0, 5262 546,0, 0,0, 546,0, 548,0, 5263 0,0, 548,0, 550,0, 550,0, 5264 0,0, 0,0, 0,0, 548,0, 5265 548,0, 0,0, 549,0, 0,0, 5266 549,0, 551,0, 551,0, 0,0, 5267 0,0, 0,0, 549,0, 549,0, 5268 0,0, 0,0, 547,0, 0,0, 5269 547,0, 550,0, 548,0, 550,0, 5270 548,0, 0,0, 0,0, 547,573, 5271 0,0, 550,0, 550,0, 0,0, 5272 551,0, 549,0, 551,0, 549,0, 5273 0,0, 0,0, 0,0, 0,0, 5274 551,0, 551,0, 0,0, 0,0, 5275 0,0, 552,0, 552,0, 0,0, 5276 550,0, 0,0, 550,0, 0,0, 5277 0,0, 0,0, 548,0, 0,0, 5278 548,0, 0,0, 0,0, 551,0, 5279 0,0, 551,0, 0,0, 0,0, 5280 548,574, 549,0, 0,0, 549,0, 5281 552,0, 0,0, 552,0, 553,0, 5282 553,0, 0,0, 0,0, 0,0, 5283 552,0, 552,0, 0,0, 0,0, 5284 550,0, 0,0, 550,0, 0,0, 5285 0,0, 554,0, 554,0, 0,0, 5286 0,0, 550,575, 0,0, 551,0, 5287 0,0, 551,0, 553,0, 552,0, 5288 553,0, 552,0, 0,0, 555,0, 5289 555,0, 0,0, 553,0, 553,0, 5290 0,0, 0,0, 0,0, 0,0, 5291 554,0, 0,0, 554,0, 0,0, 5292 0,0, 0,0, 0,0, 551,576, 5293 554,0, 554,0, 0,0, 0,0, 5294 0,0, 553,0, 555,0, 553,0, 5295 555,0, 0,0, 0,0, 552,0, 5296 0,0, 552,0, 555,0, 555,0, 5297 0,0, 0,0, 0,0, 554,0, 5298 552,577, 554,0, 0,0, 0,0, 5299 556,0, 556,0, 0,0, 0,0, 5300 0,0, 0,0, 0,0, 0,0, 5301 0,0, 555,0, 0,0, 555,0, 5302 0,0, 553,0, 0,0, 553,0, 5303 0,0, 0,0, 0,0, 0,0, 5304 0,0, 0,0, 553,578, 556,0, 5305 0,0, 556,0, 0,0, 554,0, 5306 0,0, 554,0, 0,0, 556,0, 5307 556,0, 557,0, 557,0, 556,0, 5308 0,0, 554,579, 558,0, 558,0, 5309 0,0, 555,0, 0,0, 555,0, 5310 0,0, 0,0, 0,0, 0,0, 5311 0,0, 0,0, 556,0, 0,0, 5312 556,0, 555,580, 0,0, 0,0, 5313 557,0, 0,0, 557,0, 0,0, 5314 0,0, 558,0, 0,0, 558,0, 5315 557,0, 557,0, 0,0, 0,0, 5316 557,0, 558,0, 558,0, 559,0, 5317 559,0, 558,0, 0,0, 0,0, 5318 560,0, 560,0, 0,0, 0,0, 5319 0,0, 0,0, 0,0, 557,0, 5320 0,0, 557,0, 0,0, 0,0, 5321 558,0, 0,0, 558,0, 556,581, 5322 0,0, 0,0, 559,0, 0,0, 5323 559,0, 0,0, 0,0, 560,0, 5324 0,0, 560,0, 559,0, 559,0, 5325 0,0, 0,0, 559,0, 560,0, 5326 560,0, 561,0, 561,0, 560,0, 5327 0,0, 0,0, 0,0, 0,0, 5328 0,0, 0,0, 0,0, 0,0, 5329 0,0, 559,0, 0,0, 559,0, 5330 0,0, 0,0, 560,0, 0,0, 5331 560,0, 0,0, 0,0, 0,0, 5332 561,0, 0,0, 561,0, 562,0, 5333 562,0, 0,0, 0,0, 557,582, 5334 561,0, 561,0, 0,0, 0,0, 5335 561,0, 0,0, 563,0, 563,0, 5336 0,0, 0,0, 0,0, 564,0, 5337 564,0, 0,0, 0,0, 0,0, 5338 0,0, 0,0, 562,0, 561,0, 5339 562,0, 561,0, 559,583, 0,0, 5340 0,0, 0,0, 562,0, 562,0, 5341 560,584, 563,0, 562,0, 563,0, 5342 0,0, 0,0, 564,0, 0,0, 5343 564,0, 563,0, 563,0, 565,0, 5344 565,0, 563,0, 564,0, 564,0, 5345 0,0, 562,0, 564,0, 562,0, 5346 0,0, 0,0, 0,0, 0,0, 5347 0,0, 566,0, 566,0, 0,0, 5348 563,0, 0,0, 563,0, 0,0, 5349 0,0, 564,0, 565,0, 564,0, 5350 565,0, 0,0, 0,0, 0,0, 5351 0,0, 0,0, 565,0, 565,0, 5352 0,0, 0,0, 565,0, 0,0, 5353 566,0, 0,0, 566,0, 0,0, 5354 0,0, 0,0, 0,0, 0,0, 5355 566,0, 566,0, 562,585, 0,0, 5356 566,0, 565,0, 0,0, 565,0, 5357 567,0, 567,0, 0,0, 0,0, 5358 0,0, 568,0, 568,0, 0,0, 5359 0,0, 0,0, 564,587, 566,0, 5360 0,0, 566,0, 0,0, 0,0, 5361 569,0, 569,0, 0,0, 0,0, 5362 563,586, 0,0, 0,0, 567,0, 5363 0,0, 567,0, 0,0, 0,0, 5364 568,0, 0,0, 568,0, 567,0, 5365 567,0, 570,0, 570,0, 567,0, 5366 568,0, 568,0, 565,588, 569,0, 5367 0,0, 569,0, 0,0, 0,0, 5368 0,0, 0,0, 0,0, 569,0, 5369 569,0, 0,0, 567,0, 0,0, 5370 567,0, 566,589, 0,0, 568,0, 5371 570,0, 568,0, 570,0, 571,0, 5372 571,0, 0,0, 0,0, 0,0, 5373 570,0, 570,0, 569,0, 0,0, 5374 569,0, 0,0, 572,0, 572,0, 5375 0,0, 0,0, 573,0, 573,0, 5376 0,0, 0,0, 0,0, 0,0, 5377 0,0, 0,0, 571,0, 570,0, 5378 571,0, 570,0, 0,0, 568,0, 5379 0,0, 568,0, 571,0, 571,0, 5380 0,0, 572,0, 567,590, 572,0, 5381 568,591, 573,0, 569,0, 573,0, 5382 569,0, 572,0, 572,0, 0,0, 5383 0,0, 573,0, 573,0, 574,0, 5384 574,0, 571,0, 0,0, 571,0, 5385 0,0, 0,0, 0,0, 570,0, 5386 0,0, 570,0, 0,0, 0,0, 5387 572,0, 0,0, 572,0, 0,0, 5388 573,0, 0,0, 573,0, 0,0, 5389 0,0, 0,0, 574,0, 0,0, 5390 574,0, 0,0, 0,0, 570,592, 5391 0,0, 0,0, 574,0, 574,0, 5392 0,0, 571,0, 0,0, 571,0, 5393 575,0, 575,0, 0,0, 576,0, 5394 576,0, 0,0, 0,0, 0,0, 5395 572,0, 0,0, 572,0, 0,0, 5396 573,0, 574,0, 573,0, 574,0, 5397 572,593, 577,0, 577,0, 0,0, 5398 0,0, 0,0, 0,0, 575,0, 5399 0,0, 575,0, 576,0, 0,0, 5400 576,0, 0,0, 0,0, 575,0, 5401 575,0, 0,0, 576,0, 576,0, 5402 0,0, 0,0, 0,0, 0,0, 5403 577,0, 0,0, 577,0, 578,0, 5404 578,0, 574,0, 0,0, 574,0, 5405 577,0, 577,0, 575,0, 0,0, 5406 575,0, 576,0, 0,0, 576,0, 5407 0,0, 0,0, 579,0, 579,0, 5408 0,0, 0,0, 0,0, 0,0, 5409 0,0, 0,0, 578,0, 577,0, 5410 578,0, 577,0, 0,0, 0,0, 5411 0,0, 0,0, 578,0, 578,0, 5412 0,0, 0,0, 0,0, 0,0, 5413 0,0, 579,0, 575,0, 579,0, 5414 575,0, 576,0, 0,0, 576,0, 5415 0,0, 579,0, 579,0, 0,0, 5416 0,0, 578,0, 0,0, 578,0, 5417 0,0, 0,0, 0,0, 577,0, 5418 0,0, 577,0, 0,0, 580,0, 5419 580,0, 0,0, 575,594, 0,0, 5420 579,0, 576,595, 579,0, 0,0, 5421 0,0, 581,0, 581,0, 0,0, 5422 0,0, 0,0, 0,0, 0,0, 5423 0,0, 0,0, 0,0, 577,596, 5424 0,0, 578,0, 580,0, 578,0, 5425 580,0, 582,0, 582,0, 0,0, 5426 0,0, 0,0, 580,0, 580,0, 5427 581,0, 0,0, 581,0, 580,599, 5428 579,0, 0,0, 579,0, 0,0, 5429 581,0, 581,0, 0,0, 0,0, 5430 581,0, 578,597, 0,0, 0,0, 5431 582,0, 580,0, 582,0, 580,0, 5432 0,0, 0,0, 579,598, 0,0, 5433 582,0, 582,0, 0,0, 581,0, 5434 582,0, 581,0, 583,0, 583,0, 5435 0,0, 0,0, 0,0, 584,0, 5436 584,0, 0,0, 0,0, 0,0, 5437 0,0, 0,0, 0,0, 582,0, 5438 0,0, 582,0, 585,0, 585,0, 5439 0,0, 580,0, 0,0, 580,0, 5440 0,0, 583,0, 0,0, 583,0, 5441 0,0, 0,0, 584,0, 0,0, 5442 584,0, 583,0, 583,0, 0,0, 5443 0,0, 583,0, 584,0, 584,0, 5444 581,600, 585,0, 584,0, 585,0, 5445 586,0, 586,0, 0,0, 0,0, 5446 0,0, 585,0, 585,0, 0,0, 5447 583,0, 585,0, 583,0, 587,0, 5448 587,0, 584,0, 0,0, 584,0, 5449 588,0, 588,0, 0,0, 0,0, 5450 0,0, 0,0, 0,0, 586,0, 5451 585,0, 586,0, 585,0, 0,0, 5452 0,0, 0,0, 0,0, 586,0, 5453 586,0, 0,0, 587,0, 586,0, 5454 587,0, 0,0, 0,0, 588,0, 5455 0,0, 588,0, 587,0, 587,0, 5456 589,0, 589,0, 587,0, 588,0, 5457 588,0, 0,0, 586,0, 588,0, 5458 586,0, 0,0, 0,0, 0,0, 5459 0,0, 0,0, 0,0, 0,0, 5460 0,0, 587,0, 0,0, 587,0, 5461 0,0, 0,0, 588,0, 589,0, 5462 588,0, 589,0, 0,0, 0,0, 5463 0,0, 0,0, 0,0, 589,0, 5464 589,0, 590,0, 590,0, 589,0, 5465 585,601, 0,0, 0,0, 0,0, 5466 0,0, 0,0, 0,0, 0,0, 5467 0,0, 0,0, 0,0, 0,0, 5468 0,0, 0,0, 589,0, 0,0, 5469 589,0, 0,0, 0,0, 0,0, 5470 590,0, 0,0, 590,0, 591,0, 5471 591,0, 0,0, 586,602, 0,0, 5472 590,0, 590,0, 0,0, 0,0, 5473 590,0, 590,606, 592,0, 592,0, 5474 0,0, 587,603, 593,0, 593,0, 5475 0,0, 0,0, 588,604, 0,0, 5476 0,0, 0,0, 591,0, 590,0, 5477 591,0, 590,0, 0,0, 594,0, 5478 594,0, 0,0, 591,0, 591,0, 5479 0,0, 592,0, 0,0, 592,0, 5480 0,0, 593,0, 0,0, 593,0, 5481 589,605, 592,0, 592,0, 0,0, 5482 0,0, 593,0, 593,0, 0,0, 5483 0,0, 591,0, 594,0, 591,0, 5484 594,0, 595,0, 595,0, 0,0, 5485 0,0, 0,0, 594,0, 594,0, 5486 592,0, 0,0, 592,0, 0,0, 5487 593,0, 0,0, 593,0, 0,0, 5488 596,0, 596,0, 0,0, 0,0, 5489 0,0, 0,0, 0,0, 0,0, 5490 595,0, 594,0, 595,0, 594,0, 5491 0,0, 591,0, 0,0, 591,0, 5492 595,0, 595,0, 0,0, 0,0, 5493 0,0, 0,0, 0,0, 596,0, 5494 592,0, 596,0, 592,0, 0,0, 5495 593,0, 0,0, 593,0, 596,0, 5496 596,0, 597,0, 597,0, 595,0, 5497 591,607, 595,0, 0,0, 0,0, 5498 0,0, 594,0, 0,0, 594,0, 5499 0,0, 0,0, 0,0, 592,608, 5500 0,0, 593,609, 596,0, 0,0, 5501 596,0, 0,0, 0,0, 0,0, 5502 597,0, 0,0, 597,0, 0,0, 5503 0,0, 0,0, 0,0, 0,0, 5504 597,0, 597,0, 0,0, 595,0, 5505 0,0, 595,0, 598,0, 598,0, 5506 0,0, 599,0, 599,0, 0,0, 5507 0,0, 595,610, 0,0, 0,0, 5508 0,0, 0,0, 596,0, 597,0, 5509 596,0, 597,0, 0,0, 0,0, 5510 0,0, 0,0, 0,0, 0,0, 5511 0,0, 598,0, 0,0, 598,0, 5512 599,0, 0,0, 599,0, 0,0, 5513 0,0, 598,0, 598,0, 0,0, 5514 599,0, 599,0, 600,0, 600,0, 5515 0,0, 0,0, 0,0, 0,0, 5516 0,0, 0,0, 0,0, 597,0, 5517 0,0, 597,0, 0,0, 0,0, 5518 598,0, 0,0, 598,0, 599,0, 5519 0,0, 599,0, 0,0, 0,0, 5520 0,0, 600,0, 0,0, 600,0, 5521 0,0, 0,0, 0,0, 0,0, 5522 0,0, 600,0, 600,0, 601,0, 5523 601,0, 600,0, 0,0, 0,0, 5524 602,0, 602,0, 0,0, 0,0, 5525 0,0, 0,0, 0,0, 0,0, 5526 598,0, 0,0, 598,0, 599,0, 5527 600,0, 599,0, 600,0, 0,0, 5528 0,0, 0,0, 601,0, 599,612, 5529 601,0, 0,0, 0,0, 602,0, 5530 0,0, 602,0, 601,0, 601,0, 5531 598,611, 0,0, 601,0, 602,0, 5532 602,0, 603,0, 603,0, 602,0, 5533 0,0, 0,0, 604,0, 604,0, 5534 0,0, 0,0, 0,0, 0,0, 5535 0,0, 601,0, 0,0, 601,0, 5536 0,0, 0,0, 602,0, 0,0, 5537 602,0, 0,0, 0,0, 0,0, 5538 603,0, 0,0, 603,0, 0,0, 5539 0,0, 604,0, 0,0, 604,0, 5540 603,0, 603,0, 0,0, 600,613, 5541 603,0, 604,0, 604,0, 605,0, 5542 605,0, 604,0, 0,0, 0,0, 5543 606,0, 606,0, 0,0, 0,0, 5544 0,0, 0,0, 0,0, 603,0, 5545 0,0, 603,0, 0,0, 0,0, 5546 604,0, 0,0, 604,0, 0,0, 5547 602,614, 0,0, 605,0, 0,0, 5548 605,0, 0,0, 0,0, 606,0, 5549 0,0, 606,0, 605,0, 605,0, 5550 607,0, 607,0, 605,0, 606,0, 5551 606,0, 608,0, 608,0, 606,0, 5552 0,0, 0,0, 0,0, 0,0, 5553 0,0, 0,0, 0,0, 609,0, 5554 609,0, 605,0, 0,0, 605,0, 5555 0,0, 0,0, 606,0, 607,0, 5556 606,0, 607,0, 0,0, 0,0, 5557 608,0, 0,0, 608,0, 607,0, 5558 607,0, 0,0, 0,0, 0,0, 5559 608,0, 608,0, 609,0, 0,0, 5560 609,0, 0,0, 0,0, 610,0, 5561 610,0, 0,0, 609,0, 609,0, 5562 611,0, 611,0, 607,0, 0,0, 5563 607,0, 0,0, 0,0, 608,0, 5564 0,0, 608,0, 0,0, 0,0, 5565 0,0, 0,0, 606,616, 0,0, 5566 0,0, 609,0, 610,0, 609,0, 5567 610,0, 605,615, 0,0, 611,0, 5568 0,0, 611,0, 610,0, 610,0, 5569 0,0, 0,0, 0,0, 611,0, 5570 611,0, 0,0, 607,0, 0,0, 5571 607,0, 0,0, 0,0, 608,0, 5572 0,0, 608,0, 612,0, 612,0, 5573 607,617, 610,0, 0,0, 610,0, 5574 0,0, 609,0, 611,0, 609,0, 5575 611,0, 0,0, 0,0, 0,0, 5576 0,0, 0,0, 613,0, 613,0, 5577 0,0, 0,0, 0,0, 0,0, 5578 0,0, 612,0, 0,0, 612,0, 5579 0,0, 608,618, 0,0, 0,0, 5580 0,0, 612,0, 612,0, 609,619, 5581 0,0, 610,0, 0,0, 610,0, 5582 0,0, 613,0, 611,0, 613,0, 5583 611,0, 0,0, 614,0, 614,0, 5584 0,0, 613,0, 613,0, 0,0, 5585 612,0, 613,0, 612,0, 0,0, 5586 0,0, 615,0, 615,0, 0,0, 5587 0,0, 610,620, 616,0, 616,0, 5588 0,0, 611,621, 0,0, 0,0, 5589 613,0, 614,0, 613,0, 614,0, 5590 0,0, 0,0, 0,0, 0,0, 5591 0,0, 614,0, 614,0, 0,0, 5592 615,0, 614,0, 615,0, 0,0, 5593 612,0, 616,0, 612,0, 616,0, 5594 615,0, 615,0, 617,0, 617,0, 5595 615,0, 616,0, 616,0, 0,0, 5596 614,0, 616,0, 614,0, 0,0, 5597 0,0, 612,622, 0,0, 618,0, 5598 618,0, 0,0, 0,0, 615,0, 5599 0,0, 615,0, 613,623, 0,0, 5600 616,0, 617,0, 616,0, 617,0, 5601 619,0, 619,0, 0,0, 0,0, 5602 0,0, 617,0, 617,0, 0,0, 5603 0,0, 0,0, 618,0, 0,0, 5604 618,0, 0,0, 0,0, 0,0, 5605 0,0, 0,0, 618,0, 618,0, 5606 0,0, 0,0, 0,0, 619,0, 5607 617,0, 619,0, 617,0, 0,0, 5608 0,0, 0,0, 0,0, 619,0, 5609 619,0, 0,0, 0,0, 0,0, 5610 614,624, 618,0, 0,0, 618,0, 5611 0,0, 620,0, 620,0, 0,0, 5612 0,0, 616,626, 615,625, 0,0, 5613 0,0, 0,0, 619,0, 0,0, 5614 619,0, 0,0, 621,0, 621,0, 5615 617,0, 0,0, 617,0, 0,0, 5616 0,0, 0,0, 0,0, 0,0, 5617 620,0, 0,0, 620,0, 622,0, 5618 622,0, 618,0, 0,0, 618,0, 5619 620,0, 620,0, 0,0, 0,0, 5620 0,0, 621,0, 0,0, 621,0, 5621 617,627, 0,0, 619,0, 0,0, 5622 619,0, 621,0, 621,0, 0,0, 5623 0,0, 0,0, 622,0, 620,0, 5624 622,0, 620,0, 0,0, 623,0, 5625 623,0, 0,0, 622,0, 622,0, 5626 0,0, 0,0, 0,0, 0,0, 5627 621,0, 0,0, 621,0, 0,0, 5628 624,0, 624,0, 0,0, 0,0, 5629 0,0, 0,0, 0,0, 0,0, 5630 0,0, 622,0, 623,0, 622,0, 5631 623,0, 625,0, 625,0, 620,0, 5632 0,0, 620,0, 623,0, 623,0, 5633 0,0, 0,0, 623,0, 624,0, 5634 0,0, 624,0, 0,0, 0,0, 5635 621,0, 0,0, 621,0, 624,0, 5636 624,0, 0,0, 0,0, 624,0, 5637 625,0, 623,0, 625,0, 623,0, 5638 0,0, 622,0, 0,0, 622,0, 5639 625,0, 625,0, 0,0, 622,629, 5640 625,0, 0,0, 624,0, 0,0, 5641 624,0, 626,0, 626,0, 0,0, 5642 0,0, 0,0, 621,628, 0,0, 5643 0,0, 0,0, 0,0, 625,0, 5644 0,0, 625,0, 627,0, 627,0, 5645 0,0, 628,0, 628,0, 0,0, 5646 0,0, 0,0, 0,0, 0,0, 5647 626,0, 0,0, 626,0, 629,0, 5648 629,0, 0,0, 0,0, 0,0, 5649 626,0, 626,0, 0,0, 0,0, 5650 626,0, 627,0, 0,0, 627,0, 5651 628,0, 623,630, 628,0, 0,0, 5652 0,0, 627,0, 627,0, 0,0, 5653 628,0, 628,0, 629,0, 626,0, 5654 629,0, 626,0, 0,0, 630,0, 5655 630,0, 0,0, 629,0, 629,0, 5656 631,0, 631,0, 0,0, 0,0, 5657 627,0, 0,0, 627,0, 628,0, 5658 0,0, 628,0, 0,0, 0,0, 5659 0,0, 625,631, 0,0, 0,0, 5660 0,0, 629,0, 630,0, 629,0, 5661 630,0, 0,0, 0,0, 631,0, 5662 0,0, 631,0, 630,0, 630,0, 5663 0,0, 626,632, 630,0, 631,0, 5664 631,0, 632,0, 632,0, 631,0, 5665 627,0, 0,0, 627,0, 628,0, 5666 0,0, 628,0, 0,0, 0,0, 5667 0,0, 630,0, 0,0, 630,0, 5668 0,0, 629,0, 631,0, 629,0, 5669 631,0, 0,0, 0,0, 0,0, 5670 632,0, 0,0, 632,0, 0,0, 5671 627,633, 633,0, 633,0, 0,0, 5672 632,0, 632,0, 634,0, 634,0, 5673 632,0, 0,0, 0,0, 635,0, 5674 635,0, 629,634, 0,0, 0,0, 5675 0,0, 0,0, 0,0, 0,0, 5676 0,0, 0,0, 0,0, 632,0, 5677 633,0, 632,0, 633,0, 0,0, 5678 0,0, 634,0, 0,0, 634,0, 5679 633,0, 633,0, 635,0, 0,0, 5680 635,0, 634,0, 634,0, 636,0, 5681 636,0, 630,635, 635,0, 635,0, 5682 637,0, 637,0, 635,0, 0,0, 5683 0,0, 0,0, 0,0, 633,0, 5684 0,0, 633,0, 0,0, 0,0, 5685 634,0, 0,0, 634,0, 0,0, 5686 0,0, 635,0, 636,0, 635,0, 5687 636,0, 0,0, 0,0, 637,0, 5688 0,0, 637,0, 636,0, 636,0, 5689 638,0, 638,0, 636,0, 637,0, 5690 637,0, 0,0, 0,0, 632,636, 5691 0,0, 0,0, 0,0, 633,0, 5692 0,0, 633,0, 0,0, 0,0, 5693 634,0, 636,0, 634,0, 636,0, 5694 0,0, 0,0, 637,0, 638,0, 5695 637,0, 638,0, 0,0, 0,0, 5696 0,0, 0,0, 0,0, 638,0, 5697 638,0, 0,0, 0,0, 638,0, 5698 0,0, 0,0, 0,0, 0,0, 5699 634,637, 0,0, 0,0, 0,0, 5700 0,0, 0,0, 0,0, 0,0, 5701 0,0, 0,0, 638,0, 0,0, 5702 638,0, 0,0, 637,0, 0,0, 5703 637,0, 0,0, 0,0, 0,0, 5704 0,0, 0,0, 0,0, 0,0, 5705 0,0, 0,0, 0,0, 0,0, 5706 0,0, 0,0, 0,0, 0,0, 5707 0,0, 636,638, 0,0, 0,0, 5708 0,0}; 5709 struct yysvf yysvec[] = { 5710 0, 0, 0, 5711 yycrank+-1, 0, 0, 5712 yycrank+-13, yysvec+1, 0, 5713 yycrank+-98, 0, 0, 5714 yycrank+-63, yysvec+3, 0, 5715 yycrank+-18, 0, 0, 5716 yycrank+-2, yysvec+5, 0, 5717 yycrank+-183, 0, 0, 5718 yycrank+-209, yysvec+7, 0, 5719 yycrank+0, 0, yyvstop+1, 5720 yycrank+0, 0, yyvstop+3, 5721 yycrank+0, 0, yyvstop+6, 5722 yycrank+-6, 0, yyvstop+8, 5723 yycrank+0, 0, yyvstop+11, 5724 yycrank+0, 0, yyvstop+14, 5725 yycrank+3, 0, yyvstop+17, 5726 yycrank+26, 0, yyvstop+19, 5727 yycrank+19, 0, yyvstop+21, 5728 yycrank+15, 0, yyvstop+23, 5729 yycrank+20, 0, yyvstop+25, 5730 yycrank+16, 0, yyvstop+27, 5731 yycrank+28, 0, yyvstop+29, 5732 yycrank+29, 0, yyvstop+31, 5733 yycrank+32, 0, yyvstop+33, 5734 yycrank+-327, 0, yyvstop+35, 5735 yycrank+-142, 0, yyvstop+38, 5736 yycrank+0, 0, yyvstop+40, 5737 yycrank+0, 0, yyvstop+43, 5738 yycrank+0, 0, yyvstop+46, 5739 yycrank+-332, 0, yyvstop+49, 5740 yycrank+-343, 0, yyvstop+52, 5741 yycrank+-369, 0, yyvstop+55, 5742 yycrank+-436, 0, yyvstop+58, 5743 yycrank+-433, yysvec+24, yyvstop+61, 5744 yycrank+-469, yysvec+24, yyvstop+64, 5745 yycrank+-481, 0, yyvstop+67, 5746 yycrank+-535, 0, yyvstop+70, 5747 yycrank+-525, yysvec+24, yyvstop+73, 5748 yycrank+-591, 0, yyvstop+76, 5749 yycrank+-602, yysvec+24, yyvstop+79, 5750 yycrank+-628, yysvec+30, yyvstop+82, 5751 yycrank+-664, 0, yyvstop+85, 5752 yycrank+-669, 0, yyvstop+88, 5753 yycrank+-706, yysvec+24, yyvstop+91, 5754 yycrank+-739, yysvec+24, yyvstop+94, 5755 yycrank+-742, yysvec+24, yyvstop+97, 5756 yycrank+-775, yysvec+24, yyvstop+100, 5757 yycrank+-785, 0, yyvstop+103, 5758 yycrank+-221, 0, yyvstop+106, 5759 yycrank+0, 0, yyvstop+108, 5760 yycrank+0, 0, yyvstop+111, 5761 yycrank+0, 0, yyvstop+114, 5762 yycrank+0, 0, yyvstop+117, 5763 yycrank+-811, 0, yyvstop+120, 5764 yycrank+0, 0, yyvstop+123, 5765 yycrank+0, 0, yyvstop+126, 5766 yycrank+0, 0, yyvstop+129, 5767 yycrank+-839, 0, yyvstop+132, 5768 yycrank+-855, 0, yyvstop+135, 5769 yycrank+-850, yysvec+53, yyvstop+138, 5770 yycrank+-909, 0, yyvstop+141, 5771 yycrank+-883, yysvec+53, yyvstop+144, 5772 yycrank+-923, yysvec+53, yyvstop+147, 5773 yycrank+-971, 0, yyvstop+150, 5774 yycrank+-984, 0, yyvstop+153, 5775 yycrank+-997, yysvec+53, yyvstop+156, 5776 yycrank+-1038, 0, yyvstop+159, 5777 yycrank+-1010, yysvec+53, yyvstop+162, 5778 yycrank+-1064, yysvec+58, yyvstop+165, 5779 yycrank+-1075, yysvec+53, yyvstop+168, 5780 yycrank+-1123, 0, yyvstop+171, 5781 yycrank+-1118, yysvec+53, yyvstop+174, 5782 yycrank+-1151, yysvec+53, yyvstop+177, 5783 yycrank+-1156, yysvec+53, yyvstop+180, 5784 yycrank+-1184, yysvec+53, yyvstop+183, 5785 yycrank+-2, yysvec+12, yyvstop+186, 5786 yycrank+36, 0, 0, 5787 yycrank+31, 0, 0, 5788 yycrank+43, 0, 0, 5789 yycrank+36, 0, 0, 5790 yycrank+45, 0, 0, 5791 yycrank+39, 0, 0, 5792 yycrank+48, 0, 0, 5793 yycrank+78, 0, 0, 5794 yycrank+41, 0, 0, 5795 yycrank+48, 0, 0, 5796 yycrank+46, 0, 0, 5797 yycrank+50, 0, 0, 5798 yycrank+39, 0, 0, 5799 yycrank+-1189, yysvec+24, yyvstop+188, 5800 yycrank+0, yysvec+25, 0, 5801 yycrank+0, 0, yyvstop+190, 5802 yycrank+-1217, yysvec+24, yyvstop+192, 5803 yycrank+-1231, 0, yyvstop+194, 5804 yycrank+-1227, yysvec+24, yyvstop+196, 5805 yycrank+-1264, yysvec+24, yyvstop+198, 5806 yycrank+-1275, yysvec+24, yyvstop+200, 5807 yycrank+-1318, yysvec+24, yyvstop+202, 5808 yycrank+-1329, yysvec+24, yyvstop+204, 5809 yycrank+-1344, yysvec+24, yyvstop+206, 5810 yycrank+-1355, yysvec+24, yyvstop+208, 5811 yycrank+-1372, yysvec+24, yyvstop+210, 5812 yycrank+-1398, 0, yyvstop+212, 5813 yycrank+-1434, yysvec+24, yyvstop+214, 5814 yycrank+-1445, yysvec+24, yyvstop+216, 5815 yycrank+-1471, yysvec+24, yyvstop+219, 5816 yycrank+-1499, yysvec+24, yyvstop+221, 5817 yycrank+-1509, yysvec+24, yyvstop+223, 5818 yycrank+-1512, yysvec+24, yyvstop+225, 5819 yycrank+-1547, yysvec+24, yyvstop+227, 5820 yycrank+-1575, 0, yyvstop+229, 5821 yycrank+-1588, yysvec+24, yyvstop+231, 5822 yycrank+-1603, yysvec+24, yyvstop+233, 5823 yycrank+-1616, yysvec+24, yyvstop+235, 5824 yycrank+-1642, yysvec+24, yyvstop+237, 5825 yycrank+-1678, yysvec+24, yyvstop+239, 5826 yycrank+-1689, yysvec+24, yyvstop+241, 5827 yycrank+-1704, yysvec+24, yyvstop+243, 5828 yycrank+-1715, yysvec+24, yyvstop+245, 5829 yycrank+-1732, yysvec+24, yyvstop+247, 5830 yycrank+-1778, yysvec+24, yyvstop+249, 5831 yycrank+-1792, yysvec+24, yyvstop+251, 5832 yycrank+-1795, yysvec+24, yyvstop+253, 5833 yycrank+-1806, yysvec+24, yyvstop+255, 5834 yycrank+-1864, yysvec+24, yyvstop+257, 5835 yycrank+-1868, yysvec+24, yyvstop+259, 5836 yycrank+-1880, yysvec+24, yyvstop+261, 5837 yycrank+-1922, yysvec+47, yyvstop+263, 5838 yycrank+0, yysvec+48, 0, 5839 yycrank+0, 0, yyvstop+265, 5840 yycrank+-1938, yysvec+53, yyvstop+267, 5841 yycrank+-1976, yysvec+53, yyvstop+269, 5842 yycrank+-2002, yysvec+53, yyvstop+271, 5843 yycrank+-2013, yysvec+53, yyvstop+273, 5844 yycrank+-2018, yysvec+53, yyvstop+275, 5845 yycrank+-2046, yysvec+53, yyvstop+277, 5846 yycrank+-2057, yysvec+53, yyvstop+279, 5847 yycrank+-2085, yysvec+53, yyvstop+281, 5848 yycrank+-2099, yysvec+53, yyvstop+283, 5849 yycrank+-2127, yysvec+53, yyvstop+285, 5850 yycrank+-2132, yysvec+53, yyvstop+287, 5851 yycrank+-2165, yysvec+53, yyvstop+289, 5852 yycrank+-2198, yysvec+53, yyvstop+291, 5853 yycrank+-2203, yysvec+53, yyvstop+293, 5854 yycrank+-2241, yysvec+53, yyvstop+295, 5855 yycrank+-2257, yysvec+53, yyvstop+297, 5856 yycrank+-2283, 0, yyvstop+299, 5857 yycrank+-2296, yysvec+53, yyvstop+301, 5858 yycrank+-2329, yysvec+53, yyvstop+303, 5859 yycrank+-2343, yysvec+53, yyvstop+305, 5860 yycrank+-2357, yysvec+53, yyvstop+307, 5861 yycrank+-2383, yysvec+53, yyvstop+309, 5862 yycrank+-2399, yysvec+53, yyvstop+311, 5863 yycrank+-2436, yysvec+53, yyvstop+313, 5864 yycrank+-2441, yysvec+53, yyvstop+315, 5865 yycrank+-2452, yysvec+53, yyvstop+317, 5866 yycrank+-2478, yysvec+53, yyvstop+319, 5867 yycrank+-2489, yysvec+53, yyvstop+321, 5868 yycrank+-2517, yysvec+53, yyvstop+323, 5869 yycrank+-2522, yysvec+53, yyvstop+325, 5870 yycrank+-2533, yysvec+53, yyvstop+327, 5871 yycrank+0, 0, yyvstop+329, 5872 yycrank+55, 0, 0, 5873 yycrank+72, 0, 0, 5874 yycrank+61, 0, 0, 5875 yycrank+90, 0, 0, 5876 yycrank+87, 0, 0, 5877 yycrank+0, 0, yyvstop+331, 5878 yycrank+78, 0, 0, 5879 yycrank+88, 0, 0, 5880 yycrank+89, 0, 0, 5881 yycrank+93, 0, 0, 5882 yycrank+94, 0, 0, 5883 yycrank+110, 0, 0, 5884 yycrank+117, 0, 0, 5885 yycrank+0, 0, yyvstop+333, 5886 yycrank+114, 0, 0, 5887 yycrank+-2570, yysvec+24, yyvstop+335, 5888 yycrank+-2575, yysvec+24, yyvstop+337, 5889 yycrank+-2580, yysvec+24, yyvstop+339, 5890 yycrank+-2613, yysvec+24, yyvstop+341, 5891 yycrank+-2617, yysvec+24, yyvstop+343, 5892 yycrank+-2681, 0, yyvstop+345, 5893 yycrank+-2671, yysvec+24, yyvstop+347, 5894 yycrank+-2686, yysvec+24, yyvstop+349, 5895 yycrank+-2719, yysvec+24, yyvstop+351, 5896 yycrank+-2757, yysvec+24, yyvstop+353, 5897 yycrank+-2729, yysvec+24, yyvstop+355, 5898 yycrank+-2773, yysvec+24, yyvstop+357, 5899 yycrank+-2815, yysvec+24, yyvstop+359, 5900 yycrank+-2820, yysvec+24, yyvstop+361, 5901 yycrank+-2831, yysvec+24, yyvstop+363, 5902 yycrank+-2848, yysvec+24, yyvstop+366, 5903 yycrank+-2859, yysvec+24, yyvstop+368, 5904 yycrank+-2887, yysvec+24, yyvstop+370, 5905 yycrank+-2922, yysvec+24, yyvstop+372, 5906 yycrank+-2925, yysvec+24, yyvstop+374, 5907 yycrank+-2960, yysvec+24, yyvstop+376, 5908 yycrank+-2963, yysvec+24, yyvstop+378, 5909 yycrank+-2999, yysvec+24, yyvstop+380, 5910 yycrank+-3002, yysvec+24, yyvstop+382, 5911 yycrank+-3037, yysvec+24, yyvstop+384, 5912 yycrank+-3040, yysvec+24, yyvstop+386, 5913 yycrank+-3073, yysvec+24, yyvstop+389, 5914 yycrank+-3076, yysvec+24, yyvstop+391, 5915 yycrank+-3109, yysvec+24, yyvstop+393, 5916 yycrank+-3112, yysvec+24, yyvstop+395, 5917 yycrank+-3147, yysvec+24, yyvstop+397, 5918 yycrank+-3152, yysvec+24, yyvstop+400, 5919 yycrank+-3180, yysvec+24, yyvstop+402, 5920 yycrank+-3215, yysvec+24, yyvstop+404, 5921 yycrank+-3218, yysvec+24, yyvstop+406, 5922 yycrank+-3254, yysvec+24, yyvstop+408, 5923 yycrank+-3257, yysvec+24, yyvstop+410, 5924 yycrank+-3292, yysvec+24, yyvstop+412, 5925 yycrank+-3295, yysvec+24, yyvstop+414, 5926 yycrank+-3328, yysvec+53, yyvstop+416, 5927 yycrank+-3333, yysvec+53, yyvstop+418, 5928 yycrank+-3366, yysvec+53, yyvstop+420, 5929 yycrank+-3394, 0, yyvstop+422, 5930 yycrank+-3405, yysvec+53, yyvstop+424, 5931 yycrank+-3410, yysvec+53, yyvstop+426, 5932 yycrank+-3447, yysvec+53, yyvstop+428, 5933 yycrank+-3463, yysvec+53, yyvstop+430, 5934 yycrank+-3491, yysvec+53, yyvstop+432, 5935 yycrank+-3502, yysvec+53, yyvstop+435, 5936 yycrank+-3507, yysvec+53, yyvstop+437, 5937 yycrank+-3535, yysvec+53, yyvstop+439, 5938 yycrank+-3546, yysvec+53, yyvstop+441, 5939 yycrank+-3572, yysvec+53, yyvstop+443, 5940 yycrank+-3588, yysvec+53, yyvstop+445, 5941 yycrank+-3625, yysvec+53, yyvstop+447, 5942 yycrank+-3658, yysvec+53, yyvstop+449, 5943 yycrank+-3672, yysvec+53, yyvstop+451, 5944 yycrank+-3698, yysvec+53, yyvstop+453, 5945 yycrank+-3711, yysvec+53, yyvstop+455, 5946 yycrank+-3737, yysvec+53, yyvstop+457, 5947 yycrank+-3751, yysvec+53, yyvstop+459, 5948 yycrank+-3765, yysvec+53, yyvstop+461, 5949 yycrank+-3779, yysvec+53, yyvstop+463, 5950 yycrank+-3821, yysvec+53, yyvstop+466, 5951 yycrank+-3826, yysvec+53, yyvstop+468, 5952 yycrank+-3837, yysvec+53, yyvstop+470, 5953 yycrank+-3865, yysvec+53, yyvstop+472, 5954 yycrank+-3879, yysvec+53, yyvstop+474, 5955 yycrank+-3918, yysvec+53, yyvstop+476, 5956 yycrank+-3923, yysvec+53, yyvstop+478, 5957 yycrank+120, 0, 0, 5958 yycrank+111, 0, 0, 5959 yycrank+121, 0, 0, 5960 yycrank+112, 0, 0, 5961 yycrank+113, 0, 0, 5962 yycrank+0, 0, yyvstop+480, 5963 yycrank+118, 0, 0, 5964 yycrank+0, 0, yyvstop+482, 5965 yycrank+0, 0, yyvstop+484, 5966 yycrank+116, 0, 0, 5967 yycrank+121, 0, 0, 5968 yycrank+137, 0, 0, 5969 yycrank+135, 0, 0, 5970 yycrank+-3951, yysvec+24, yyvstop+486, 5971 yycrank+-3962, yysvec+24, yyvstop+488, 5972 yycrank+-3966, yysvec+24, yyvstop+490, 5973 yycrank+-3977, yysvec+24, yyvstop+492, 5974 yycrank+-4020, yysvec+24, yyvstop+494, 5975 yycrank+-4024, yysvec+24, yyvstop+497, 5976 yycrank+-4057, yysvec+24, yyvstop+499, 5977 yycrank+-4068, yysvec+24, yyvstop+501, 5978 yycrank+-4111, yysvec+24, yyvstop+503, 5979 yycrank+-4122, yysvec+24, yyvstop+505, 5980 yycrank+-4126, yysvec+24, yyvstop+507, 5981 yycrank+-4137, yysvec+24, yyvstop+509, 5982 yycrank+-4165, yysvec+24, yyvstop+511, 5983 yycrank+-4225, yysvec+24, yyvstop+513, 5984 yycrank+-4228, yysvec+24, yyvstop+515, 5985 yycrank+-4238, yysvec+24, yyvstop+517, 5986 yycrank+-4264, yysvec+24, yyvstop+519, 5987 yycrank+-4292, yysvec+24, yyvstop+521, 5988 yycrank+-4303, yysvec+24, yyvstop+523, 5989 yycrank+-4338, yysvec+24, yyvstop+525, 5990 yycrank+-4350, yysvec+24, yyvstop+527, 5991 yycrank+-4378, yysvec+24, yyvstop+529, 5992 yycrank+-4394, 0, yyvstop+531, 5993 yycrank+-4436, yysvec+24, yyvstop+533, 5994 yycrank+-4440, yysvec+24, yyvstop+536, 5995 yycrank+-4452, yysvec+24, yyvstop+538, 5996 yycrank+-4480, yysvec+24, yyvstop+540, 5997 yycrank+-4506, yysvec+24, yyvstop+542, 5998 yycrank+-4516, yysvec+24, yyvstop+545, 5999 yycrank+-4542, yysvec+24, yyvstop+548, 6000 yycrank+-4552, yysvec+24, yyvstop+551, 6001 yycrank+-4578, yysvec+24, yyvstop+553, 6002 yycrank+-4606, yysvec+24, yyvstop+555, 6003 yycrank+-4616, yysvec+24, yyvstop+558, 6004 yycrank+-4619, yysvec+24, yyvstop+561, 6005 yycrank+-4632, yysvec+24, yyvstop+564, 6006 yycrank+-4686, 0, yyvstop+566, 6007 yycrank+-4712, yysvec+53, yyvstop+568, 6008 yycrank+-4725, yysvec+53, yyvstop+570, 6009 yycrank+-4751, yysvec+53, yyvstop+572, 6010 yycrank+-4784, yysvec+53, yyvstop+574, 6011 yycrank+-4795, yysvec+53, yyvstop+576, 6012 yycrank+-4821, yysvec+53, yyvstop+578, 6013 yycrank+-4837, yysvec+53, yyvstop+580, 6014 yycrank+-4863, yysvec+53, yyvstop+582, 6015 yycrank+-4879, yysvec+53, yyvstop+584, 6016 yycrank+-4907, yysvec+53, yyvstop+586, 6017 yycrank+-4918, yysvec+53, yyvstop+588, 6018 yycrank+-4923, yysvec+53, yyvstop+590, 6019 yycrank+-4951, yysvec+53, yyvstop+592, 6020 yycrank+-4965, yysvec+53, yyvstop+594, 6021 yycrank+-4998, yysvec+53, yyvstop+596, 6022 yycrank+-5009, yysvec+53, yyvstop+598, 6023 yycrank+-5035, 0, yyvstop+600, 6024 yycrank+-5046, yysvec+53, yyvstop+602, 6025 yycrank+-5051, yysvec+53, yyvstop+605, 6026 yycrank+-5093, yysvec+53, yyvstop+607, 6027 yycrank+-5119, yysvec+53, yyvstop+609, 6028 yycrank+-5130, yysvec+53, yyvstop+611, 6029 yycrank+-5158, yysvec+53, yyvstop+614, 6030 yycrank+-5174, yysvec+53, yyvstop+617, 6031 yycrank+-5200, yysvec+53, yyvstop+619, 6032 yycrank+-5211, yysvec+53, yyvstop+621, 6033 yycrank+-5216, yysvec+53, yyvstop+624, 6034 yycrank+-5253, yysvec+53, yyvstop+627, 6035 yycrank+-5258, yysvec+53, yyvstop+630, 6036 yycrank+-5294, 0, yyvstop+632, 6037 yycrank+130, 0, 0, 6038 yycrank+0, 0, yyvstop+634, 6039 yycrank+123, 0, 0, 6040 yycrank+139, 0, 0, 6041 yycrank+140, 0, 0, 6042 yycrank+127, 0, 0, 6043 yycrank+144, 0, 0, 6044 yycrank+130, 0, 0, 6045 yycrank+131, 0, 0, 6046 yycrank+127, 0, 0, 6047 yycrank+-5291, yysvec+24, yyvstop+636, 6048 yycrank+-5330, yysvec+24, yyvstop+638, 6049 yycrank+-5333, yysvec+24, yyvstop+640, 6050 yycrank+-5368, yysvec+24, yyvstop+643, 6051 yycrank+-5371, yysvec+24, yyvstop+645, 6052 yycrank+-5406, yysvec+24, yyvstop+648, 6053 yycrank+-5409, yysvec+24, yyvstop+650, 6054 yycrank+-5442, yysvec+24, yyvstop+652, 6055 yycrank+-5445, yysvec+24, yyvstop+655, 6056 yycrank+-5478, yysvec+24, yyvstop+657, 6057 yycrank+-5515, yysvec+24, yyvstop+659, 6058 yycrank+-5518, yysvec+24, yyvstop+661, 6059 yycrank+-5532, yysvec+24, yyvstop+663, 6060 yycrank+-5578, yysvec+24, yyvstop+665, 6061 yycrank+-5592, yysvec+24, yyvstop+667, 6062 yycrank+-5595, yysvec+24, yyvstop+669, 6063 yycrank+-5632, yysvec+24, yyvstop+671, 6064 yycrank+-5658, yysvec+24, yyvstop+673, 6065 yycrank+-5671, yysvec+24, yyvstop+675, 6066 yycrank+-5697, yysvec+24, yyvstop+678, 6067 yycrank+-5712, yysvec+24, yyvstop+680, 6068 yycrank+-5725, yysvec+24, yyvstop+683, 6069 yycrank+-5766, yysvec+24, yyvstop+685, 6070 yycrank+-5770, yysvec+24, yyvstop+687, 6071 yycrank+-5811, 0, yyvstop+689, 6072 yycrank+-5826, yysvec+24, yyvstop+691, 6073 yycrank+-5837, yysvec+24, yyvstop+694, 6074 yycrank+-5865, yysvec+24, yyvstop+696, 6075 yycrank+-5882, yysvec+24, yyvstop+698, 6076 yycrank+-5925, yysvec+24, yyvstop+700, 6077 yycrank+-5928, yysvec+24, yyvstop+702, 6078 yycrank+-5942, yysvec+24, yyvstop+705, 6079 yycrank+-5968, yysvec+24, yyvstop+707, 6080 yycrank+-5996, yysvec+53, yyvstop+709, 6081 yycrank+-6022, yysvec+53, yyvstop+711, 6082 yycrank+-6035, yysvec+53, yyvstop+713, 6083 yycrank+-6061, yysvec+53, yyvstop+715, 6084 yycrank+-6089, yysvec+53, yyvstop+718, 6085 yycrank+-6094, yysvec+53, yyvstop+720, 6086 yycrank+-6122, yysvec+53, yyvstop+722, 6087 yycrank+-6133, yysvec+53, yyvstop+725, 6088 yycrank+-6161, yysvec+53, yyvstop+727, 6089 yycrank+-6175, yysvec+53, yyvstop+729, 6090 yycrank+-6189, yysvec+53, yyvstop+731, 6091 yycrank+-6215, yysvec+53, yyvstop+733, 6092 yycrank+-6229, yysvec+53, yyvstop+735, 6093 yycrank+-6262, yysvec+53, yyvstop+737, 6094 yycrank+-6275, yysvec+53, yyvstop+740, 6095 yycrank+-6288, yysvec+53, yyvstop+742, 6096 yycrank+-6328, yysvec+53, yyvstop+745, 6097 yycrank+-6344, yysvec+53, yyvstop+747, 6098 yycrank+-6370, yysvec+53, yyvstop+749, 6099 yycrank+-6381, 0, yyvstop+751, 6100 yycrank+-6409, yysvec+53, yyvstop+753, 6101 yycrank+-6414, yysvec+53, yyvstop+756, 6102 yycrank+-6447, yysvec+53, yyvstop+758, 6103 yycrank+-6486, yysvec+53, yyvstop+760, 6104 yycrank+-6491, yysvec+53, yyvstop+762, 6105 yycrank+-6519, yysvec+53, yyvstop+764, 6106 yycrank+-6524, yysvec+53, yyvstop+767, 6107 yycrank+-6552, yysvec+53, yyvstop+769, 6108 yycrank+0, 0, yyvstop+771, 6109 yycrank+0, 0, yyvstop+773, 6110 yycrank+0, 0, yyvstop+775, 6111 yycrank+0, 0, yyvstop+777, 6112 yycrank+0, 0, yyvstop+779, 6113 yycrank+0, 0, yyvstop+781, 6114 yycrank+0, 0, yyvstop+783, 6115 yycrank+0, 0, yyvstop+785, 6116 yycrank+0, 0, yyvstop+787, 6117 yycrank+-6557, yysvec+24, yyvstop+789, 6118 yycrank+-6567, yysvec+24, yyvstop+792, 6119 yycrank+-6595, yysvec+24, yyvstop+794, 6120 yycrank+-6600, yysvec+24, yyvstop+796, 6121 yycrank+-6605, yysvec+24, yyvstop+798, 6122 yycrank+-6633, yysvec+24, yyvstop+800, 6123 yycrank+-6643, yysvec+24, yyvstop+802, 6124 yycrank+-6680, yysvec+24, yyvstop+804, 6125 yycrank+-6691, yysvec+24, yyvstop+806, 6126 yycrank+-6719, yysvec+24, yyvstop+808, 6127 yycrank+-6734, yysvec+24, yyvstop+810, 6128 yycrank+-6745, yysvec+24, yyvstop+813, 6129 yycrank+-6760, yysvec+24, yyvstop+815, 6130 yycrank+-6788, yysvec+24, yyvstop+818, 6131 yycrank+-6799, yysvec+24, yyvstop+820, 6132 yycrank+-6814, yysvec+24, yyvstop+822, 6133 yycrank+-6854, yysvec+24, yyvstop+824, 6134 yycrank+-6857, yysvec+24, yyvstop+827, 6135 yycrank+-6892, yysvec+24, yyvstop+829, 6136 yycrank+-6920, yysvec+24, yyvstop+831, 6137 yycrank+-6925, yysvec+24, yyvstop+833, 6138 yycrank+-6930, yysvec+24, yyvstop+835, 6139 yycrank+-6958, yysvec+24, yyvstop+837, 6140 yycrank+-6968, yysvec+24, yyvstop+839, 6141 yycrank+-6996, yysvec+24, yyvstop+841, 6142 yycrank+-7034, yysvec+24, yyvstop+843, 6143 yycrank+-7037, yysvec+24, yyvstop+845, 6144 yycrank+-7073, yysvec+24, yyvstop+847, 6145 yycrank+-7076, yysvec+53, yyvstop+849, 6146 yycrank+-7109, yysvec+53, yyvstop+852, 6147 yycrank+-7135, yysvec+53, yyvstop+854, 6148 yycrank+-7146, yysvec+53, yyvstop+856, 6149 yycrank+-7151, yysvec+53, yyvstop+858, 6150 yycrank+-7188, yysvec+53, yyvstop+860, 6151 yycrank+-7199, yysvec+53, yyvstop+862, 6152 yycrank+-7227, yysvec+53, yyvstop+864, 6153 yycrank+-7232, yysvec+53, yyvstop+866, 6154 yycrank+-7243, yysvec+53, yyvstop+869, 6155 yycrank+-7269, yysvec+53, yyvstop+871, 6156 yycrank+-7280, yysvec+53, yyvstop+873, 6157 yycrank+-7285, yysvec+53, yyvstop+875, 6158 yycrank+-7313, yysvec+53, yyvstop+878, 6159 yycrank+-7324, yysvec+53, yyvstop+880, 6160 yycrank+-7352, yysvec+53, yyvstop+882, 6161 yycrank+-7357, yysvec+53, yyvstop+884, 6162 yycrank+-7390, yysvec+53, yyvstop+886, 6163 yycrank+-7427, yysvec+53, yyvstop+888, 6164 yycrank+-7443, yysvec+53, yyvstop+890, 6165 yycrank+-7469, yysvec+53, yyvstop+892, 6166 yycrank+-7480, yysvec+53, yyvstop+894, 6167 yycrank+-7485, yysvec+53, yyvstop+896, 6168 yycrank+-7513, yysvec+53, yyvstop+898, 6169 yycrank+-7524, yysvec+24, yyvstop+900, 6170 yycrank+-7528, yysvec+24, yyvstop+903, 6171 yycrank+-7561, yysvec+24, yyvstop+905, 6172 yycrank+-7566, yysvec+24, yyvstop+907, 6173 yycrank+-7602, 0, yyvstop+909, 6174 yycrank+-7599, yysvec+24, yyvstop+911, 6175 yycrank+-7635, yysvec+24, yyvstop+913, 6176 yycrank+-7638, yysvec+24, yyvstop+916, 6177 yycrank+-7674, yysvec+24, yyvstop+918, 6178 yycrank+-7700, yysvec+24, yyvstop+920, 6179 yycrank+-7710, yysvec+24, yyvstop+922, 6180 yycrank+-7713, yysvec+24, yyvstop+924, 6181 yycrank+-7746, yysvec+24, yyvstop+927, 6182 yycrank+-7789, yysvec+24, yyvstop+929, 6183 yycrank+-7800, yysvec+24, yyvstop+931, 6184 yycrank+-7815, yysvec+24, yyvstop+933, 6185 yycrank+-7826, yysvec+24, yyvstop+935, 6186 yycrank+-7854, yysvec+24, yyvstop+937, 6187 yycrank+-7869, yysvec+24, yyvstop+939, 6188 yycrank+-7902, yysvec+24, yyvstop+942, 6189 yycrank+-7912, yysvec+24, yyvstop+944, 6190 yycrank+-7916, yysvec+24, yyvstop+946, 6191 yycrank+-7957, yysvec+24, yyvstop+949, 6192 yycrank+-7960, yysvec+24, yyvstop+951, 6193 yycrank+-8002, yysvec+53, yyvstop+953, 6194 yycrank+-8015, yysvec+53, yyvstop+956, 6195 yycrank+-8056, yysvec+53, yyvstop+958, 6196 yycrank+-8061, yysvec+53, yyvstop+960, 6197 yycrank+-8072, yysvec+53, yyvstop+962, 6198 yycrank+-8098, yysvec+53, yyvstop+964, 6199 yycrank+-8109, yysvec+53, yyvstop+966, 6200 yycrank+-8114, yysvec+53, yyvstop+968, 6201 yycrank+-8151, yysvec+53, yyvstop+970, 6202 yycrank+-8156, yysvec+53, yyvstop+973, 6203 yycrank+-8193, yysvec+53, yyvstop+975, 6204 yycrank+-8198, yysvec+53, yyvstop+977, 6205 yycrank+-8226, yysvec+53, yyvstop+979, 6206 yycrank+-8231, yysvec+53, yyvstop+981, 6207 yycrank+-8259, yysvec+53, yyvstop+983, 6208 yycrank+-8273, yysvec+53, yyvstop+985, 6209 yycrank+-8287, yysvec+53, yyvstop+988, 6210 yycrank+-8301, yysvec+53, yyvstop+990, 6211 yycrank+-8327, yysvec+53, yyvstop+992, 6212 yycrank+-8340, yysvec+53, yyvstop+995, 6213 yycrank+-8368, yysvec+53, yyvstop+997, 6214 yycrank+-8373, yysvec+24, yyvstop+999, 6215 yycrank+-8383, yysvec+24, yyvstop+1001, 6216 yycrank+-8416, yysvec+24, yyvstop+1004, 6217 yycrank+-8421, yysvec+24, yyvstop+1007, 6218 yycrank+-8449, yysvec+24, yyvstop+1009, 6219 yycrank+-8484, yysvec+24, yyvstop+1011, 6220 yycrank+-8487, yysvec+24, yyvstop+1013, 6221 yycrank+-8520, yysvec+24, yyvstop+1015, 6222 yycrank+-8525, yysvec+24, yyvstop+1017, 6223 yycrank+-8558, yysvec+24, yyvstop+1019, 6224 yycrank+-8561, yysvec+24, yyvstop+1021, 6225 yycrank+-8597, yysvec+24, yyvstop+1023, 6226 yycrank+-8630, yysvec+24, yyvstop+1026, 6227 yycrank+-8633, yysvec+24, yyvstop+1028, 6228 yycrank+-8666, yysvec+24, yyvstop+1030, 6229 yycrank+-8671, 0, yyvstop+1032, 6230 yycrank+-8699, yysvec+24, yyvstop+1034, 6231 yycrank+-8704, yysvec+24, yyvstop+1037, 6232 yycrank+-8709, yysvec+24, yyvstop+1039, 6233 yycrank+-8745, yysvec+24, yyvstop+1042, 6234 yycrank+-8778, yysvec+53, yyvstop+1045, 6235 yycrank+-8789, yysvec+53, yyvstop+1047, 6236 yycrank+-8815, yysvec+53, yyvstop+1050, 6237 yycrank+-8848, yysvec+53, yyvstop+1053, 6238 yycrank+-8853, yysvec+53, yyvstop+1055, 6239 yycrank+-8881, yysvec+53, yyvstop+1057, 6240 yycrank+-8886, yysvec+53, yyvstop+1059, 6241 yycrank+-8914, yysvec+53, yyvstop+1061, 6242 yycrank+-8919, yysvec+53, yyvstop+1063, 6243 yycrank+-8947, yysvec+53, yyvstop+1066, 6244 yycrank+-8952, yysvec+53, yyvstop+1068, 6245 yycrank+-8980, yysvec+53, yyvstop+1070, 6246 yycrank+-9006, 0, yyvstop+1072, 6247 yycrank+-9017, yysvec+53, yyvstop+1074, 6248 yycrank+-9059, yysvec+53, yyvstop+1077, 6249 yycrank+-9064, yysvec+53, yyvstop+1079, 6250 yycrank+-9092, yysvec+53, yyvstop+1082, 6251 yycrank+-9097, yysvec+24, yyvstop+1085, 6252 yycrank+-9107, yysvec+24, yyvstop+1087, 6253 yycrank+-9140, yysvec+24, yyvstop+1089, 6254 yycrank+-9145, yysvec+24, yyvstop+1091, 6255 yycrank+-9173, yysvec+24, yyvstop+1093, 6256 yycrank+-9185, yysvec+24, yyvstop+1095, 6257 yycrank+-9211, yysvec+24, yyvstop+1098, 6258 yycrank+-9247, yysvec+24, yyvstop+1100, 6259 yycrank+-9258, yysvec+24, yyvstop+1102, 6260 yycrank+-9273, yysvec+24, yyvstop+1105, 6261 yycrank+-9284, yysvec+24, yyvstop+1107, 6262 yycrank+-9320, yysvec+24, yyvstop+1109, 6263 yycrank+-9346, yysvec+24, yyvstop+1111, 6264 yycrank+-9360, yysvec+24, yyvstop+1113, 6265 yycrank+-9374, yysvec+24, yyvstop+1115, 6266 yycrank+-9415, yysvec+53, yyvstop+1117, 6267 yycrank+-9448, yysvec+53, yyvstop+1119, 6268 yycrank+-9453, yysvec+53, yyvstop+1121, 6269 yycrank+-9486, yysvec+53, yyvstop+1124, 6270 yycrank+-9491, yysvec+53, yyvstop+1126, 6271 yycrank+-9524, yysvec+53, yyvstop+1128, 6272 yycrank+-9550, yysvec+53, yyvstop+1131, 6273 yycrank+-9561, yysvec+53, yyvstop+1133, 6274 yycrank+-9566, yysvec+53, yyvstop+1135, 6275 yycrank+-9594, yysvec+53, yyvstop+1137, 6276 yycrank+-9608, yysvec+53, yyvstop+1139, 6277 yycrank+-9647, yysvec+53, yyvstop+1141, 6278 yycrank+-9652, yysvec+24, yyvstop+1143, 6279 yycrank+-9663, yysvec+24, yyvstop+1145, 6280 yycrank+-9680, yysvec+24, yyvstop+1148, 6281 yycrank+-9706, yysvec+24, yyvstop+1150, 6282 yycrank+-9717, yysvec+24, yyvstop+1153, 6283 yycrank+-9721, yysvec+24, yyvstop+1155, 6284 yycrank+-9754, yysvec+24, yyvstop+1158, 6285 yycrank+-9791, yysvec+24, yyvstop+1161, 6286 yycrank+-9794, yysvec+24, yyvstop+1163, 6287 yycrank+-9808, yysvec+24, yyvstop+1165, 6288 yycrank+-9834, yysvec+24, yyvstop+1167, 6289 yycrank+-9849, yysvec+24, yyvstop+1169, 6290 yycrank+-9894, yysvec+24, yyvstop+1171, 6291 yycrank+-9904, yysvec+53, yyvstop+1173, 6292 yycrank+-9920, yysvec+53, yyvstop+1175, 6293 yycrank+-9957, yysvec+53, yyvstop+1178, 6294 yycrank+-9962, yysvec+53, yyvstop+1181, 6295 yycrank+-9973, yysvec+53, yyvstop+1184, 6296 yycrank+-9999, yysvec+53, yyvstop+1186, 6297 yycrank+-10010, yysvec+53, yyvstop+1188, 6298 yycrank+-10015, yysvec+53, yyvstop+1190, 6299 yycrank+-10043, yysvec+53, yyvstop+1192, 6300 yycrank+-10076, yysvec+53, yyvstop+1194, 6301 yycrank+-10102, yysvec+24, yyvstop+1196, 6302 yycrank+-10113, yysvec+24, yyvstop+1198, 6303 yycrank+-10117, yysvec+24, yyvstop+1200, 6304 yycrank+-10130, yysvec+24, yyvstop+1202, 6305 yycrank+-10156, yysvec+24, yyvstop+1205, 6306 yycrank+-10171, yysvec+24, yyvstop+1207, 6307 yycrank+-10204, yysvec+24, yyvstop+1210, 6308 yycrank+-10241, yysvec+24, yyvstop+1213, 6309 yycrank+-10244, yysvec+24, yyvstop+1215, 6310 yycrank+-10277, yysvec+53, yyvstop+1217, 6311 yycrank+-10310, yysvec+53, yyvstop+1219, 6312 yycrank+-10315, yysvec+53, yyvstop+1222, 6313 yycrank+-10348, yysvec+53, yyvstop+1224, 6314 yycrank+-10353, yysvec+53, yyvstop+1227, 6315 yycrank+-10386, yysvec+53, yyvstop+1230, 6316 yycrank+-10391, yysvec+53, yyvstop+1232, 6317 yycrank+-10419, yysvec+24, yyvstop+1234, 6318 yycrank+-10424, yysvec+24, yyvstop+1236, 6319 yycrank+-10434, yysvec+24, yyvstop+1238, 6320 yycrank+-10462, yysvec+24, yyvstop+1240, 6321 yycrank+-10467, yysvec+24, yyvstop+1242, 6322 yycrank+-10509, yysvec+24, yyvstop+1244, 6323 yycrank+-10525, yysvec+53, yyvstop+1246, 6324 yycrank+-10553, yysvec+53, yyvstop+1248, 6325 yycrank+-10564, yysvec+53, yyvstop+1250, 6326 yycrank+-10569, yysvec+53, yyvstop+1252, 6327 yycrank+-10597, yysvec+24, yyvstop+1254, 6328 yycrank+-10610, yysvec+24, yyvstop+1256, 6329 yycrank+-10623, yysvec+24, yyvstop+1259, 6330 yycrank+-10664, yysvec+24, yyvstop+1262, 6331 yycrank+-10677, yysvec+24, yyvstop+1265, 6332 yycrank+-10690, yysvec+24, yyvstop+1267, 6333 yycrank+-10718, yysvec+53, yyvstop+1269, 6334 yycrank+-10731, yysvec+53, yyvstop+1271, 6335 yycrank+-10744, yysvec+53, yyvstop+1274, 6336 yycrank+-10784, yysvec+53, yyvstop+1276, 6337 yycrank+-10797, yysvec+24, yyvstop+1278, 6338 yycrank+-10800, yysvec+24, yyvstop+1280, 6339 yycrank+-10810, yysvec+24, yyvstop+1283, 6340 yycrank+-10838, yysvec+53, yyvstop+1285, 6341 yycrank+-10843, yysvec+53, yyvstop+1287, 6342 yycrank+-10876, yysvec+53, yyvstop+1290, 6343 yycrank+-10904, yysvec+24, yyvstop+1292, 6344 yycrank+-10909, yysvec+24, yyvstop+1295, 6345 yycrank+-10914, yysvec+53, yyvstop+1297, 6346 yycrank+-10942, yysvec+53, yyvstop+1300, 6347 yycrank+-10947, yysvec+24, yyvstop+1302, 6348 yycrank+-10975, yysvec+53, yyvstop+1305, 6349 0, 0, 0}; 6350 struct yywork *yytop = yycrank+11057; 6351 struct yysvf *yybgin = yysvec+1; 6352 char yymatch[] = { 6353 0, 1, 1, 1, 1, 1, 1, 1, 6354 1, 9, 10, 1, 1, 1, 1, 1, 6355 1, 1, 1, 1, 1, 1, 1, 1, 6356 1, 1, 1, 1, 1, 1, 1, 1, 6357 9, 1, 34, 1, 1, 1, 1, 1, 6358 40, 40, 1, 1, 44, 1, 1, 1, 6359 1, 1, 1, 1, 1, 1, 1, 1, 6360 1, 1, 1, 40, 1, 40, 1, 1, 6361 1, 1, 1, 1, 1, 1, 1, 1, 6362 1, 1, 1, 1, 1, 1, 1, 1, 6363 1, 1, 1, 1, 1, 1, 1, 1, 6364 1, 1, 1, 91, 1, 91, 1, 1, 6365 1, 1, 1, 1, 1, 1, 1, 1, 6366 1, 1, 1, 1, 1, 1, 1, 1, 6367 1, 1, 1, 1, 1, 1, 1, 1, 6368 1, 1, 1, 1, 1, 1, 1, 1, 6369 1, 1, 1, 1, 1, 1, 1, 1, 6370 1, 1, 1, 1, 1, 1, 1, 1, 6371 1, 1, 1, 1, 1, 1, 1, 1, 6372 1, 1, 1, 1, 1, 1, 1, 1, 6373 1, 1, 1, 1, 1, 1, 1, 1, 6374 1, 1, 1, 1, 1, 1, 1, 1, 6375 1, 1, 1, 1, 1, 1, 1, 1, 6376 1, 1, 1, 1, 1, 1, 1, 1, 6377 1, 1, 1, 1, 1, 1, 1, 1, 6378 1, 1, 1, 1, 1, 1, 1, 1, 6379 1, 1, 1, 1, 1, 1, 1, 1, 6380 1, 1, 1, 1, 1, 1, 1, 1, 6381 1, 1, 1, 1, 1, 1, 1, 1, 6382 1, 1, 1, 1, 1, 1, 1, 1, 6383 1, 1, 1, 1, 1, 1, 1, 1, 6384 1, 1, 1, 1, 1, 1, 1, 1, 6385 0}; 6386 char yyextra[] = { 6387 0,0,0,0,0,0,0,0, 6388 0,0,0,0,0,0,0,0, 6389 0,0,0,0,0,0,0,0, 6390 0,0,0,0,0,0,0,0, 6391 0,0,0,0,0,0,0,0, 6392 0,0,0,0,0,0,0,0, 6393 0,0,0,0,0,0,0,0, 6394 0,0,0,0,0,0,0,0, 6395 0,0,0,0,0,0,0,0, 6396 0,0,0,0,0,0,0,0, 6397 0,0,0,0,0,0,0,0, 6398 0,0,0,0,0,0,0,0, 6399 0,0,0,0,0,0,0,0, 6400 0,0,0,0,0,0,0,0, 6401 0,0,0,0,0,0,0,0, 6402 0,0,0,0,0,0,0,0, 6403 0}; 6404 /* 6405 * CDDL HEADER START 6406 * 6407 * The contents of this file are subject to the terms of the 6408 * Common Development and Distribution License, Version 1.0 only 6409 * (the "License"). You may not use this file except in compliance 6410 * with the License. 6411 * 6412 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6413 * or http://www.opensolaris.org/os/licensing. 6414 * See the License for the specific language governing permissions 6415 * and limitations under the License. 6416 * 6417 * When distributing Covered Code, include this CDDL HEADER in each 6418 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6419 * If applicable, add the following below this CDDL HEADER, with the 6420 * fields enclosed by brackets "[]" replaced with your own identifying 6421 * information: Portions Copyright [yyyy] [name of copyright owner] 6422 * 6423 * CDDL HEADER END 6424 */ 6425 6426 /* Copyright (c) 1989 AT&T */ 6427 /* All Rights Reserved */ 6428 6429 #pragma ident "%Z%%M% %I% %E% SMI" 6430 6431 int yylineno =1; 6432 # define YYU(x) x 6433 # define NLSTATE yyprevious=YYNEWLINE 6434 struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp; 6435 char yysbuf[YYLMAX]; 6436 char *yysptr = yysbuf; 6437 int *yyfnd; 6438 extern struct yysvf *yyestate; 6439 int yyprevious = YYNEWLINE; 6440 #if defined(__cplusplus) || defined(__STDC__) 6441 int yylook(void) 6442 #else 6443 yylook() 6444 #endif 6445 { 6446 register struct yysvf *yystate, **lsp; 6447 register struct yywork *yyt; 6448 struct yysvf *yyz; 6449 int yych, yyfirst; 6450 struct yywork *yyr; 6451 # ifdef LEXDEBUG 6452 int debug; 6453 # endif 6454 char *yylastch; 6455 /* start off machines */ 6456 # ifdef LEXDEBUG 6457 debug = 0; 6458 # endif 6459 yyfirst=1; 6460 if (!yymorfg) 6461 yylastch = yytext; 6462 else { 6463 yymorfg=0; 6464 yylastch = yytext+yyleng; 6465 } 6466 for(;;){ 6467 lsp = yylstate; 6468 yyestate = yystate = yybgin; 6469 if (yyprevious==YYNEWLINE) yystate++; 6470 for (;;){ 6471 # ifdef LEXDEBUG 6472 if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1); 6473 # endif 6474 yyt = yystate->yystoff; 6475 if(yyt == yycrank && !yyfirst){ /* may not be any transitions */ 6476 yyz = yystate->yyother; 6477 if(yyz == 0)break; 6478 if(yyz->yystoff == yycrank)break; 6479 } 6480 #ifndef __cplusplus 6481 *yylastch++ = yych = input(); 6482 #else 6483 *yylastch++ = yych = lex_input(); 6484 #endif 6485 #ifdef YYISARRAY 6486 if(yylastch > &yytext[YYLMAX]) { 6487 fprintf(yyout,"Input string too long, limit %d\n",YYLMAX); 6488 exit(1); 6489 } 6490 #else 6491 if (yylastch >= &yytext[ yytextsz ]) { 6492 int x = yylastch - yytext; 6493 6494 yytextsz += YYTEXTSZINC; 6495 if (yytext == yy_tbuf) { 6496 yytext = (char *) malloc(yytextsz); 6497 memcpy(yytext, yy_tbuf, sizeof (yy_tbuf)); 6498 } 6499 else 6500 yytext = (char *) realloc(yytext, yytextsz); 6501 if (!yytext) { 6502 fprintf(yyout, 6503 "Cannot realloc yytext\n"); 6504 exit(1); 6505 } 6506 yylastch = yytext + x; 6507 } 6508 #endif 6509 yyfirst=0; 6510 tryagain: 6511 # ifdef LEXDEBUG 6512 if(debug){ 6513 fprintf(yyout,"char "); 6514 allprint(yych); 6515 putchar('\n'); 6516 } 6517 # endif 6518 yyr = yyt; 6519 if ( (uintptr_t)yyt > (uintptr_t)yycrank){ 6520 yyt = yyr + yych; 6521 if (yyt <= yytop && yyt->verify+yysvec == yystate){ 6522 if(yyt->advance+yysvec == YYLERR) /* error transitions */ 6523 {unput(*--yylastch);break;} 6524 *lsp++ = yystate = yyt->advance+yysvec; 6525 if(lsp > &yylstate[YYLMAX]) { 6526 fprintf(yyout,"Input string too long, limit %d\n",YYLMAX); 6527 exit(1); 6528 } 6529 goto contin; 6530 } 6531 } 6532 # ifdef YYOPTIM 6533 else if((uintptr_t)yyt < (uintptr_t)yycrank) { /* r < yycrank */ 6534 yyt = yyr = yycrank+(yycrank-yyt); 6535 # ifdef LEXDEBUG 6536 if(debug)fprintf(yyout,"compressed state\n"); 6537 # endif 6538 yyt = yyt + yych; 6539 if(yyt <= yytop && yyt->verify+yysvec == yystate){ 6540 if(yyt->advance+yysvec == YYLERR) /* error transitions */ 6541 {unput(*--yylastch);break;} 6542 *lsp++ = yystate = yyt->advance+yysvec; 6543 if(lsp > &yylstate[YYLMAX]) { 6544 fprintf(yyout,"Input string too long, limit %d\n",YYLMAX); 6545 exit(1); 6546 } 6547 goto contin; 6548 } 6549 yyt = yyr + YYU(yymatch[yych]); 6550 # ifdef LEXDEBUG 6551 if(debug){ 6552 fprintf(yyout,"try fall back character "); 6553 allprint(YYU(yymatch[yych])); 6554 putchar('\n'); 6555 } 6556 # endif 6557 if(yyt <= yytop && yyt->verify+yysvec == yystate){ 6558 if(yyt->advance+yysvec == YYLERR) /* error transition */ 6559 {unput(*--yylastch);break;} 6560 *lsp++ = yystate = yyt->advance+yysvec; 6561 if(lsp > &yylstate[YYLMAX]) { 6562 fprintf(yyout,"Input string too long, limit %d\n",YYLMAX); 6563 exit(1); 6564 } 6565 goto contin; 6566 } 6567 } 6568 if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){ 6569 # ifdef LEXDEBUG 6570 if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1); 6571 # endif 6572 goto tryagain; 6573 } 6574 # endif 6575 else 6576 {unput(*--yylastch);break;} 6577 contin: 6578 # ifdef LEXDEBUG 6579 if(debug){ 6580 fprintf(yyout,"state %d char ",yystate-yysvec-1); 6581 allprint(yych); 6582 putchar('\n'); 6583 } 6584 # endif 6585 ; 6586 } 6587 # ifdef LEXDEBUG 6588 if(debug){ 6589 fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1); 6590 allprint(yych); 6591 putchar('\n'); 6592 } 6593 # endif 6594 while (lsp-- > yylstate){ 6595 *yylastch-- = 0; 6596 if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){ 6597 yyolsp = lsp; 6598 if(yyextra[*yyfnd]){ /* must backup */ 6599 while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){ 6600 lsp--; 6601 unput(*yylastch--); 6602 } 6603 } 6604 yyprevious = YYU(*yylastch); 6605 yylsp = lsp; 6606 yyleng = yylastch-yytext+1; 6607 yytext[yyleng] = 0; 6608 # ifdef LEXDEBUG 6609 if(debug){ 6610 fprintf(yyout,"\nmatch "); 6611 sprint(yytext); 6612 fprintf(yyout," action %d\n",*yyfnd); 6613 } 6614 # endif 6615 return(*yyfnd++); 6616 } 6617 unput(*yylastch); 6618 } 6619 if (yytext[0] == 0 /* && feof(yyin) */) 6620 { 6621 yysptr=yysbuf; 6622 return(0); 6623 } 6624 #ifndef __cplusplus 6625 yyprevious = yytext[0] = input(); 6626 if (yyprevious>0) 6627 output(yyprevious); 6628 #else 6629 yyprevious = yytext[0] = lex_input(); 6630 if (yyprevious>0) 6631 lex_output(yyprevious); 6632 #endif 6633 yylastch=yytext; 6634 # ifdef LEXDEBUG 6635 if(debug)putchar('\n'); 6636 # endif 6637 } 6638 } 6639 #if defined(__cplusplus) || defined(__STDC__) 6640 int yyback(int *p, int m) 6641 #else 6642 yyback(p, m) 6643 int *p; 6644 #endif 6645 { 6646 if (p==0) return(0); 6647 while (*p) { 6648 if (*p++ == m) 6649 return(1); 6650 } 6651 return(0); 6652 } 6653 /* the following are only used in the lex library */ 6654 #if defined(__cplusplus) || defined(__STDC__) 6655 int yyinput(void) 6656 #else 6657 yyinput() 6658 #endif 6659 { 6660 #ifndef __cplusplus 6661 return(input()); 6662 #else 6663 return(lex_input()); 6664 #endif 6665 } 6666 #if defined(__cplusplus) || defined(__STDC__) 6667 void yyoutput(int c) 6668 #else 6669 yyoutput(c) 6670 int c; 6671 #endif 6672 { 6673 #ifndef __cplusplus 6674 output(c); 6675 #else 6676 lex_output(c); 6677 #endif 6678 } 6679 #if defined(__cplusplus) || defined(__STDC__) 6680 void yyunput(int c) 6681 #else 6682 yyunput(c) 6683 int c; 6684 #endif 6685 { 6686 unput(c); 6687 } 6688