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