1000 921212094 909729625 906523440 767928733 693523525 669546420 647212240 636562059 589284011 585063856 469855689 454895874 412726716 957533969 872059529 850108281 609933206 567896597 515371563 512889008 421749460 411717198 319475349 292762467 60895094 993851817 934249072 934168427 897732742 894018748 859971372 858089974 838086820 835539455 728941348 695969253 558858439 508532760 495509692 395396340 362276370 150700499 93554370 76274387 21709340 126996195 113717426 153924418 200072831 284064424 445239869 508524581 560330375 577000110 624938992 687109960 773773417 791259868 814557320 831327090 969157729 732098970 663181069 662427837 658271879 657232777 610351304 489787693 483130122 414989380 386018670 348043753 238715770 232519175 160712161 145189408 20175392 968889408 749075792 720091933 715935304 701303769 469259486 384562964 225896555 183512770 106601465 64666602 138433558 338688611 349016803 390531469 612244126 652653208 806043104 701269721 700928267 681889277 681046578 669488878 624757037 509702565 500697379 470944789 444924883 271969786 262449976 224279711 173204768 109569777 41258986 362932915 170692293 835742097 724509789 711382807 704728533 395915632 340592780 211078698 148372812 118514403 14572439 59823196 103184872 104261696 503210392 547205002 668775900 723336521 881534769 899736492 942953056 793778226 739444318 649447929 516355502 484428517 474283490 385950559 341431832 317978117 303661660 129060078 127482912 42077568 21461599 444811496 945403791 985947831 743536276 606866923 232810992 68877854 989085454 984323779 928896805 618417840 608383672 561833318 546501260 284959796 100867850 997824194 904457920 903431469 769150472 716626434 694897940 342060810 310747424 298198037 284251849 141516876 89241353 10046682 890067578 789408568 755632151 727799967 629763466 611623104 593587548 465239516 427156779 397078419 309749210 289918848 267096650 196700228 177103471 157240646 21590318 5041735 239532077 425307287 480097219 482322392 614450800 618644228 635700178 686036286 730204111 811863378 908824385 957299280 962113894 124770850 319370495 751060155 946756133 946077358 873808755 823585429 778735855 743600134 725247186 708313566 691479208 631859572 624136998 572525853 538292957 455110888 442188510 425744795 423987674 336315623 268216708 247532948 943230858 804414986 768879175 708855939 664440633 663589011 651109758 509885118 504800593 460386884 411739430 323813493 320278210 311468462 309227985 145464173 110448691 20608542 36104669 99185705 344668166 380154711 463232016 592508192 611995163 616677047 634444798 700190559 701369035 987286938 962659579 957695413 903167337 865644207 766910754 755794613 576623537 503852461 480957066 468006393 394666554 378291765 279538943 237578996 151680960 107617800 106911490 104432051 40329082 132950693 160468895 174475456 179151158 545799558 660952052 836499661 910541900 932143259 971358119 930270939 928715051 918911842 866852133 775301302 748858442 611067271 486987744 451052491 441733869 437209736 400817893 392448448 247757702 150294416 74267490 54318572 35672265 17854146 12577899 19887625 58344968 183595456 184285963 192726207 214744634 363982497 364432072 386523497 497626696 525649174 559458792 783821397 805305560 821317681 852226418 34186784 54084438 176839004 240437297 255435465 286970960 370818541 536899144 575131336 619794474 640653871 653106543 659240921 667307358 729167999 750650845 756359202 841431604 939065567 996519700 199923217 225318015 228052565 234880345 238846592 244184598 273113193 334948388 427586615 485448383 526626128 595113284 611574923 633411015 730729301 783962556 794086621 806212871 928015132 91585417 60578725 62308338 466451303 523811748 26498583 192847980 334788273 405607946 582503626 663205140 747693124 945971441 973259012 962793466 917634347 798686258 767399988 729492438 727010806 711974799 651809671 576147538 513888892 504118766 489641973 487153272 282740250 246122374 232891360 147339305 72208741 22173847 971118924 946595119 814302877 693405934 631700694 411741218 343615792 892331486 675364117 558035643 348625687 950624078 945212355 937001508 856896259 846902505 784750442 738184912 730015006 519056050 489765613 456825109 334857362 293713521 272667765 246361288 231399607 199325076 59432 27555128 165028001 222769300 229041989 336824647 456002546 506539397 556413777 764057310 927557889 867132706 802170473 784306319 769722220 756423478 724611819 693921153 630054893 555531590 497760320 401761955 298101555 297312402 230726434 200207987 187806971 141807053 126198871 425265868 497303736 607116506 902403268 32698623 99424368 134038478 155529100 177123239 196795229 219972936 381836266 524046445 775328205 802078955 803871445 821761732 970361681 804505804 785650190 627576404 592912151 313691022 233485690 224580648 89574157 48978342 258587930 308072684 998074505 894467843 843051518 755371774 727205938 719317410 629653125 596623825 302505396 195025022 107689803 67686851 17641182 9921449 845616948 623250360 550178294 521438658 68671443 941140337 651198069 363095414 234508272 488733796 14212966 208673369 248787726 314628134 372839144 522009851 528568997 534873997 663440046 676938316 760797781 768327937 830352485 858137241 906828741 911546200 925898076 938759559 943679196 4346620 146995550 159065037 203847645 289351341 319805221 395764704 440762580 459801833 513646205 534069914 686628386 809139201 837976733 882742196 87081957 105059717 129554463 240858570 324088433 357711887 368943595 385764746 428958695 430712572 436068553 441707767 549024576 611185396 831126998 847045691 925771089 973406554 994513563 832385903 827404778 779101020 572804408 437271874 349299284 327042464 249359510 157782755 142257512 57366995 14976978 12270136 947963705 870186246 807598289 727365408 721605833 464015433 451550808 269104096 263461038 96210524 85386190 103669359 290262376 406984414 598470177 780657834 890778624 924009784 59457720 141178577 194509365 275027783 281447218 304426045 323839067 407943457 465401557 474610335 489777201 492326253 511613502 523915756 563277032 635585542 733667745 746922135 887845296 915509778 846694299 836117815 748395089 708712405 546901878 221829268 92746576 61040153 909754944 834735009 731603798 630930305 401378802 292940281 278552858 191520487 75010548 10402597 47902089 143307178 211585419 398200162 493766490 836651008 957831031 993386668 947801880 858774290 841435598 767917334 693175768 620132019 597461547 557094997 547626426 527012476 524426310 510338155 504119966 462141100 445138440 329434836 186951281 171655969 82631352 37970126 731639638 697355620 575716206 154435607 138362981 157854963 171659177 298066536 349701355 421632302 578986928 89090232 99063603 138955439 200930266 490604903 492422248 583907196 621613180 777569078 859399826 941812205 947084757 970645377 977689947 428450182 100351325 29065103 257719806 351887097 457742451 508116824 622981900 682965359 740908723 751213462 769061323 785331915 812584884 970710277 10486626 172377248 250037399 331019747 491922817 540551083 634564413 823520794 855118834 920972675 926663479 667522196 618208097 598945322 490939945 104656205 975863504 881291984 875662039 169256362 91269203 67337516 101423414 171169977 277759900 427815527 455301163 480368791 675274557 680331289 781357992 911647939 796971960 476611103 420664476 383011106 381574396 329623764 128603506 35760570 997819057 907695902 730434518 654099443 575820400 571068710 430849104 198891694 106960712 17532598 60092852 92913553 98813865 105739951 350792406 487653162 933606203 901420188 827950565 697751769 659776455 622933165 584750001 560891088 550909943 460415897 403970215 271861971 270519579 254662881 249907109 237469721 140719486 73093982 35513569 34859346 16756887 12923796 124000315 527233800 664088126 262692450 892837158 685865211 439218489 401926470 332932597 174970980 49026667 866534173 860965010 840991574 733980879 687220703 526461353 395246945 335816291 309665534 259221267 75642093 70119857 264208331 308219222 408804913 455362082 459383670 534377660 555455786 595591502 680678177 711358866 714960779 883216480 916911216 995228846 387132846 389941425 445449172 480117041 758678815 792664755 889763588 993175663 971680883 963221692 957265191 875063596 793154464 748550104 525606632 482199658 426848343 409911464 374219817 318424865 276202349 267812732 259357707 249781329 245096189 129987053 113715871 49399974 62659656 122209685 250633091 384514973 413645533 740633035 784592924 984328136 946739871 854198930 804005264 730268499 677665894 541094593 482423233 407009242 401897466 401842061 348327067 292526891 255343581 184525860 142609020 951294739 931244908 901072457 792840588 680749841 596314612 588967894 539436571 377818141 326920460 318087840 255273339 216377996 26435477 76095846 141575045 159804240 163589616 314385197 374502528 448272578 480516505 485139836 557962235 656859861 721454668 751163002 760120586 761360391 806127634 962889960 961413273 747407168 648666554 635902569 622676198 592789528 587213186 436726600 411037023 406224603 295089562 291684940 277779497 231422302 159427128 140970845 107408598 77775894 20723866 960852039 953529668 805945264 760862950 671772203 563682726 543169894 489029428 431336631 400543134 358100916 353843787 333268873 298257210 293141078 266731922 28478372 27377575 52280801 112343336 181007536 272346584 354265710 374173244 415352490 479034353 548283609 550240780 730696861 794673669 925907490 954807012 967959990 992307917 159202240 220035128 292791265 366895555 569178656 583769865 588798501 668280185 686150429 726109832 727046051 762924058 944071139 958703536 8465490 32464863 303546434 321739753 681887041 762718361 919448321 494157148 400161109 26336095 569659996 599217836 96094035 387783488 435877250 539780263 990109644 9139248 26106098 164956316 225217295 299646922 367875741 456885345 668115514 972994605 746540484 741841491 619699621 578825814 311144478 124235403 106747539 2902554 243829557 417543227 721508483 777547831 694922113