0 1 2 2 3 0 4 5 6 6 7 4 8 9 10 10 11 8 12 13 14 14 15 12 16 17 18 18 19 16 20 21 22 22 23 20 24 25 26 26 27 24 28 29 30 30 31 28 32 33 34 34 35 32 36 37 38 38 39 36 40 41 42 42 43 40 44 45 46 46 47 44 48 49 50 50 51 48 52 53 54 54 55 52 56 57 58 58 59 56 60 61 62 62 63 60 64 65 66 67 64 66 68 67 66 68 66 69 70 71 72 72 73 70 74 75 76 77 74 76 77 76 78 77 78 79 80 81 82 82 83 80 84 85 86 86 87 84 88 89 90 90 91 88 92 93 94 94 95 92 96 97 98 98 99 96 100 101 102 102 103 100 104 105 106 106 107 104 108 109 110 110 111 108 112 113 114 114 115 112 116 117 118 118 119 116 120 121 122 122 123 120 124 125 126 126 127 124 128 129 130 130 131 128 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 170 171 168 172 173 174 174 175 172 176 177 178 178 179 176 180 181 182 182 183 180 184 185 186 186 187 184 188 189 190 190 191 188 192 193 194 194 195 192 196 197 198 198 199 196 200 201 202 202 203 200 204 205 206 206 207 204 208 209 210 210 211 208 212 213 214 214 215 212 216 217 218 218 219 216 220 221 222 222 223 220 224 225 226 226 227 224 228 229 230 230 231 228 232 233 234 234 235 232 236 237 238 238 239 236 240 241 242 242 243 240 244 245 246 246 247 244 248 249 250 250 251 248 252 253 254 254 255 252 256 257 258 258 259 256 260 261 262 262 263 260 264 265 266 266 267 264 268 269 270 270 271 268 272 273 274 274 275 272 276 277 278 278 279 276 280 281 282 282 283 280 284 285 286 286 287 284 288 289 290 290 291 288 292 293 294 294 295 292 296 297 298 298 299 296 300 301 302 302 303 300 304 305 306 306 307 304 308 309 310 310 311 308 312 313 314 314 315 312 316 317 318 318 319 316 320 321 322 322 323 320 324 325 326 326 327 324 328 329 330 330 331 328 332 333 334 334 335 332 336 337 338 338 339 336 340 341 342 342 343 340 344 345 346 346 347 344 348 349 350 350 351 348 352 353 354 354 355 352 356 357 358 358 359 356 360 361 362 362 363 360 364 365 366 366 367 364 368 369 370 370 371 368 372 373 374 374 375 372 376 377 378 378 379 376 380 381 382 382 383 380 384 385 386 386 387 384 388 389 390 390 391 388 392 393 394 394 395 392 396 397 398 398 399 396 400 401 402 402 403 400 404 405 406 406 407 404 408 409 410 410 411 408 412 413 414 414 415 412 416 417 418 418 419 416 420 421 422 422 423 420 424 425 426 426 427 424 428 429 430 430 431 428 432 433 434 434 435 432 436 437 438 438 439 436 440 441 442 442 443 440 444 445 446 446 447 444 448 449 450 450 451 448 452 453 454 454 455 452 456 457 458 458 459 456 460 461 462 462 463 460 464 465 466 466 467 464 468 469 470 470 471 468 472 473 474 474 475 472 476 477 478 478 479 476 480 481 482 482 483 480 484 485 486 486 487 484 488 489 490 490 491 488 492 493 489 489 488 492 479 478 494 494 495 479 496 497 498 498 499 496 499 498 500 500 501 499 502 503 504 504 505 502 506 507 508 508 509 506 510 511 512 512 513 510 513 512 514 514 515 513 516 517 518 518 519 516 520 521 522 522 523 520 524 525 526 526 527 524 528 529 530 530 531 528 532 533 529 529 528 532 519 518 534 534 535 519 536 537 538 538 539 536 539 538 540 540 541 539 542 543 544 544 545 542 546 547 548 548 549 546 550 551 552 552 553 550 553 552 554 554 555 553 556 557 558 558 559 556 560 561 562 562 563 560 564 565 566 566 567 564 568 569 570 570 571 568 572 573 569 569 568 572 559 558 574 574 575 559 576 577 578 578 579 576 579 578 580 580 581 579 582 583 584 584 585 582 586 587 588 588 589 586 590 591 592 592 593 590 593 592 594 594 595 593 596 597 598 598 599 596 600 601 602 602 603 600 604 605 606 606 607 604 608 609 610 610 611 608 612 613 609 609 608 612 599 598 614 614 615 599 616 617 618 618 619 616 619 618 620 620 621 619 622 623 624 624 625 622 626 627 628 628 629 626 630 631 632 632 633 630 633 632 634 634 635 633 636 637 638 638 639 636 640 641 642 642 643 640 644 645 646 646 647 644 648 649 650 650 651 648 652 653 649 649 648 652 639 638 654 654 655 639 656 657 658 658 659 656 659 658 660 660 661 659 662 663 664 664 665 662 666 667 668 668 669 666 670 671 672 672 673 670 673 672 674 674 675 673 676 677 678 678 679 676 680 681 682 682 683 680 684 685 686 686 687 684 688 689 690 690 691 688 692 693 689 689 688 692 679 678 694 694 695 679 696 697 698 698 699 696 699 698 700 700 701 699 702 703 704 704 705 702 706 707 708 708 709 706 710 711 712 712 713 710 713 712 714 714 715 713 716 717 718 718 719 716 720 721 722 722 723 720 724 725 726 726 727 724 728 729 730 730 731 728 732 733 729 729 728 732 719 718 734 734 735 719 736 737 738 738 739 736 739 738 740 740 741 739 742 743 744 744 745 742 746 747 748 748 749 746 750 751 752 752 753 750 753 752 754 754 755 753 756 757 758 758 759 756 760 761 762 762 763 760 764 765 766 766 767 764 768 769 770 770 771 768 772 773 769 769 768 772 759 758 774 774 775 759 776 777 778 778 779 776 779 778 780 780 781 779 782 783 784 784 785 782 786 787 788 788 789 786 790 791 792 792 793 790 793 792 794 794 795 793 796 797 798 798 799 796 800 801 802 802 803 800 804 805 806 806 807 804 808 809 810 810 811 808 812 813 809 809 808 812 799 798 814 814 815 799 816 817 818 818 819 816 819 818 820 820 821 819 822 823 824 824 825 822 826 827 828 828 829 826 830 831 832 832 833 830 833 832 834 834 835 833 836 837 838 838 839 836 840 841 842 842 843 840 844 845 846 846 847 844 848 849 850 850 851 848 852 853 849 849 848 852 839 838 854 854 855 839 856 857 858 858 859 856 859 858 860 860 861 859 862 863 864 864 865 862 866 867 868 868 869 866 870 871 872 872 873 870 873 872 874 874 875 873 876 877 878 878 879 876 880 881 882 882 883 880 884 885 886 886 887 884 888 889 890 890 891 888 892 893 889 889 888 892 879 878 894 894 895 879 896 897 898 898 899 896 899 898 900 900 901 899 902 903 904 904 905 902 906 907 908 908 909 906 910 911 912 912 913 910 913 912 914 914 915 913 916 917 918 918 919 916 917 920 921 921 918 917 922 923 924 924 925 922 923 926 927 927 924 923 926 928 929 929 927 926 930 931 932 932 933 930 931 934 935 935 932 931 934 936 937 937 935 934 938 939 940 940 941 938 939 942 943 943 940 939 942 944 945 945 943 942 946 916 919 919 947 946 948 949 950 950 951 948 949 952 953 953 950 949 954 955 956 956 957 954 955 958 959 959 956 955 958 960 961 961 959 958 962 963 964 964 965 962 963 966 967 967 964 963 966 968 969 969 967 966 970 971 972 972 973 970 971 974 975 975 972 971 974 976 977 977 975 974 978 948 951 951 979 978 980 981 982 982 983 980 981 984 985 985 982 981 984 986 987 987 985 984 986 988 989 989 987 986 988 990 991 991 989 988 990 992 993 993 991 990 994 995 996 996 997 994 995 998 999 999 996 995 998 1000 1001 1001 999 998 1000 1002 1003 1003 1001 1000 1002 1004 1005 1005 1003 1002 1004 1006 1007 1007 1005 1004 1008 1009 1010 1009 1011 1010 1011 1012 1010 1012 1013 1010 1013 1014 1010 1014 1015 1010 1015 1016 1010 1016 1017 1010 1017 1018 1010 1018 1019 1010 1019 1020 1010 1020 1008 1010