1000 307827860 66173733 860833950 905907243 802645506 378395116 399253408 269890072 939714609 388675339 326181985 994517055 522662209 272386454 496644946 652926421 158620668 310155615 923290491 736625865 975840714 309369512 210479590 956121820 471881816 48243970 441630819 641382438 604284304 475194815 188829564 831137567 203535146 168677827 907726834 685974040 217717317 56301523 102218158 622838437 627361203 839563552 408917679 330086075 197053087 650842400 21412946 788683831 698710740 412475414 934484463 147022978 403460979 245590289 639615246 780698136 831045707 92360196 832068994 619798213 329579914 127179909 120124133 766026134 714314022 506771849 147669401 180098943 496422373 381539803 47416497 985891813 831440689 613584738 637961703 193112077 560166949 931973904 672417436 808945380 132302853 958718083 52962075 922044492 737303165 599336415 752486037 768987447 33239723 115954661 116443699 886935304 897709257 397525133 817316767 963002573 993409969 715711631 73373748 886967418 6790280 977170202 756198926 341792545 448791753 867099082 956690801 222224856 767189702 509988627 885644724 726995515 185430194 335227603 721507704 350903946 219377668 382652692 929993764 869922732 131479630 79083637 18826633 347636067 110375550 603295019 499815735 169891091 313042725 425700754 74055367 88806622 270044422 808755316 177294226 198866902 96009329 233463996 526854954 473089627 811372247 19940351 362044088 306936371 83613569 343988927 661555948 856946954 716108241 468308899 553805623 46061945 777101865 858544149 815492035 566414280 577438671 232294782 845086326 669551943 280216637 182125759 941449162 927011915 258813232 585406893 866527419 987828896 239479346 730884287 127930859 528620203 315859478 271559626 527322747 531003538 870629724 327293376 423200666 422245459 998493228 781973353 912750490 67563470 787526433 687065942 237920706 457433081 252025513 90087350 870443202 664570945 707634010 107782663 951117387 842469363 959952802 268587828 35497334 974382748 681363807 895298730 507473270 207589646 144682036 626575097 614563104 185934955 542089140 23053114 180358760 697179009 915701574 929618741 130109390 815538623 188993038 116171765 457705177 79438045 403271411 339599313 415851143 404177330 469250383 446292549 85877056 904133446 251019826 254200210 389611075 128394492 322715520 713685016 20427661 43334169 291835958 112658568 384649622 875278247 69685155 684244245 401610965 806791837 347626018 459727910 613992090 393815934 201533521 924122199 706079333 97272808 749649611 438563252 970134011 69791792 539732955 795256266 342980188 158275288 296918554 478198485 813226706 138200769 439628116 388153742 181756106 869885951 283747562 693044886 640763903 293016109 900558758 736278135 162660343 569441595 316155853 800258932 691397676 507057545 721104733 791864920 595648468 207488881 632913228 67180704 602872173 456117213 821673841 6689688 234025454 198928154 275742186 652305414 442291797 908592708 121716051 95319134 994079411 424541345 737230363 997942797 971379429 290408589 507186303 941436975 614097113 823994810 462295794 936715170 853005541 69866027 138495285 398472230 373073034 579446550 47161435 12800426 194309516 973814168 858377469 616093596 549215081 475522921 804492488 848635573 404130245 67379246 368959460 477321901 431102449 965534821 439247456 630967640 193782000 531362314 559069882 819138086 679721600 688299055 718880754 493377732 613795254 50901263 151896000 238065432 63222017 565247918 884024512 897513451 97614457 882951799 177341106 144689509 827125046 245632047 878049933 68989392 839316949 951479385 628872737 950753185 895626676 608253306 777815362 737423604 898052538 175924270 284965675 722839212 968968093 678274382 258802737 602404130 496981144 855173126 579228087 961537051 312185416 744472979 301198005 924838887 138443261 530714820 322424559 443499444 17950453 669924829 376115885 552691397 548581273 587586158 159694230 509949061 547358899 922042367 749923022 61860202 595969950 207785111 59924289 344258430 590853524 393350434 905613840 749180621 954237133 120807054 22902743 534758765 645042592 679317775 955260684 33331810 403018413 109269891 158372170 35891818 265529739 447510152 269440688 232024335 1455856 893301010 767527830 907890690 993375641 728732903 949233286 215803106 380260874 326784229 620269024 4210032 416073410 484051119 502009169 870702547 614531652 281150945 974380125 435680639 112222386 628662231 539590766 156188985 539613808 122492251 245665601 783824008 292564004 232807738 43145419 72808464 194047261 866531698 89302136 549097918 129612541 190490370 687797051 301281022 892424876 867851532 59138482 904151448 523704299 513624972 848773718 986106280 671240243 687377404 615217977 862747263 619939549 101018321 312286915 619545778 407247419 816604703 617556322 946397757 566837784 107964989 825858064 711663482 574473530 390817673 971281184 195501550 115839803 40528581 142638019 684628792 306350286 391435987 468335051 463665422 149445320 74192660 442882940 960624512 874414259 706604492 3142409 698405824 473885973 420883256 844769759 656938677 788683964 696866750 314456848 21540959 289809125 829267285 259802307 275774935 524169720 740651320 189080768 195899258 614329328 357013965 93324929 262725222 320326173 477949544 896255044 484144112 520124978 263143947 643742820 920726352 89318266 802616445 205564015 397539270 192171771 967034924 905731421 339427206 699061281 384633701 231348660 316359301 926631931 867302024 666331159 574563835 364239969 699544289 724647650 491515207 61424390 74125676 262851220 465111297 466853851 20421366 748453284 143009635 536829524 352533216 574347295 841356054 869819210 928888100 756447204 474013551 39579796 558841471 463594703 708556039 963815989 929734529 946006529 286899168 23212898 512016868 119798347 541059561 708517401 77489178 924507074 97361072 94608000 81289102 107886828 995058761 385222461 83503584 640490517 309277190 894586446 246849917 249510007 103992350 754229692 941755229 802351907 525799708 417739613 527599817 732226648 209323486 670179442 324664471 260001909 308462710 839162654 926832833 213734379 202964858 690350924 743923067 935175495 163085925 261326542 286584160 819258192 786616230 651426802 606510699 138713252 517648624 468974233 734464335 46795721 436750743 232403782 481766617 106514433 554852612 527283201 870871304 973536 944483103 234253606 641621091 336474853 65906294 800547792 360615557 226753396 285397706 43047515 644027651 400814754 47940241 438067626 589275014 128292732 552878505 907788207 241061404 892630923 247761570 684571690 738971963 337781618 910045067 609207791 52113136 781392712 932270517 547869928 678916798 585594003 405707997 449934376 780463230 355595918 348345028 372811120 543106202 552787847 168075177 896409029 238639900 655096756 832678805 794616984 850404147 660157357 995797414 61981855 528052956 106652372 555768899 375520907 467374380 209499014 772126129 490634770 660739933 821043642 290302726 697722928 918715995 811060973 411865900 209706836 890580741 902443567 134209749 309686167 759292905 592626499 895475869 124155322 954567749 427185868 864779338 653946995 613358057 248785475 5539596 791833031 423149634 975645215 96788938 735436750 271637742 895265933 272314377 4158214 783353275 844747386 309344018 975793229 690747272 519785539 501886643 842122278 800826250 17149028 252735279 616864696 583353533 253554815 809446126 716974255 467866613 174882180 847668177 420550376 403048787 685975506 879675930 66864796 248952628 365465384 705459170 711141825 515060877 648071385 641310137 90904715 499912772 253565921 61827493 198063890 473894380 552605198 355745949 671014391 934576446 760364769 338951827 244724551 494673364 358525142 209627860 896850061 534502368 322188949 88931087 204150534 666389399 919320322 916087997 148982972 808334535 357332264 808597972 703838911 358046062 627549139 122764708 844289622 11195554 164312835 129848955 784062742 308980764 571476027 906483948 615558583 542240064 313118495 42745096 787460957 70555081 379945764 306279051 412725298 707487485 568087146 977917127 439842758 975504628 409530486 528144897 331565640 265539079 904743987 36375815 988494057 854896470 604681177 105265188 68222737 748482403 332313405 431321113 381845848 836856045 233985670 429788465 77613555 824373920 80475433 131843953 949400227 683043697 330073485 570078384 365558222 586698796 445299789 38395063 433587966 717380068 607033886 657694080 292535073 848797574 964318704 891407683 46472068 614804346 520286812 559548700 329652347 408708969 502243118 9648746 683811051 648681729 31969588 488641545 631078958 791466777 840031016 49578997 659881827 350481975 598162322 790811144 689175733 42713839 798831157 905923481 533711739 896788365 854604868 229472650 166829026 117916308 364993216 517293547 90604930 408848431 750525162 415077754 354079395 280163034 93769783 16814255 516963678 962815549 52980737 247246426 434677763 579900832 667419488 439795406 902385288 438759668 420655750 997901937 845742036 135486527 87739763 390466590 453823338 820562994 740499725 736144729 773579575 754979958 300061019 293234791 700500013 263553915 806308633 889174254 979419342 377606773 971067004 130607423 133159686 435094752 563074598 207682044 143744085 539714259 347592792 679638954 906494432 871822259 903075183 703038844 186594635 858549369 341158956 913329588 421745572 453511982 782969137 173950722 759350051 982754837 939591041 590716303 626979188 681709157 656928512 746308205 487295435 716673844 132314942 982347411 426168134 299823014 787051379 42223020 820330216 996984690 284451092 555992220 717729389 952905438 940889978 346454628 910776088 346362248 442888667 415759146 527138689 27274870 286124047 212262730 437680443 208734239 985170804 146410270 774462195 969780559 243719014 484924027 7933983 902199772 14920723 930171051 991185388 909161117 973413356 838480 993412099 933538971 958850408 635519489 17699151 979574369 705968754 828604533 479263805 29098836