1000 958701283 356460601 224848374 881788059 68992860 44771412 397401947 115595477 638932295 106806913 568887059 653343572 449691055 569508871 360141436 518437673 668425148 886061724 470450770 810689001 790147395 418733089 556237364 257498102 621544695 167090440 692944753 777742050 981609831 880316036 507907959 443671126 728538013 940885227 860841266 884504954 491971949 58491554 723524474 771630864 158747029 861324081 383428128 790710609 661936720 761424421 475142038 580826528 618424136 134028939 91097615 239748941 432993159 233957844 232949534 886472651 770169074 494180434 585932727 274463504 845689539 720813009 794419542 643177699 773198881 770229525 856659433 946929035 377752863 882191323 272337543 328501997 432151563 800340465 801559778 416847242 777464851 504301807 436054921 762404340 392051730 483719913 995627460 401373746 786179916 761957920 261818086 88539199 729784082 427749665 63972355 827727136 919432429 821145114 527420043 304791691 571869204 203519379 162839345 506001872 863913461 359495249 659072423 788915750 267605364 203052219 424904338 355520296 601377021 906483364 596821247 660377030 592859393 950545065 496456202 720111591 898623760 948843060 194158963 515078591 664013231 446783590 511218010 269926005 433959900 796591538 886839117 592549618 733612444 590425289 149541751 498120264 754652660 413910670 63176060 437557708 206872984 306177012 992989750 915344 434975452 466660908 159226817 630647804 732600229 561332631 175544706 731417206 696026554 94703341 270168631 675392504 44426603 836947476 211164319 71103701 517378619 550765332 404061516 366464428 51198751 708680148 339600207 906696949 697045248 648396777 275319092 630515900 486681324 125663270 140019046 762840237 944857802 219605175 526528411 102380960 39308105 838098679 338662010 342095339 926671847 467924599 599648966 710700429 587023064 346441298 394948722 26318971 889226466 753758321 296729043 855562836 134924618 131793241 604281579 913640898 287053071 973959577 832187423 212517465 192636102 93522784 841015446 931751692 652831080 874818085 44827513 326292210 602664585 27548348 717407425 815548412 685891908 843967366 606052640 805768584 976563375 533704417 726597491 45883674 304519088 877104793 483179269 14628377 590602227 271772055 608593395 950244265 121245138 370091070 67405477 303370077 617105435 753374666 521285836 377852439 323649516 49900847 42730156 413938858 680638643 848339152 133504417 975499548 12461681 74039645 297068487 323782058 300616823 193614582 879094006 71917043 33138245 836696082 883389881 430300398 762776696 263941681 913808196 562396109 46838412 273788804 544226912 914729752 222656487 519158011 785071037 669102161 692343383 841989697 380907263 460335862 241211409 676695882 379480259 630366358 661674213 526782502 757099592 275288896 20815354 254338864 658021624 560080815 267962119 719506865 138980535 590245062 393269897 409509913 214848763 691475787 823003152 963980298 555992956 28349360 946205357 274946208 207949922 285827975 884764778 152823222 347890617 744235902 265871305 754055178 382451983 848379783 52547945 226105714 255690859 705422136 947925860 981165576 247035733 704404515 61668310 318752187 311815983 63711515 476951754 928181609 8505126 166581265 828600622 289425064 245617050 588630258 748887302 270880834 889524675 906966190 585477691 539249128 540283654 520431279 156866393 972014049 744801934 982761950 262627472 259445769 458032226 20150796 683848358 719718081 131413370 290515244 15361440 452562087 104292968 482620384 449723563 238443451 129437679 155395559 222360114 799611737 799997212 914716162 489291259 473775555 121880043 279710947 231202028 104318557 998841089 66209218 8476925 141485410 689204633 692201120 844872864 730414256 344955682 620787555 462391276 842380755 563860481 882451690 606401578 694527707 851744689 192886591 118254731 779829702 484880949 305707277 594497877 903528565 980575973 612212308 992156268 91555409 514278105 978127474 119471642 496558252 753756825 542660837 43478262 113394670 115378893 947019379 811447733 72082678 44858341 468648519 484862242 742743167 876265494 234832656 450110146 141301444 203967050 889948290 905605223 594344820 115154862 241035899 309257606 602925653 232968457 887286305 498503129 969571935 343157566 674127066 976132437 852860030 843560974 749642886 757794032 446293561 150220189 262095836 656938159 587744730 914285822 993060037 991888837 633082226 711043207 490642799 278077095 609769318 297211388 462001819 682339303 280615167 777825141 86107599 328121810 727956787 246474989 543843198 14468412 890546170 452059141 733685710 70720723 977213739 561106535 128784187 414732154 901656590 251550416 605195437 615920787 230402880 4450692 168694522 35983542 681643358 442882009 324311625 492071445 961049389 512874736 698917972 731670070 965132938 810558508 250138258 881310886 278144320 371846621 823992959 660297659 282574848 421838097 683713245 778833968 685941135 605024144 542303656 638638588 791972663 416329018 900079542 681246594 856470931 931785077 604196559 699750858 138076777 179165221 95282007 293998380 727423985 72982012 381816249 730706138 337934845 173619671 955687818 374386479 927622080 177386921 865073335 381237133 383672935 367084285 688033637 281212562 642991547 252911678 912146195 633181538 612557731 11276320 56344216 596193613 255035617 355394334 917737920 859996540 312751877 476397169 519484515 67348863 444890166 341725624 469903547 891763305 49197938 792901699 424205107 299396702 476300310 782328462 168476887 343268219 192245248 163790059 919170028 263553716 280923123 578310144 653508496 253916816 985249299 54147441 690405638 458251030 977871331 426507409 382131009 52513060 122819356 87237879 450486617 483914495 196326425 990332859 689733847 250578540 828013601 932930499 817405084 865679660 69810723 186996457 668159013 335412748 510672974 459988047 649873392 922638101 462282060 680919746 965866451 885615943 185581166 533705624 276922898 625412462 219534605 487384550 793553956 277317100 190060515 663933897 412460003 617849861 334458553 931377926 826738199 992756567 557448 616491281 806803275 745265480 956542206 421118092 436708071 726322623 678065961 906895064 353301980 151652144 806952370 346015856 41508257 233900576 27041829 806283894 190909985 623847176 327542718 13173394 553409116 820291045 663861319 669037886 211842769 869125744 615271529 764934062 228942749 7767201 143294888 774185380 820080433 741020535 566203718 829889073 877670775 273934277 852391082 88031893 719597076 861338562 834037749 256776611 738889899 260594256 460382659 280735135 891361397 205664738 983429468 501040141 834771772 275574699 92180363 255367838 512309824 601326584 950787899 793215752 91220121 983103364 639906302 338075050 104108065 452111862 585800777 735876595 869194829 97511049 963020267 223354454 752669461 626003424 168326546 413660770 54009467 114245608 701747104 10828662 628962306 962223021 543201091 717286799 47131109 347819050 483548186 951407023 627357751 201682873 87554128 702214341 279688597 384645117 568730498 112031428 988538488 249246393 250242381 8856689 444446319 967578810 31749587 363146050 665730408 241844776 749474449 196877169 428881415 59031630 640066622 157638072 872392007 175830708 364135453 699629797 63685824 64866276 879642953 58569272 862646883 392651351 497490816 803826282 829309472 316983125 804038511 913016892 483927022 93087454 304267764 846462578 152996941 326113750 977195043 84939146 770551226 779172382 721134001 83410799 373867440 719359174 168400767 64739768 785766029 119458044 510395664 75207001 86927874 955114195 34309286 430731113 686783850 966047367 961186058 26410141 518867062 582251737 899431135 680603988 761269404 344902384 326353330 910706862 631528656 681300057 88045058 757358617 789508117 498939985 141573675 982501216 954681286 622335493 783581832 256838577 165276195 418223478 347356726 453243498 183632753 176158625 883569874 26843322 56491010 8685863 728390512 87493779 272596804 491171535 163267789 568458899 212153162 915753511 878625008 375646462 957521613 199474902 487821602 302637294 795473495 32257037 617435353 308516548 524539150 725103159 691918748 614213767 681134080 861616609 440694743 460886476 269949387 231345556 2817236 24295093 312757423 726048857 16461900 455142990 157686875 579910624 528443445 68364803 149325080 152697891 634697422 228774654 575232825 848578706 237467979 91627170 689275031 454391717 780447609 79338154 541287674 468637047 353075915 784878079 775454899 244341307 139803318 131317174 773623643 480764061 503748677 554659077 673027216 665426597 922981700 102540471 338526117 24583934 747448425 955475837 125183995 644732248 470906201 554590595 770063354 955546768 598239442 800146654 680089532 249869931 571489113 371256082 496032832 908137072 717993404 616600533 495639900 280191882 125305479 855892118 146866310 896049001 856491073 486281596 729730151 344606410 100145333 709497570 775853948 539963996 361286308 608236857 24204770 973558362 757111429 50777083 588678265 339307481 889346022 880474970 123712885 435285799 995031596 357041239 651641001 143823648 397467335 45499206 601378950 344514789 426513900 225366113 616671563 956014269 884744434 232784842 754237357 353392947 853272006 285740775 164894571 291051437 210731595 737761123 181406597 959093565 781119698 627335273 50205041 430223479 702130526 457146872 577600026 593764689 327994935 41889575 276696345 352702072 977017779 258760973 549224303 409151438 128405215 938919634 612662047 230842570 268397226 68200153 5792881 508605899 614290715 834370954 384613671 733669281 881322899 659271728 46155684 186527202 992585710 323582740 682037235 768658850 428923622 462444709 144657421 105376234 186783488 483059803 779188747 84975957 670500596 293054855 596362259 982181533 59897503 417128588 183218636 478602516 304336136 627438467 762230198 747418031 74566748 770823749 427312642 635645800 290685897 438418441 764547816 832834919 968487614 499910242 443322093 433718444 650181422 917544646 813261912 981827353 451160820 2438616 680960392 978496003 177197060 165861461 882224205 312665004 486289205 694990154 727630478 191523798 82113013 300758568 280241504 492759855 338113228 913823865 103142252 975287047 536151509 296324588 81625009 73833614 269486022 341784533 406903163 903583556 630584995 159698374 206365448 264353597 515893660 58797692 454904159 214574126 856389212 868680584 120697444 982363927 50168251 671057553 749608196 91762727 520164340 538263127 312102611 716694193 943029712 114421336 933218100 625148795 93758030 811356391 496463187 414053276 710210386 886505106 510001337 182291530 100244308 283360837 763685683 864317279 879535309 735020961 839663565 93538425 191818226 465776563 120655626 190001853 248178080 748337587 419891392 331291002 131288984 546705235 182019242 981930670 463351893 835105795 533622774 804266804 869273148 119013211 799557158 980571607 300382518 969671675 858082700 121348906 972151747 411031231 495047732 295237919 785629906 911295350 819521503 965446103 348070464 542446706 436460057 237600220 51809932 393586616 945927919 230051072 362184947 810327788 594481899 884746145 798713084 333935588 562496355 138502620 129144952 108256207 692226714 721524849 899938804 152337578 594379491 991102728 239914534 262970828 670749217 803229126 996941911 656102379 634738392 370316096 388004317 677778591 490180257 19255131 636723814 820829965 137825191 184654166 866501998 657566476 932099156 126279329 144420501 612458138 188226918 787757055 220919148 855323828 622914064 146307009 795178639 512004863 650863596 441347333 628446254 428518075 611556148 891919657 977846991 201557242 122334903 817672490 568841067 790053703 57589080 453583909 182009118 147152412 846158689 756431496 111151477 939575927 590967070 188832633 551006031 126230913 992505814 226134574 269057112 476180863 632213561 494431094 917079211 812750502 98002126 176342692 708721612 965895541 438149404 560165671 199190028 300005120 674318754 24438882 913703510 629122281 896804797 216777292 834486956 474091135 401863089 773690859 217343708 192461809 444256205 869990298 905960801 29222503 217943650 720575606 268472066 499949415 87872143 368088723 750379443 536848656 518088848 463982478 269179848 598688482 191373242 116075069 489753929 381211440 352143778 998435489 253209919 541038437 609039011 688780266 738511577 505336709 176005330 314034075 124978635 376426051 730367920 983291114 843348980 395341732 427029824 215235970 795394544 206474098 400157897 165611450 104796496 774070166 18223510 887249320 152131571 801515835 269753859 206199589 782250417 8592532 737553604 610363908 536425368 517862775 407835123 319878810 899995224 999232907 110425905 753560026 202813960 444759860 926128126 25424452 850261715 741669889 878676507 722572515 704737044 362436613 206776674 989107024 468491248 539589149 814262958 909008276 577882227 914848738 646391006 396429282 428975376 418034955 897542511 816767186 131000786 489447987 515869484 123204432 779634309 601635663 936480692 759235068 743775356 657068557 414809551 320902858 381437596 953759716 316592186 851366139 632199867 428765095 642115556 295587747 660671269 881416758 834749004 288426331 482960242 279551047 358340354 287798692 103555474 651042283 294903828 412348131 921622801 449906739 304561685 800298388 282400914 420374690 722540568 767443944 189015581 287107287 188711574 305749500 281512506 470979387 305506664 883708575 716419625 308977452 692030451 710300804 193795818 669305916 901676356 314105983 334506121 855059858 97350463 665361816 597233549 669361011 428464016 421730581 228182879 130673137 339417654 49179138 286622157 349030650 664366920 747252611 80355815 597815361 426427699 247247215 650288765 595850537 618011863 957395600 998796776 964015164 800208430 55911355 908831443 772379596 611194726 994588942 25286307 319270267 132826409 120179249 867937220 915848580 943187249 572812235 775326823 860957746 233840745 480519879 233113004 975537019 524093912 974054898 412620723 472257568 177913081 911369037 737154242 867240519 198210311 639471473 569255944 349687181 713107675 262844909 683270141 792883394 653881043 812589500 812756997 21516024 62503840 808426016 487609926 221014219 313303035 768076149 842330163 84997034 665312541 134205471 975136625 984795120 574017392 164697682 345824928 994671203 730497332 826554743 800408300 563123106 352052854 916809193 286017795 409530215 872036368 958808405 36876 327679972 935219944 123112948 430481886 464513024 535954814 330338111 53413546 578309244 770009558 505307978 211256299 750397179 463833251 438449416 109231662 631497745 246728480 791609801 702441734 144621845 158987395 740910556 129040068 337716845 980536457 294449117 130463855 498981605 66881620 212963951 627681506 996402532 304105798 990074041 323946311 686995848 927937783 386589312 881164527 517292686 962140232 556750962 985230259 68906135 25669448 202509020 269395330 658306833 44725111 260324180 585574064 105573632 750249915 818270725 151050258 977649405 82383222 353978070 316820618 507086758 883212738 786787090 239489839 99452590 707914159 325605279 705449762 185045906 915903258 356680274 100222344 492013774 571776483 471191689 762414172 988897742 299829719 60777609 605145946 116663724 126450250 453576922 441116790 849890624 666468992 926902819 618236916 172872251 896936015 199091748 17220202 453288105 950400611 49083533 413649325 371634114 59023784 113985022 858914738 278987020 730998237 798513135 494823643 281490387 42123961 809383667 374402810 485526637 628747232 355448651 832699510 937216639 687510942 865859717 938058149 304702352 677028570 296546934 820439352 478144024 631514471 123603311 302971857 402148999 958722401 529973085 342314799 727884907 925807531 72432818 554048946 172264519 407295353 372588194 503878932 994012392 402060072 957070775 517758780 676091559 830634391 867627724 65802558 18752728 810063995 437669988 756028220 995054179 629482702 661924422 57523603 977726200 677029578 74178375 386144088 818332118 548905882 116871476 277821953 91054538 149304929 154751995 391117569 63201915 104956899 991362326 414925789 283493290 996759120 172034450 590593638 160589047 233229958 784146070 793710348 61977152 789600691 736650813 856641334 731337066 712928022 360398871 189385307 416177234 446022051 850551111 532506086 155835385 218329725 213638756 411291109 575198067 625347349 515578978 850317507 85079792 303455192 409868191 667085593 649756476 243956085 83572116 233706038 292729798 933069064 318225087 353602259 242499936 249181617 300692102 398169840 29184014 31727656 609500518 590057078 175373272 957313628 437516856 3366050 792298626 667762035 926724171 27955632 244992809 604859361 552446230 929561372 86259202 758097141 135949107 410603711 266177473 703155208 427202030 324068167 485917770 91229172 180450546 466748090 62805767 543319921 920244783 943503421 890401262 343170559 294600004 343661910 954832069 68647686 865935922 436065596 197453338 334726043 624414828 425639393 485500343 229249660 90270033 18051334 469416488 239294184 86740572 129629528 186450952 941284737 87674008 269408335 960599334 900489188 956518310 560616409 563810311 173394511 94978499 242229160 487610498 381066124 892974327 142682132 268753909 920517922 472509874 947104969 583843362 91936322 17229833 769361844 504651226 11855326 451802548 393400920 87068421 938223085 817155717 949851922 686097042 593686929 491129804 243273529 302456946 586354875 546072323 719657843 465374273 636093498 713541170 207679669 486279783 481768911 418706674 945199424 556237449 872301675 836555538 205061196 733209520 709546235 375797424 909427795 83439834 700786991 380294058 894328286 612967150 492570133 701292275 509366216 561314151 816136833 140545278 652698415 440478514 931121813 119213496 470386230 623463710 901665337 180227430 682951580 74163231 325968966 926833502 769419263 927348800 915767791 413206184 311219845 173479176 185281277 52385049 635123811 359735742 946902151 460318793 950840688 87397059 416052664 188062038 615463029 795814978 952440921 79514647 303183674 437443030 391444453 475096587 136751643 977758356 541190433 59367222 589986901 34305534 971964227 609267931 505530754 964535050 150734507 880282457 833691245 326015892 336463034 532636234 683914826 345438787 620289881 635292498 196903784 151278928 920915536 933563613 456151346 815799483 804684535 865079302 995542956 880409939 340327672 836824302 877980042 81962087 657816179 634884542 273104273 875681920 751735708 138955117 612388995 438646891 841441963 103403026 798272650 162821183 316460289 326354681 668652396 786885908 113149873 145084036 215356078 413757684 412243320 844032260 287150420 669285004 251044462 27361807 359469580 815070790 311723579 187160225 124345966 86840108 208387801 934859944 933473822 32295643 685030666 678726110 276751007 609907052 963200001 440206891 757110094 708321309 391653708 603812443 581753924 281088765 219124013 464971512 335350099 548584666 869726245 979744893 347289765 586978936 955151549 803533809 637303794 127299669 167126034 931431989 355632178 536622673 953716500 907967454 223043017 599777416 545934081 337562949 527148430 57549556 57765780 365065910 208450199 484358571 724833695 986332024 962814551 39170487 492249003 813753770 515048014 147049425 618388760 329818449 481796527 199734282 892715482 990722003 938085577 119045708 767402867 948779814 348086621 391112188 884666604 619283522 229751966 448370781 628578890 797242067 31675300 744054949 943254887 12529549 683116356 412494021 260458601 942586538 382394879 801246557 532056121 196479587 849082573 535532108 523262299 962929568 709646021 308121693 7692324 682230278 289571982 954234779 735743141 433012009 590237095 339958071 243092861 759512327 713062250 669674840 977281792 675130396 834978265 963036352 141021633 872359337 374872853 448636545 391701596 667828455 392273945 413627009 591475994 550840970 613621341 391381568 819167674 879376848 206381448 257746036 159493805