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