1000 81935404 244103474 837431431 342493822 470738321 776814822 489180570 330726191 578205540 283329158 538074003 93140055 77364316 450297483 288234167 17083619 536744746 566683130 729317650 932868461 863008224 355235938 409032428 421918593 70798611 724056782 309393983 721895170 976668613 745210736 229120780 371485616 485464402 998073295 999874855 281947182 26735342 806125341 644834495 273690416 914070601 247285839 186887731 588936564 849075850 976169154 142989603 481923030 562009977 413014321 805746451 383836117 718347501 207614017 502245809 107883109 219955038 518227432 526955864 658959084 399845016 512605586 374474310 392871811 296905403 899707593 479432049 825328976 337149222 192819224 614851774 153239865 296405414 89666138 486236393 587589241 379007633 333084639 705877303 303567993 397661445 988909287 492947330 465297605 772368393 449637151 443446600 973264570 852089299 193758456 368621045 795770336 322486632 453520673 541117717 457901037 669215845 681160198 705418654 561466257 278244915 445480431 435079180 1532101 716465796 99065944 471910939 761706427 839382115 563011796 735114705 747496604 790998180 525513798 733273166 57046500 165076175 331628041 696986061 636293698 598518219 252458611 932578679 154219406 480933628 910963510 707846388 507154029 710505482 903528737 900404072 140778980 571829364 331500244 42569672 497138595 102647950 796552362 857806942 521650866 432061350 146969612 732777207 368869538 538936245 348349947 426466428 322572338 843764250 177705774 445497387 276976648 481165895 558218705 832042944 932119088 855118006 493235641 560912132 118117538 494598011 857922025 835600495 534636571 952719260 211715550 724688509 940678488 859507834 287950139 254410498 43653844 400068621 940245358 414360916 296957339 250279163 510848248 188741678 855515564 427892330 770132979 903692950 157998502 844745538 707325559 688033428 74358843 532594259 383401666 507939807 872769081 509205622 459244566 644088795 792205944 781857231 44638669 881786430 813660462 816596895 551260132 7670036 191583196 451247338 420908466 497288726 59592139 228619578 581369060 873270219 652588879 433414357 889544848 629986792 199714786 137597705 872224660 247423049 623680158 707765942 479890168 142242857 856933388 240602603 584407454 617254007 449271396 182024716 20569307 839913227 734196441 920170569 524091160 36157405 236845614 571923002 591141093 855720003 561127923 523505494 294482923 282427905 181570888 566168804 941350453 976227239 669395837 212099324 675981609 474088950 977075957 772269632 907682449 628246132 180684239 177057603 714004992 420470126 867406719 590251048 368713475 176863166 757063545 38148762 497020919 302294636 415313344 867444717 567400142 48067403 882282840 8822402 685559485 388282916 926519713 68313909 683572538 160509692 24900465 555962124 563413635 351775692 748071535 106056953 458545197 608560800 144493931 231077762 355792102 12660261 633879035 321280003 41851689 259419154 592118248 11360091 77004696 891893261 365145040 994943068 260814459 492421742 115267069 828329912 827136162 930074136 376455548 654568911 201479853 936976301 979953364 25665676 924650912 291623152 428313716 297662261 586624283 129528084 483586951 977871121 744746466 32683917 229615483 722156905 347676425 76600403 794453975 387385106 196033594 448930968 747347872 194781375 565577469 559434640 213128152 574443028 698430428 340423275 547368340 791442277 739848029 172016031 615713639 206704121 826908256 380653307 422032345 406278275 221497752 986456500 222136934 889158703 511102510 114758025 848431556 396732482 137370636 249828686 887978310 484341963 254944877 296693317 538811046 881175021 990637599 55576422 410718213 1991410 698069978 190022718 639543298 578130338 807403986 577690488 66212648 549508453 799748331 260045118 6632210 648067132 795929114 308786612 482866545 721950948 939217614 764556567 415490048 704858135 4466943 157765230 157528837 39372128 292268059 455938200 281986579 637413228 654173358 42550858 159230260 223011120 879120737 774464138 683439190 287320381 817208524 198530371 201895593 870114180 330341606 97746857 264563161 139231718 640002866 729711478 98682081 482751542 961653897 418397574 496365009 710651459 477613644 11256611 112432906 280803955 735410108 807707563 877133248 675974350 725510850 259869798 535229984 843339077 832501754 156422102 606719820 888281197 326226489 623527648 516389589 310711689 338260675 551090910 40826036 675224051 610904517 277658359 909358997 400755191 452317722 729895905 958140051 131097828 897077543 99483460 106673581 679628601 693910065 301592864 333391001 291417271 809658453 955864499 582646305 218515914 491343050 312577262 961392765 587583731 61475543 769111221 598415243 556578605 352091862 787678001 37874460 63321635 809084351 629460880 603164438 625770319 960081248 674371821 642378099 767920937 361887808 261185247 779521233 124247014 56480689 405623019 786646792 182192558 398223892 381031678 388120172 649467290 941169235 604485339 351428875 670154826 954544235 742699716 691476825 463619754 353314262 193184946 63922703 662552916 263184161 454156842 679176470 435152812 970794500 171834618 643351205 319989293 237980252 965912138 217537359 177142396 996919382 835220882 898280887 144809795 444152199 999783753 569303701 316294603 46353365 723493321 999604976 770153981 384641747 739664594 785357617 284355458 562327195 946839074 99408955 292336335 113880221 296541761 160229066 904809711 173087187 56646104 743038850 50480001 211317678 72920566 98023814 684466592 545838456 127377800 230626701 420085597 819342395 975953702 253522973 504350161 750017065 6058006 253927700 13194341 51296099 70831617 418166497 916267577 578807721 675024158 957491486 883809899 554437577 654323926 466606330 427995948 934558679 896014704 805638710 933144342 117352824 936200765 747355107 770556255 956916995 104998366 145889894 320597224 506525162 521754833 364779544 542296922 498767835 894291022 181715115 255375295 430845795 713598890 278712343 401794085 59193381 832668050 427006366 210211087 732703806 511774658 453120704 111195180 398660881 227622717 569569206 734697672 339353004 121682506 958826760 692784973 562966155 199399583 41911526 974618927 851457600 803661393 55788296 449486594 887923851 602710871 9447970 694294356 723821521 832724278 177933975 512590254 368159485 481832471 599429983 522089222 44208282 705906203 798517599 795358250 719490503 118034272 273226386 900650088 976775462 981314057 804490448 166881654 904751545 586519043 936889172 304411305 548203241 795263370 501038426 30355101 965294965 550343154 316873190 851278465 655644693 788917747 474227138 116161509 65882945 894362628 255379537 453306696 867355363 610341652 533788024 360639275 172685351 859626138 788170181 2817878 867489926 921158574 750439400 480715608 529694591 275033012 301366732 253147865 942382577 158087105 446874567 579183002 428904906 421858443 382962956 904407766 494248299 778485473 294787478 78059315 4574550 226158252 506538445 687271520 296228743 482951476 88272422 997372062 427754135 192205598 5446064 684492782 512587975 691935228 285293704 302036251 505612143 68125676 625032150 367713754 764874815 902178455 104822614 387289127 672021979 517536378 537928837 838142990 767626101 783626626 455083927 839622968 764854995 358364314 295066816 579987512 995582351 358831745 581928168 824527860 259469170 1752383 469436346 564837136 961102593 24477307 866569052 318014495 520194580 31321456 377636798 403992588 93076900 666415902 120487566 78306815 954582137 430579630 920850515 541134907 240935217 36985433 375121082 598055010 611560269 861562602 708447374 958340066 864951963 301970248 793811143 206548812 964207374 523690891 944338126 598679677 705131287 181839799 115525104 356673009 694019494 426246204 989323254 896977331 982689661 990354605 241767861 126160597 52283214 754101884 983567045 389477177 291212531 944655070 344312212 495764240 492433292 481551890 237154443 649709261 807953397 378701457 236274924 401748718 395520521 971659566 829271133 882988978 252283106 147680008 348292116 267020122 75607809 399373114 889075969 232724940 535738198 605033926 664302163 240130296 271320534 617320478 735148142 39941867 911258894 262316739 106583331 524366291 222162334 443186127 569507921 693774204 362226845 415072466 270166725 445948562 370074818 964313428 219057925 69964992 925422337 748668322 724594417 441339144 286479674 752082516 981547568 558055111 179299121 565069750 337111513 394445083 146124860 524220471 918547896 931418786 842312742 200294204 888736423 799564140 133543263 349295987 541460071 321191281 393956886 667683015 95463132 659721457 424425474 420948705 79658412 159092805 251276755 410957770 857664934 338562682 736820401 617787125 750058742 752604372 85209870 176074625 783856050 23175800 835388826 104705426 267210303 108682861 743869744 65116745 959872857 564629149 219316039 272529590 126512111 855270722 612030318 174519264 395698880 64309097 500948116 873122379 292283202 913259367 626611331 679245329 778754694 197113409 553458348 844760187 881183764 931846339 121558886 860656419 648167441 699706371 160072413 392583785 531540935 117787656 676613347 416273160 362419450 981383881 521205460 73004049 513998803 79618611 969227774 597184383 17083679 267119441 932958329 999402672 138591509 643134498 407128988 669693551 524475818 454007256 511701005 599856932 42314622 151484191 340491189 184111990 383105381 755451101 872144605 984605546 685964832 627439574 44850720 800217606 927404130 453455804 403429177 324144602 125592205 7001 651908983 137904557 346828750 55555299 10460933 650507627 432360798 360643915 576391535 567174821 663771845 465982700 718190261 501429615 994863361 463798015 501983620 628539660 625860678 584676549 243245100 260273136 408256629 560613700 576341339 246106943 885442040 32483685 135392691 395575036 320729342 805247468 397972347 297501847 463167953 926321303 601855881 754306186 701496052 524882794 958296479 483530506 79253988 911171975 191947885 823099581 976321469 425796289 973923966 996252213 84038831 282920097 831324796 998445009 16570429 791875580 145208072 770891859 117854518 885994173 315675346 533467724 416900044 293060250 978043368 598090773 468578578 132981930 840378812 292432241 71100983 6847065 407593164 30117823 137957792 462856084 771650419 549957962 713989859 268394201 853628618 407906382 56791447 110991591 709048054 707404265 191963498 421557023 717595469 173436792 534072349 121232033 223740780 605594323 313671424 133326989 411711323 838302977 756407240 299912442 359662632 492050820 435329196 166638818 76974463 757216662 487942822 787652067 16283365 946309768 570180978 141210443 776270291 848133591 865977178 923159296 372004328 326974031 768396243 487996522 893718829 665335484 983627361 263617736 311662790 935611289 872203522 750754113 348771663 919856424 35112951 483092601 851558975 557270253 116558950 208579121 285446863 337181115 36938622 783307713 643318834 128848349 163319213 452840084 54378076 247234878 72426760 717109730 467584255 450354992 851124300 958136358 241460133 282956618 512316662 621262165 553408888 104743446 899476100 655056773 176129317 384252962 15803984 931456594 544016701 342002185 381442397 892890737 313710182 829183272 749404435 733867183 519162252 90126831 275327197 588521507 58296481 856679142 79510021 976766116 198555 442448695 867100319 528049417 46437105 634917125 732421394 563444692 642105233 837346681 819733450 678475016 140855171 75096502 300445392 719834353 165280006 273718720 153972619 893293057 682341284 33782165 242593646 348038185 891233315 726317497 953615519 167111597 292619010 693929283 807770924 748639439 289567719 787887774 52179164 939884004 782716034 443633744 411330104 152989928 279506732 698646999 418421516 232358579 58602223 503443423 760798519 113834120 67657163 61964311 301622164 265172729 865699924 292227 272387945 794555155 366906272 774658619 886824525 663316599 664899020 175522829 284453128 595753416 482130691 330121536 918650107 742335 837003635 39359296 607666506 140168302 195442576 168768869 859200482 377014200 81813963 23165428 440234236 142639317 615396081 235528532 265422906 859903757 950511504 544932477 748284276 552427886 173761641 138711709 163852466 446639637 66500265 62319058 613641863 128353900 201076421 675718605 583023211 138417942 879901874 184928181 944017721 124930224 892241748 356737217 549301133 448153762 550837270 411691384 621639534 449714174 96755122 493907793 704054420 812339694 833586901 328045082 108104498 368749071 36788789 419022090 751964947 162369589 890490291 676858320 429760896 912352596 983711344 228826523 881988583 561479201 247153792 785263783 260182648 869901985 839956649 506795547 601174043 91670328 10963664 773102038 676331783 249992766 424034507 916182998 843116859 616813666 801920903 141629752 990342160 834574867 750852596 306420879 980303292 685833608 305645792 26783143 363693206 364485578 63566422 930865560 993755890 165589874 284323246 591974824 347701386 546744388 154180149 873956140 38168198 416600513 718957222 153185032 170357378 411330140 680458790 51593296 115813068 323700749 414906194 676460262 717013318 61356982 992857169 575728652 316791939 322199698 400334982 895272234 484634820 147602116 331931239 345706180 874769173 928963496 257626189 199735306 786936720 362602975 86898338 71294156 571740284 915459866 706641423 478091531 225188401 704933813 351790163 578428184 591104618 560713008 633491525 736399840 165589841 917011 441065923 614279548 824770721 346211883 531374728 843269650 120651026 216481299 776817273 495203242 556380325 287941178 639969767 773434411 770574010 831227120 854602262 558868269 751797214 575172238 866724959 969865513 951294136 426847395 350167920 535979247 888316607 275533733 558322327 731477926 278558551 842086966 185836476 409398150 820820865 896866119 683579291 874049734 75947226 679836952 630773639 355692408 47831574 71669875 420107991 181269585 613279706 727786646 698141200 328111326 169493107 261091545 48142972 908963397 618500808 978855609 879162900 611626112 855355228 231895195 386181866 531049160 619496548 115592132 771695971 569387443 937578889 984967333 527880781 437148969 940061092 278851956 341158787 407561904 235420200 276071081 315812469 625887237 783581804 472047398 950412287 253100509 505928023 947151145 747235982 52032947 149050135 783942943 544848046 838200261 466907122 312478982 463431546 180950860 201911424 387564567 668706049 879426612 721632147 466659831 683247492 770012052 797528523 653214067 492013531 109972346 915471734 546200872 613334426 677741126 946836283 300990805 440400313 108661335 751768113 817560182 211317794 91376942 89192505 838539043 665518276 398183996 618213119 49068412 220788301 664059402 341878587 321340954 825717128 674229049 521294479 452188575 489125347 619737873 251158678 896380727 70049291 64133944 292190617 782221921 678768196 325867511 978062114 242475500 1833817 548180255 877767267 193194382 820837820 753930279 741936864 334721909 137307062 334553141 57182733 791083822 331832376 688707935 125651097 397175040 82614674 370986463 780203296 35050549 236211759 430325444 898337665 860781064 902060793 878361049 236939023 492689565 466857329 907488789 821634715 212984744 451375170 722064166 818660053 254712331 585088497 421419471 886427788 935959380 441340868 456287758 620263701 959620291 969662663 643771977 365223649 315407519 734603914 279556161 306302328 3622865 507101475 614285600 409475682 900407224 184350045 241289624 855460281 514583349 920024822 321463458 422396450 786697618 746387596 887545018 786136400 531086216 936355149 682217080 482403038 70419328 649406681 554515296 49100002 815972471 471177232 247354241 589287818 55283429 113313365 31569295 131056724 172137718 579366417 255300374 302952738 864793474 655269802 492970484 475544766 575051426 680291170 336189698 698800588 320864474 268132878 594300521 279341484 800784851 992362311 194014592 624596749 466701295 692744223 691583104 398228900 337144123 289270004 825273492 421834558 237148497 611283682 764462457 152361343 485628456 656682215 752968524 293582766 939235700 516020513 981931559 126313125 673107006 556262959 599835669 582372078 329203954 229245437 913728506 333673042 768627453 672599869 377267732 920221907 715031615 486875013 806090563 526262476 208161568 869038659 270640545 113058265 545129874 415219832 499037687 640654066 356106321 501593037 835956211 985255089 275385383 929467200 157235136 605843511 277156045 890273964 722124522 379236526 108091423 630173107 484589431 395552306 252929894 585917472 675048097 148477491 775430218 831039947 962869174 992043566 486455596 342909347 667894952 380618464 840974663 642189137 63801238 793300151 888818193 62570894 398969862 724537576 285106251 874292393 448140391 850963176 87081667 470944646 883443026 527393234 587419120 594253270 200494537 185195307 306807596 361998072 636445392 689132843 593215298 960510783 861321621 767611026 228771598 230878950 426690328 477390176 835450791 823382262 491900598 257277005 241624405 95828945 583523839 482191248 331493015 842125202 548959387 542837449 323108626 439788326 290322352 986205736 710314349 685726300 853875260 971736329 438979736 886818995 172808191 420841453 510881405 431215518 199291335 467841446 683750115 257564895 202281694 826348885 385400539 217140246 456942122 41496387 829740419 751741281 997862607 797254536 19396622 256365905 317923326 186193185 687441229 623340714 381003482 987445658 520485046 272712489 109225110 579825090 347880901 283873947 796338247 180787712 501540930 326185966 406901283 188961808 704525580 358183562 570607385 398125740 215982470 925893985 446904495 594392978 514607810 860212390 271709876 549872429 418374936 709167018 51923874 152870156 128284538 443663004 805890683 960801762 95662784 201992675 969333792 634798749 910652343 958312168 736724435 498873232 401175880 766098765 98867517 818796843 316414330 521838941 795638912 284257518 452712494 684686999 862092319 295950707 231709702 829777093 884490677 31771129 923537781 582529428 775453297 504390208 219058509 779903111 239327864 857606768 69035582 966222762 55084407 210884985 793569974 929318371 527761969 839742120 817666443 644699788 303596392 838193592 370727488 278187842 960680665 991253999 109259610 440225007 836715565 350653946 597159991 588665123 4884231 85933256 662015677 753433435 300570606 352888933 376414226 341226490 59784427 797444340 190369496 58542276 126967196 731192199 335055944 13953983 770537473 951543407 640682971 762755532 677339225 21359741 17661717 308322545 89964393 128381719 564952382 409884413 880920001 878638079 675593903 304912692 129385799 429137753 128847667 135379382 539953545 743060294 601801102 285504593 236754268 849148996 832552727 176046537 135990276 951231035 857124465 550435689 450662497 135085494 68289744 840414113 228732214 953038971 869211194 155758244 504160771 126074392 59370373 269926305 681285907 552921687 127839998 189136043 924061329 606130636 348564486 932403694 40007607 150809660 639636444 880903519 617146075 734526479 259349173 648068323 604815400 294497046 155034305 646369070 338016475 355340554 910461719 749568142 170912729 971518574 138264442 244398750 184707060 982318946 826456455 506094223 136826956 328293616 97844279 733120823 673190093 263897477 823377640 178542952 812120806 43296531 465040697 328651406 984192076 591803570 162001106 519446675 474080159 717223235 396519060 586462784 435256145 207513769 745203618 157972002 264915491 565968141 324405517 109772869 536550819 465402146 983835655 461925936 324969965 564119335 393629473 604683211 584901765 73081423 375537297 25101004 804805337 679419358 671190472 398230770 906438476 85363786 307774931 26332671 744593169 92173231 815621417 780199343 542664976 855988831 237043703 901402013 291876733 223008676 818798446 812731885 418201086 164522997 124269129 671657777 830400554 284095312 538202093 976371815 466187879 884024134