1000 2000 722 939 530579090 404 606 268877348 133 750 760086153 506 46 582310443 919 805 48119731 216 497 987564921 688 703 58956144 248 526 339959001 996 65 338882921 523 123 604765102 834 894 90118472 951 788 973124369 693 148 569643819 940 167 157258543 323 694 146949125 242 238 731193775 995 733 550919757 646 16 791418452 966 409 760742424 13 2 959854159 201 72 700267804 556 63 634426907 90 908 261178269 55 114 462800112 60 580 215782471 89 397 982619353 691 219 150553045 995 129 293435203 976 696 258510107 523 704 366888955 312 226 352858573 744 585 17939132 315 619 411341452 126 242 626526816 877 726 774554135 251 672 283439424 831 167 72252104 258 104 718944328 707 225 357956029 784 47 230373193 898 186 984129849 463 289 843372794 781 463 571153148 109 526 46853793 382 171 485128455 574 225 121589789 190 729 73347065 3 201 297011005 333 556 942147362 415 936 639770670 138 983 370280094 852 277 755644621 803 963 721267154 972 49 1890712 309 189 708157840 56 939 84181615 696 111 992711185 744 755 69849951 453 353 88664636 370 948 622115774 912 327 808459258 219 623 396277492 643 796 378347647 408 593 833805148 722 895 398064104 683 727 830099343 217 984 108252767 403 20 583970860 130 351 400128524 669 471 806042107 477 171 260063191 21 373 776526787 788 474 297601354 415 37 82401507 19 533 158711300 530 884 575778287 331 540 829682751 193 705 981154829 735 794 376062565 565 728 975208835 732 874 442432374 76 613 844168913 485 79 367882791 600 366 990855806 925 207 829962234 671 81 295522047 964 388 17589494 168 398 358904206 576 933 917746859 209 152 916316322 936 264 845514812 628 533 315259165 129 177 935886293 754 860 640494044 351 654 858065402 983 782 150254123 878 340 207560566 188 732 528115672 548 983 976620558 911 65 535203619 984 218 583382882 967 744 559541480 647 969 851293457 375 144 946661441 500 529 7646800 745 700 372768744 669 572 830730400 956 435 773367647 524 250 39171486 850 451 885522028 360 963 227354632 798 535 109359344 966 616 171238163 86 148 694585734 867 592 379511998 887 514 838272637 136 206 737029231 432 322 825777372 105 972 202110949 441 426 687062763 911 951 900219055 43 542 728194804 450 767 741685149 358 577 480051858 466 557 213378381 592 880 682461250 440 587 156315970 973 78 976560259 198 655 762428325 986 509 402173013 877 994 340139441 877 515 488441170 355 577 374218234 849 365 677253547 383 157 301039467 180 658 456424306 791 168 831569394 508 532 528598842 810 939 716562821 784 804 996652829 152 712 646552432 196 789 638477245 359 991 911083809 392 681 916039875 531 279 973578432 167 357 815013873 981 1 179134231 237 645 603684580 439 991 478265180 31 459 975512342 693 512 658508285 49 911 886400338 629 275 414036047 929 302 864651101 78 227 366028371 382 458 559305568 363 573 180396392 572 316 147677831 590 690 362523493 833 799 394332740 911 951 550966410 335 26 678879480 916 62 161058151 761 223 496310267 342 441 439533918 600 267 915013967 364 699 111918503 596 387 896446316 695 859 463367515 634 14 310622219 334 472 418102848 579 29 565335530 197 256 304159515 1000 979 628086771 301 642 640504253 942 68 239735327 77 601 143620444 896 586 214082915 584 653 585049463 465 574 618669530 179 959 368313513 671 81 407132071 369 336 817321442 220 145 580813312 659 609 462889913 735 595 2020417 893 741 711945434 615 956 149078032 767 187 879850190 575 236 669809806 958 354 77573530 197 240 263849488 100 677 407633358 566 661 574517379 841 977 457125025 945 48 137579158 792 757 409320330 426 556 562908838 594 253 310648051 840 553 331382824 58 284 321887825 26 93 194856220 685 288 754942410 164 821 945452218 798 761 306216937 891 902 698986131 158 832 13075574 734 199 690220720 723 292 790724281 756 428 890342616 157 367 638133202 463 240 708349883 124 448 321161282 606 64 576738722 534 407 620108354 689 731 578545309 860 507 414972847 795 513 892706395 770 548 217590583 253 531 196753418 812 127 59093505 905 843 312296243 345 556 847669041 897 909 324605249 815 423 423176194 444 377 688717703 968 215 959146909 116 618 338359251 534 136 139199606 692 182 865684002 195 910 236932317 374 373 214633154 183 315 439593094 989 62 443911856 391 931 554065304 537 833 432389437 930 413 587656628 719 872 953083988 415 840 384532478 181 920 756179632 68 259 64569983 569 483 702209433 484 736 625065726 366 553 219300431 773 43 322820638 911 49 269960799 651 905 953739487 220 376 203080489 310 828 164222020 891 676 497817466 13 149 2803564 980 106 277516208 514 815 564578619 765 630 500034541 503 958 753846025 616 977 377654985 994 615 630232810 620 303 579001486 394 325 672273725 105 981 844271605 157 116 845947476 179 231 715950041 107 487 324567222 723 292 397367757 111 233 264959294 461 715 92077830 845 249 284906248 512 778 359206294 513 208 722342476 187 355 577773792 236 606 230033346 402 842 822254402 742 300 780744941 400 532 67628735 406 520 709668000 279 434 226403342 565 330 224474710 991 42 640169682 50 156 695597675 630 690 189061036 505 361 201232401 171 382 136381776 955 870 434937228 363 984 245185501 435 783 201657422 805 414 660573774 299 291 353977290 846 220 433406410 723 724 491246229 121 867 744324414 628 242 79958065 651 567 692106301 952 813 60967606 555 134 836587231 835 396 39062390 940 255 102951327 356 314 113363406 868 678 921938214 964 937 754446119 921 59 409513409 239 483 122952106 205 273 380498237 817 776 20741650 288 933 442928530 392 330 263741790 412 667 849377900 564 761 468156992 877 651 334944424 466 296 641073792 73 615 673150843 30 276 774851551 547 735 492829983 891 675 175307657 806 505 225626522 385 638 670545796 755 220 540664131 904 562 206092070 173 633 302239960 217 612 61736525 267 191 201455117 387 727 656913294 474 996 802452609 655 198 117674048 966 307 912632601 869 844 702341793 840 37 314414736 654 160 597493917 422 524 842401378 100 470 682713239 570 286 78726396 131 994 502426465 114 400 841182735 637 539 419877687 381 767 176785564 741 898 666732315 505 191 988827178 336 275 485889974 832 114 429572060 305 463 875806326 666 522 366516616 975 442 274414120 435 728 116574061 324 130 444691555 947 946 678119896 600 224 320738795 971 278 718223613 839 463 98928886 969 772 453864329 972 1 298731278 705 327 598110886 565 258 143760928 678 593 469774969 220 18 22583100 329 70 979133002 539 747 639981074 33 224 597409998 898 893 232800898 711 856 849880336 839 305 848750243 503 386 914399668 731 715 585754160 278 518 839410391 225 42 365183128 329 509 843096680 144 800 498420520 480 988 325864014 102 931 355564200 950 848 728390205 601 588 175396170 61 933 44660285 207 285 325882748 159 648 562971078 637 780 629680214 740 648 178568381 184 421 775801376 136 657 945858976 740 159 912396694 672 698 783392414 34 902 724323557 407 385 82049496 920 735 315590090 22 924 316990321 464 636 173012722 12 205 286544257 145 929 386673670 630 921 25532895 335 561 440434000 29 38 869278404 916 580 114978764 717 474 389968486 160 858 153799151 337 987 776980408 231 40 308613196 692 369 167251621 376 713 42019932 932 92 397164811 796 706 870651687 856 728 469407861 406 501 778519844 732 192 246903160 270 172 172818769 367 261 423995934 226 958 112214167 446 772 899520614 437 938 91793744 612 666 328663148 293 195 885989559 626 410 778546646 518 971 802393221 71 639 428745623 640 668 570898151 280 731 446150635 743 929 281999863 943 498 930877607 160 318 24998571 27 210 543300751 631 263 67872622 214 1 213687412 289 871 14016384 294 881 180000155 353 949 449181082 272 607 16731727 598 957 887985857 850 91 797257856 453 527 452895420 170 783 391584979 160 325 229994655 104 205 200604816 614 565 489742159 330 258 164058840 288 579 569967074 557 484 620261311 624 22 733790653 830 661 232086359 51 947 424219420 995 2 745648876 311 860 454042376 247 722 30303444 136 625 10653559 783 956 609574270 821 188 504147845 519 687 777170138 997 432 82733825 409 69 922700921 246 582 405166302 405 494 384200587 962 304 358433386 697 552 208730255 762 319 421507592 608 87 335691850 992 415 952298372 863 21 235222442 510 830 995908453 774 684 799750758 489 954 902407096 48 980 641908161 564 833 818500013 497 266 671393925 419 855 76405263 366 264 99826717 635 249 28155495 495 21 45329085 454 227 911050115 498 943 171525386 687 184 795231114 300 873 29492333 314 84 40409141 559 605 90112070 118 268 861665924 207 145 193078596 83 561 700126402 704 873 597258743 999 96 188874876 649 783 360141185 232 915 404473866 279 717 541066112 99 921 318400135 818 866 548704375 7 412 533850314 798 605 123408671 529 810 16495761 507 828 788587343 792 438 652144241 927 692 690180501 509 30 84788067 615 671 285182365 97 56 995693139 878 635 74670057 264 883 170083255 419 855 622348085 138 548 265259251 737 489 52056698 520 686 648846357 986 818 667152420 676 295 238312684 958 312 858667800 423 57 901056325 546 206 50426256 17 503 914988198 85 376 415880277 360 72 453286754 66 868 384431240 555 900 569714313 391 919 779335167 672 75 425710168 50 51 459208880 912 627 474961221 880 518 334628380 79 279 200399065 895 213 178893468 304 63 126611595 280 391 990432959 749 828 496297545 445 152 585919257 385 730 833893868 917 194 75046039 923 674 63419190 481 852 720952659 226 219 934528433 14 60 605272592 942 470 288154009 998 748 549564852 119 684 61436103 78 665 81690259 39 908 787148999 231 857 356705810 370 9 427676771 150 185 340534810 654 160 732617799 377 961 649290024 348 166 90280765 642 841 935826445 26 322 454233710 973 5 91879312 176 689 175171343 867 677 541683400 553 37 27669040 283 110 783047948 140 321 290179481 336 605 63666805 609 766 110038185 113 725 319589922 776 864 941863049 521 107 181417181 212 244 727821300 526 853 223315322 347 137 531833167 548 315 385320832 1000 223 386843625 731 461 525458591 372 949 38980983 152 77 950381843 54 91 111255846 375 621 1666727 515 672 998058312 291 721 915902655 465 903 465955927 746 976 346230227 234 271 585846297 90 348 877128100 243 402 327792611 315 854 630806421 222 343 55880026 710 360 470222867 325 317 798614100 619 679 349920749 122 930 638491841 744 302 691280521 520 308 569882650 327 183 172320338 785 649 936045960 308 701 619580691 167 622 484462578 897 626 161954205 435 709 273754047 717 951 531221257 329 898 186734943 809 777 128862266 117 270 255473890 452 128 24223065 276 954 559883969 579 266 821907121 674 477 817123359 154 590 438537778 470 838 591913962 644 340 89712590 931 919 907808193 814 199 342362996 539 676 667762188 502 877 460018764 147 239 461949666 794 595 159671774 888 975 37424288 901 642 122704034 963 932 215169290 527 949 387473516 4 138 999664218 536 249 118347633 228 239 519322505 85 285 646317855 577 173 752265209 274 899 477535764 65 49 363069169 704 808 67487240 104 412 980871300 40 808 377365801 344 966 312177087 203 913 242566774 546 313 54142386 214 951 553167979 367 157 680036747 427 240 405381749 898 893 931278888 501 688 27172888 833 182 811774942 442 394 538091507 464 489 523475467 561 380 657937725 188 850 301669172 506 196 755876297 727 973 794304884 531 527 891901699 276 464 426245099 76 67 488165359 86 966 545430742 550 651 943948132 80 964 342327425 700 226 275032781 721 291 238691035 470 950 819454222 94 954 503542753 649 234 336548755 431 568 75642368 572 316 409232017 967 448 818959014 787 196 718926728 673 748 587340385 561 246 211455613 769 482 745437174 183 41 356577676 618 272 727799862 619 705 721752139 416 564 499602186 747 385 54716907 569 733 453247559 688 384 796930299 622 888 460892267 602 284 583814068 6 429 1841715 824 339 578881275 814 352 694890973 960 29 818026610 307 835 353145613 14 663 748594809 16 581 729101485 678 819 116165957 655 915 181822882 954 636 848474279 580 53 997520559 186 329 403642717 629 27 63873536 722 399 222486093 908 133 227031247 766 190 650042784 796 907 313391667 156 487 961907059 564 771 689872940 166 348 312334450 489 94 640954064 128 621 518077375 83 532 25654102 725 109 23485848 641 802 500308768 177 758 789490702 818 70 714159038 560 222 717151503 388 454 384053192 499 98 859599658 471 501 601198900 178 306 596936230 876 916 519200093 20 91 691330866 462 108 54670995 719 72 818559030 414 467 831833745 830 200 973129178 30 636 24402435 422 791 180502669 354 630 633574933 375 39 141253644 670 328 333311013 95 65 416070277 473 622 706239192 969 359 597275934 695 529 25014923 182 662 449071736 897 625 632238691 750 287 911169729 914 575 547062828 19 126 399905787 262 986 7184752 84 145 394066125 961 687 603599844 46 186 26235240 974 887 676591195 706 634 762633785 326 737 347261107 841 825 475761436 416 430 335868570 592 326 304421552 982 340 486682790 819 28 81941190 362 578 696158169 645 956 924798392 415 952 295331844 166 282 537286033 26 35 292676371 415 366 395477504 918 652 386189649 988 347 339193460 270 465 678084669 426 779 147044196 450 381 655134185 318 554 157712543 764 578 336704559 481 837 749857183 138 782 787849171 426 247 862077705 658 826 364284236 13 2 50886769 763 449 22616799 939 399 545454878 55 165 828393394 554 263 534729600 578 804 225385835 965 307 773178181 215 24 31107574 187 200 783543729 81 75 11045942 91 346 148267200 318 542 541924571 933 266 514826392 245 658 376895438 357 240 221054095 613 416 871711487 682 990 273561227 66 283 783249877 875 458 310192591 514 379 646294421 766 190 600280218 990 502 635253802 555 900 261598270 82 982 98081111 803 842 228647484 62 989 780168803 163 86 207619426 482 560 67183149 227 497 292050610 259 470 749684077 889 912 321530747 549 656 682374460 412 834 690090734 466 736 164691532 638 254 633733142 695 939 619821158 847 226 39038534 104 922 44292688 72 886 426651446 192 850 993061642 602 437 821693586 660 341 326636414 38 960 266827579 230 603 526765001 665 829 503226928 573 674 52957053 778 344 951095279 141 449 123142210 905 519 487532299 262 849 101563768 681 330 588052556 610 831 397837258 323 54 726842399 666 217 680339320 191 361 332984617 650 182 920662501 341 569 791076201 965 28 776798148 436 150 6105708 131 502 912201853 799 537 380121547 168 469 628864350 575 699 774699498 345 853 990360252 956 462 258109614 344 86 650513663 37 393 836838504 373 863 433765616 598 453 201431427 234 956 495834853 906 8 712465424 540 281 309473599 485 79 525808215 102 486 448616468 356 18 453261017 949 230 742287908 504 293 974986963 479 288 202113244 515 131 20815436 12 565 454657049 468 433 76251046 161 483 382239124 263 890 700974509 752 883 879463820 301 827 639975770 457 738 155556461 427 255 269652433 61 440 420634506 17 591 333168021 639 398 451418299 713 124 208622374 929 448 427200018 673 176 573607322 962 56 725618967 200 173 135688544 135 12 498337663 709 175 289224723 539 407 555307448 592 942 741688716 351 599 328138312 737 950 240030983 920 404 679496168 899 139 794883141 449 243 431216073 853 725 378957521 615 271 252901680 909 141 52322972 155 714 502691339 671 23 328912296 643 796 512520769 870 664 19105752 993 436 457761516 432 55 359743736 854 4 290940106 229 32 99131074 168 466 916827072 185 695 40068936 891 187 28519373 49 970 619638169 779 826 310151350 396 824 766483973 822 290 667625095 94 740 920877123 469 786 914152182 222 367 83078031 488 159 602416445 532 516 869618248 189 774 640350471 17 836 840332323 930 517 537844434 878 308 650538893 590 233 707210705 870 133 949277033 804 814 406414628 23 234 718034132 871 781 152440564 595 632 216572420 359 42 392236299 605 166 385940441 232 915 635544661 478 957 797069338 705 912 67472090 523 164 654424849 729 190 756491768 529 371 440134425 721 917 705541246 675 657 414724682 468 565 261166808 690 378 564742849 604 273 889902728 881 591 420927540 121 100 764924041 912 689 449420103 783 81 346784443 965 716 380157891 314 84 420146800 217 120 57286332 620 336 179003176 467 461 33076128 25 601 284331908 816 704 112754365 295 675 440706247 5 727 730209825 584 22 989006395 801 139 651972690 559 282 267296027 503 580 379996292 189 528 311431496 116 383 744211623 565 392 823328205 786 708 899816857 870 210 397121065 397 194 270691550 780 730 724874148 229 342 540571559 328 815 249630582 107 337 733024940 395 845 66928167 343 618 666009783 638 676 361880936 595 547 542574992 777 862 831223341 474 594 254757158 619 679 876065030 527 491 876120283 728 711 143683366 576 7 489884885 461 45 994714559 625 534 802823303 723 514 27009320 107 504 141792296 255 610 309066383 778 163 856192343 585 162 639757028 661 456 452504843 453 646 471002124 793 273 121519556 560 501 665680498 718 396 383530115 579 216 265694987 719 360 414192014 35 113 567087863 258 681 71825346 226 62 664521159 134 900 519898187 51 712 2257407 393 264 812000237 471 572 160358097 838 648 7402400 115 129 388227339 786 571 701667647 109 885 46092323 400 419 958429887 758 817 505383727 949 372 878635117 642 825 669617988 213 180 661247426 500 859 942269436 401 795 845229614 15 374 629023432 297 26 220338243 86 693 868191426 653 147 226384344 401 126 435516847 371 247 197938509 338 265 452678282 613 537 449446432 534 626 424256553 274 937 215111864 579 685 399369849 586 44 885687848 391 797 156829371 1 617 535385637 54 164 358810049 871 74 147030026 953 570 363213909 255 305 335298442 59 976 902560358 586 541 493201115 411 993 922251066 953 400 551777405 758 424 156580528 285 314 218273396 34 902 541572381 313 235 808012840 106 719 401498560 800 941 805288117 249 404 382102977 543 949 122192814 770 854 645118820 844 229 482356210 941 493 792323444 488 464 22631017 124 448 181337815 772 647 951681549 311 13 49455641 969 772 926929971 768 604 289620643 85 18 34674673 89 613 172456104 994 682 363596469 383 343 859875779 766 624 250112456 162 723 346715435 583 770 578116557 616 827 342821613 839 871 378329879 687 519 793259677 257 906 439744807 357 256 479817637 581 985 72322182 928 221 876697882 448 743 58704781 872 842 498457620 259 100 56553339 361 142 919189536 57 602 215619649 900 691 428316051 856 709 368803365 510 661 459859535 937 665 381957052 665 80 407082637 596 829 953345533 861 504 668807859 841 825 347320170 234 499 449728178 818 986 673788261 591 60 770136451 788 996 374035462 116 257 511218651 174 140 727332578 620 511 908248196 334 593 989453069 458 612 494652003 574 270 662406254 103 701 266189533 37 883 150021003 59 154 705282036 480 331 651328323 424 492 201314872 627 193 467426688 714 281 521287232 378 765 820792098 892 901 164518291 946 50 700771390 194 721 962627176 611 362 308601064 408 787 37653209 91 403 949436651 364 878 959962287 495 811 495529853 238 148 569401884 924 584 47705912 552 659 179319193 60 663 105881076 153 772 994018597 145 314 271820060 607 383 752847146 853 297 164794103 512 19 133662811 848 737 23918033 906 881 709293146 865 643 495266157 321 845 862472301 475 768 462175940 698 567 256716771 414 805 130654502 697 190 967928310 85 755 291779600 203 814 117676401 18 925 810087181 979 620 824996342 943 763 96104525 917 721 314054453 75 994 844490451 990 108 413595155 627 673 971122081 284 707 927791098 542 773 190721116 957 230 135318794 641 925 263138949 312 580 436275077 224 752 130874354 419 822 603127017 763 909 155470258 699 536 92458548 134 876 843566638 944 397 715673519 186 262 530449396 89 721 507152643 978 972 489908534 828 754 817593519 564 430 806387391 283 443 815962652 249 845 613868910 715 391 677151797 308 538 472081893 305 563 956758500 640 999 151686704 836 706 291505696 289 197 537290480 835 396 841574147 21 362 141570653 851 495 455977 982 395 628024228 410 235 744662922 604 104 289036045 430 662 581291262 488 737 997682610 751 15 987433127 496 749 785632003 874 101 620723426 122 141 244671394 845 699 569787199 40 816 162008172 470 867 175110585 524 983 982341253 244 248 406852870 820 519 70503492 547 48 283222230 784 47 15208332 511 605 199019692 848 241 803338343 346 694 753694303 37 264 157154417 819 642 606849954 878 308 670987898 591 760 115158728 504 129 350942586 301 819 94185958 519 843 136518623 874 323 598074619 702 544 195143697 742 370 353555253 714 801 393871729 528 309 120075242 15 651 336795974 70 431 91516710 474 788 564581830 159 10 190413495 402 413 970409241 830 481 805298337 169 296 299486659 32 779 156675910 538 103 342850794 417 58 847518094 829 596 189052874 165 997 721280971 893 849 700523686 345 212 776006530 756 428 645417059 478 425 265083055 203 411 744124339 307 260 519213175 535 282 439831523 733 483 368347182 896 329 232383571 753 439 50151995 417 602 251908640 844 212 767740475 293 115 321053410 17 836 638770012 958 989 940480635 385 676 806691667 424 754 866839431 585 713 418275115 471 688 279857259 623 354 236389090 36 446 489040482 210 559 965018969 142 752 512553589 701 982 823463787 111 976 830896563 562 702 570987078 120 458 405185726 967 145 642608771 599 347 918772841 369 559 858831742 869 380 18435189 513 126 587601016 70 443 638932299 764 913 455217258 5 683 373770957 80 5 33793580 533 742 51960869 577 277 750575278 754 460 836272331 907 775 554663584 338 805 1812018 985 543 403514411 652 923 487079654 544 747 51926242 196 901 590783270 401 126 206936985 858 318 520860844 545 69 752354865 52 897 183416525 87 608 547423174 605 629 603079499 180 304 443951407 225 58 522493798 267 505 535542288 89 771 16442326 475 576 71510502 122 206 437168103 110 757 558407226 806 224 386608118 739 93 279297405 903 117 803643797 86 778 169465915 263 654 56460375 880 68 751146311 541 186 379051572 823 886 453655361 533 126 186942342 482 316 714000817 885 297 358317087 411 814 577499066 935 707 517612290 264 505 731365899 609 232 737850093 458 382 934693965 976 921 375078855 314 356 193544591 368 197 949726217 657 254 293065850 875 76 189977038 30 640 538107904 736 71 650798253 184 251 353809256 401 300 462148016 820 751 469829543 286 570 478687831 47 411 29775131 241 592 377250411 713 743 760017802 352 734 461935457 239 812 901967279 825 551 5925727 431 893 794989595 680 693 69490181 596 80 762094391 542 599 326157317 582 832 384036319 459 214 605102973 804 47 746603165 187 200 667566872 840 264 804063865 42 153 479709823 514 423 603813419 282 908 924903286 11 784 992749847 440 216 599697402 175 392 548897033 390 657 970222100 186 329 772370109 16 478 3493463 391 715 964969930 383 257 861517710 132 480 570733557 266 576 515389856 782 571 111927008 568 70 16641141 771 416 421572859 779 345 378953488 54 821 504128143 563 357 288070762 388 5 414527082 984 522 814020489 732 850 273949947 74 240 93102592 599 281 288993803 434 882 761900952 991 935 323532973 879 99 676901169 988 155 658942806 884 452 279359031 438 568 973383372 757 506 138954412 986 893 635454000 944 917 65866823 313 763 989146861 79 717 346570813 438 110 910154729 755 124 545330708 677 269 895155748 225 36 997000242 21 611 727419325 777 279 399747360 355 358 786347646 179 146 927026276 265 998 9682084 826 779 588241569 687 444 670341201 826 143 726355714 738 353 729757432 497 61 620575711 459 911 398179126 922 475 300459825 518 641 462627946 473 317 75796725 41 486 434087458 802 971 397749502 807 387 870406038 837 852 240016162 4 854 452525039 260 616 802588514 840 883 279984866 659 765 801269811 208 934 873237407 282 112 756714240 734 11 591317327 23 785 754380030 358 200 220248583 601 781 537593446 118 4 724751446 890 654 160384160 974 429 947723802 813 88 718869484 578 784 863753913 967 744 939198524 8 367 552446468 795 959 53889587 254 525 735013819 256 349 768301099 145 967 80415879 344 350 279637547 70 211 719513593 294 14 492417920 725 869 51946567 573 652 251702007 905 373 478876683 584 232 808100026 447 620 566314375 359 991 380817521 525 534 360643865 98 237 615903576 273 614 37107164 364 103 823664882 419 476 334825150 214 485 695371381 292 724 485530532 655 624 842776559 290 363 837857382 322 83 287560959 142 883 471370398 321 575 899298267 296 466 669067078 924 624 425183498 404 536 929640279 700 879 907902631 47 764 906363469 366 936 548720109 955 375 632921778 655 766 510488169 82 644 500681572 11 411 568881372 266 667 836389288 636 640 947305106 339 966 907411468 294 907 84696552 584 729 724822456 951 65 224834005 522 76 340972497 36 465 465554325 3 909 685912720 386 958 320561040 102 265 655211849 715 797 402652831 123 959 574382045 938 417 573548244 11 811 176503327 846 376 923919124 336 282 342576946 904 702 670445990 184 421 985962178 508 432 837550134 379 974 716468676 383 796 167368920 904 676 925917055 453 16 324906868 916 847 83038453 99 630 588508230 342 826 120484573 345 244 368071075 677 592 717028532 386 503 263882888 137 132 458456892 917 875 754367433 250 782 923567628 1000 761 675433030 936 88 76615457 760 17 428471852 251 698 836838781 667 762 613670436 582 202 43246274 443 44 928388220 835 545 737494044 551 868 437460615 256 427 935180346 840 952 713720229 726 843 353849941 628 693 916842315 830 450 279149831 733 310 52656783 988 480 616688089 496 228 383216747 10 838 823423100 496 127 873060435 774 119 638394243 625 313 788791757 632 181 895477635 716 965 477067183 716 824 842020082 104 793 355344541 747 539 468500627 239 660 643278276 549 156 740053585 409 835 533760962 198 624 121740619 250 708 596323339 420 974 105838280 53 876 195572720 784 203 484152358 879 226 307417653 260 827 643037525 125 309 574745307 881 591 105355287 241 942 586192398 206 625 15255082 831 940 811465492 765 111 618781273 811 199 24939930 893 818 747165888 731 391 581034109 540 937 429024704 96 668 230219557 682 877 716177686 234 435 738414733 970 178 339841724 45 715 582426730 95 788 227599378 269 971 608153615 635 340 947826058 759 1000 713239298 588 610 325436662 122 498 846190354 681 435 722697783 483 496 105667817 991 359 704993801 1000 759 387388129 433 135 901191904 926 793 486480873 270 602 905154087 316 520 43372706 660 2 936771354 914 595 611331635 927 447 581247936 201 360 886460499 166 629 30397877 429 670 506412812 458 218 878508312 571 583 967588725 890 631 820250569 446 465 674065895 223 650 969003269 251 672 405842517 970 49 817581042 207 220 662388852 230 957 940197027 890 554 753008867 872 48 280214723 607 8 910952115 40 146 45326134 271 170 420222988 707 117 800844765 977 151 118654686 799 759 758348674 814 352 453527136 178 65 524560822 987 947 691803644 46 792 986291201 543 957 373955293 143 333 764707051 614 468 315921496 883 191 398909980 842 360 575572147 678 334 785836821 112 275 427185265 901 787 166065829 618 24 560231600 84 85 328798532 127 749 279207645 300 208 813285671 468 12 202491822 313 122 89455190 722 826 777473603 167 610 161576490 177 115 738772623 75 251 927174422 668 488 213029314 888 890 293013572 900 219 308233220 359 153 975172351 846 85 220277554 63 32 71803719 902 904 727435386 783 671 428593476 890 975 446348958 686 669 175697893 78 807 460824092 720 161 614306872 233 584 131851792 934 401 749943868 821 928 741462534 680 242 830115256 291 89 260691567 105 978 886848765 84 971 77845484 54 91 237484992 101 179 454653640 640 740 570467440 170 783 964422062 536 140 522821864 43 160 481705275 456 478 293476617 558 120 587167286 303 798 86060472 69 716 432571214 182 979 117760671 141 930 588707740 730 390 13905734 793 922 210181732 625 52 310149007 302 846 301125462 625 390 678305836 314 18 694509289 278 356 198514143 582 739 496469193 633 562 849919531 345 229 191437439 365 30 607513304 147 720 416045086 907 775 613253879 886 803 874309182 62 386 705379338 820 863 435691281 486 280 801259039 564 537 966502550 37 840 639766969 775 294 375177975 637 385 575436681 760 386 43858681 252 926 295034585 184 651 844399101 126 19 93431896 324 554 986614741 568 443 216813885 528 125 421009588 65 911 475869983 52 626 902707660 565 205 466306308 662 833 514321685 567 877 243846204 515 843 238937621 794 632 247484935 332 816 932147998 263 160 482996322 202 739 571310179 494 660 975334654 635 308 775929485 823 589 253461292 968 471 504729892 282 870 55996605 636 898 324952035 61 440 206458835 487 656 331310523 522 944 435801662 106 710 757458548 5 78 784357261 505 33 225394195 456 425 905906775 482 418 520626636 875 522 685310591 829 5 186442854 823 589 82737431 974 887 593314269 209 490 856789788 250 422 61891554 328 887 137691855 7 926 228937300 858 394 940524796 327 41 196345651 597 953 485963522 767 510 292418020 672 615 337787305 367 24 562935527 939 436 119629771 284 574 592965653 605 629 351872741 996 279 723251732 947 861 91519881 813 366 984969613 789 841 777507077 127 483 160501043 451 323 665557840 740 159 591800083 56 371 674468530 507 424 835036702 346 850 834902223 564 875 493341387 790 405 806791230 352 495 972530149 771 416 213307147 785 73 994941757 649 73 850000360 773 324 976170930 679 118 972640457 319 38 803071122 107 549 534203376 350 718 979723440 459 95 524716101 608 250 203725315 181 632 951166202 586 741 579855570 710 756 588962920 873 401 98068761 996 911 586659481 492 311 925127949 289 781 792944821 456 481 702423463 859 97 488830869 175 435 312245063 732 221 295573936 479 579 930798387 684 105 971790464 621 530 296251584 465 117 405867384 278 356 205798113 555 700 511171539 158 953 464618233 752 505 718062635 749 455 475968227 636 741 490683032 188 164 594358984 772 439 596474696 915 655 854875436 462 271 511511876 98 170 737371051 231 704 695621468 887 162 798291872 862 717 949173543 396 9 55153206 340 406 248929101 361 296 839892729 1 978 258421090 265 467 595288875 307 977 122449118 384 769 893283758 363 419 299191210 529 185 253319252 593 408 117741502 434 882 801191526 988 281 128620399 372 598 418435967 609 204 510208503 849 668 732121740 570 822 277248524 145 18 870255593 345 885 138583624 25 152 951902349 302 162 922051111 830 173 346665138 776 758 120627504 389 914 634388642 83 516 185243701 802 470 207536325 55 597 411388004 28 977 633528834 743 448 298385987 778 396 943033634 771 799 763682592 475 252 213796834 316 482 742518497 891 34 413922340 57 270 634545124 326 648 681948798 197 839 23047000 504 337 104263674 864 861 649744024 320 217 645677559 703 560 488069299 151 301 107072509 979 447 84321090 822 918 112914114 516 322 49521696 983 87 265253946 221 874 295071554 653 915 586912045 493 403 826710658 97 859 926343013 974 724 837052291 235 897 271938218 694 188 5417472 242 680 723780246 896 792 622963471 449 122 13610994 535 927 320628210 592 241 654259263 235 546 147383000 691 847 896532570 860 115 610165690 50 337 479974088 217 290 435671080 674 320 255682123 49 125 33342922 750 90 160095027 404 428 941387949 757 66 407043613 281 155 863081960 39 282 334386022 929 585 450683501 50 487 103706430 223 927 260770763 94 276 947163171 187 450 388474735 533 19 134720976 509 211 150039755 540 899 295289465 42 753 389002170 529 213 592311099 114 508 36259092 802 121 36108818 126 242 187620234 83 158 101560406 472 678 593151880 316 215 338873783 395 82 449642778 681 170 750399449 261 24 268853142 765 204 81620040 455 790 251770032 587 479 885121150 425 566 843593039 648 942 111825830 89 67 363055832 491 457 298315606 76 397 252842452 709 468 912077169 438 506 53256382 887 162 465603196 148 163 887513592 725 248 892971570 948 238 667221518 821 857 73768650 865 836 149149352 166 870 90970837 789 334 923885888 426 245 484170267 567 682 63041034 825 551 152606047 908 348 350842770 216 454 600667892 690 697 333191958 196 46 811066348 319 762 441693529 603 478 907939116 44 896 18751339 827 151 732164426 139 274 694709300 258 728 798347276 554 773 232649181 857 523 44958143 258 728 802901084 542 554 557214064 906 865 320106086 476 290 446736074 63 229 134029985 132 331 390185059 171 458 135057009 660 341 982425320 42 647 988750915 460 405 387518941 296 736 810225551 676 637 709017661 716 409 307040399 695 529 869691799 172 935 717360758 176 280 300412693 490 77 969890835 595 920 713441249 142 600 15164634 903 117 438316469 735 794 819390642 292 448 45037465 990 251 256285647 181 389 123081312 766 924 630119690 472 66 274009887 304 342 155911113 428 547 86397436 435 499 329896879 294 14 866874285 746 697 607756732 224 169 887653602 757 506 811152654 50 25 445469355 240 588 484949248 997 432 322436062 476 597 838995142 317 473 620890597 79 951 158814584 421 550 915961128 822 597 789047124 429 423 450953777 510 830 765082826 38 926 887521422 228 749 108227952 589 72 676959447 955 452 289728050 362 851 322226933 196 789 9353297 200 355 448849971 325 631 181763828 918 476 974301082 663 989 693946145 34 539 523752781 882 809 479362758 443 506 462382798 399 962 189381873 864 177 687468010 989 916 109347788 502 726 749136596 277 510 742326032 689 486 333689589 748 731 268228242 502 421 55077467 120 477 45519916 418 261 283550174 977 892 739465458 741 636 172369255 562 891 81198640 2 13 642067953 347 937 118421368 64 174 423226057 146 332 516554239 517 449 373409855 413 823 371187404 791 736 363760860 161 228 940577860 379 6 298224992 205 614 725000801 108 23 610112917 143 895 620925895 801 988 222026776 587 933 113304062 24 703 734605510 588 368 544246950 893 636 505261870 843 184 590073741 887 514 784066664 92 719 657996979 176 731 188382982 910 521 653185305 244 844 565140792 128 144 523448922 468 475 9810511 41 889 3376760 218 558 331064308 272 343 457912724 805 189 24240094 728 499 413599714 995 310 349891287 181 980 51784878 297 869 854216590 354 555 955627078 603 372 365864812 152 51 394616903 535 927 984593325 2 311 908706363 542 324 231100772 683 274 584821821 696 233 475964127 97 500 919380901 339 718 833984982 844 725 771653912 280 102 404191029 637 625 433948555 532 165 87321464 295 675 484396995 744 145 246692486 608 87 788372435 575 606 720507142 387 216 94659267 349 317 680253141 674 652 277190137 589 3 390971488 617 95 470291047 460 995 794753074 326 10 146581499 651 550 262700305 560 222 283604853 29 576 132291104 845 364 782559426 894 252 678197297 786 983 575946728 857 54 846593051 959 40 912592136 88 366 563014096 961 820 967578466 872 945 687230235 33 806 410408523 855 286 299515375 589 72 862415528 438 334 618358345 268 193 153542381 181 140 980849222 638 637 704282703 554 654 120461989 131 682 551620328 173 539 355752976 602 938 216871781 417 935 718201527 25 445 694311090 342 556 550853914 913 203 208568598 84 85 916718975 648 326 977285 691 745 51248782 645 649 533767156 975 160 151590988 587 387 123545023 233 746 618401355 247 245 717748126 873 948 125537972 183 889 930057599 946 549 648885824 306 981 127442946 349 305 456445349 708 87 590928159 570 573 577298990 668 640 325688697 350 9 259183319 924 653 225978949 561 297 958166011 911 31 723669301 664 39 601971259 875 76 975050498 338 102 461145527 398 791 787641488 927 210 537162175 934 628 968978223 887 292 3984715 757 44 71267413 1000 223 920170506 569 754 736255749 697 590 58818894 345 844 300004561 701 635 606406114 878 140 233046747 113 561 558948720 149 507 450886417 954 668 724022694 587 685 5894182 791 169 27822373 93 516 365218531 511 303 319978477 985 372 642221390 215 968 410428921 656 50 758308242 734 851 286444253 808 795 508514070 797 528 112840301 362 751 656637641 866 849 655938230 275 90 97185724 795 513 175304802 404 236 722561978 720 653 727356318 729 584 682518636 723 124 25176097 712 209 32144093 79 459 339731842 331 801 888184336 287 955 330665913 169 736 542306497 204 111 750048697 199 578 599701 724 420 5369272 913 804 534120896 298 393 921827725 551 66 555842363 813 298 669489017 757 896 426296644 344 545 595948876 211 741 156715622 19 370 86768761 675 407 887488629 67 299 118637467 803 980 941570899 380 335 872516973 773 325 551018143 167 349 805787522 9 718 9507965 167 975 837598259 117 753 433411354 883 600 486210689 662 613 129269894 280 338 548526032 217 120 870270947 431 262 825880427