1000 310014536 901327171 160589368 213880514 903772501 490774594 564182563 421745522 325178630 352094565 733121956 139391620 984652129 895818331 122573149 382584390 938290918 686218732 466958219 258369167 984828171 788895629 635259605 340110397 397521499 409946947 745647850 179074744 879472100 75172981 562475227 626155767 655559912 989672579 58869367 779757389 362494694 239766141 875601398 81960200 146036383 235391534 483034116 568377171 671907656 174005589 836671721 543595311 846027383 366794 898182550 436003148 42364286 622387531 564644771 238585910 662860732 122595909 474221490 219581251 249730253 730493920 86369234 374409429 934593788 183100226 575059518 695549418 497823628 643404349 861833619 58372318 804945056 978857286 907251053 344749592 176634389 28080653 200518916 886632367 479163414 624579769 132570357 575152302 484729330 231196457 798233774 793617955 318234578 818610440 467674113 527735677 909004255 34816040 233729532 586343287 239198433 747651539 215862552 497716615 489194134 147702218 900397277 567865896 648284414 11139168 162946354 950019733 804012311 20156457 146114470 561795742 50143781 736416123 58721550 465068652 411104556 294049545 555027068 398115298 816315318 728370268 14743974 290019838 360434670 207462633 763244603 290904726 876480317 415602351 906361624 352665115 350657897 391337048 862846740 664804415 306331898 719831987 49954778 887837705 812215616 502145265 599613969 827335169 276242575 919129262 488887296 449369743 814194786 7823023 593757190 565224913 665347767 310632738 10957383 124631177 159010316 46761525 340759143 790188129 373651735 315679638 850243071 106616873 39089728 609972655 692691251 76262976 731439778 660278713 289514664 125533536 936455638 224913296 769630345 181393952 2838646 926247391 232615126 863009008 874696515 312684847 130338410 351367631 617913164 18713119 616054508 158859884 38446395 444900982 948962310 198295933 74028293 626955892 678703279 754225697 239036769 980874402 401527024 818569317 255431059 148564263 619772590 588236342 496079933 948579204 605304196 815938553 877335830 152590624 381863462 153504841 17864897 687668616 863541433 139783344 976542645 44742851 723395243 659841085 694836282 284626178 856404245 591131162 559794889 194498265 408891107 96854020 33623506 4900393 366890626 979609371 562252906 862369675 112311375 337155887 778490136 708813497 715496397 755408702 380369203 803357909 963495083 320878448 361919258 790230348 992014726 146751522 20261933 813934987 745808717 566953886 920881968 752008393 56972124 167957813 602375310 143387130 579120214 697909362 663221031 39139232 753090207 731802958 69598975 217577822 777437479 446589268 977285190 274259322 215924199 728992923 294000108 889897037 46011633 131932685 668753720 270429246 769061814 157612662 991402456 986973640 852646097 121663156 965285179 899772909 184337224 713017517 221597828 856331819 52748937 145411643 769496103 117438791 199890422 477290520 868238543 765660006 593839023 349561276 986403806 989245855 881228234 835405785 757745518 587462403 647969583 785952905 621427663 643885562 522238087 724457950 767290709 816668630 292595941 168469506 319200348 772006531 248445746 55829278 782849725 788901575 849671481 181912908 242567620 633476900 415121686 158470213 112766415 102732949 213255113 637549439 798339236 614996176 520226255 281613725 751598764 104638506 964227808 272263010 853320070 179308047 402784993 408369226 512065495 35137122 218728783 234766835 38491412 736916817 331125174 357874786 172664093 575405619 511847274 686731166 529452126 98153142 908626707 44908639 18748657 685105256 240492511 175379435 559510452 778837476 532878434 211227080 495744089 59497372 425079198 752128708 601494734 872396361 490501653 46256774 558680697 263844074 204338355 618287938 799737515 76471569 199224605 545532726 943345633 228477867 796529396 287395070 333341687 805395744 32077113 436284142 318336576 141075390 396547930 455654213 339543270 919883939 214354652 660919186 925673738 218150659 382039603 414497558 190209824 85164905 434401560 300355472 344449372 594560229 760337297 498756046 617398630 7042140 425464726 732095419 751599208 821432245 33938783 170751779 960873394 875698339 726139001 310675869 967010231 123238784 761927687 171873893 381501946 334392737 779980282 131557669 264982317 573825096 500007715 545684068 72654865 15242467 212689677 77591296 30313938 465702347 964764658 749188740 268225608 555618697 646854027 222332503 823843323 786585778 12034333 24553207 98619812 129954336 37347058 307511640 61645101 986692382 286446807 854809723 886357069 57850785 853139301 303655583 199582851 17538178 467190983 227658678 646491785 214199364 108296086 75253797 985701882 806772176 458813453 610152274 780532594 660412208 873028850 844510835 530384341 66279203 633054348 292422139 439209364 792918430 238586278 75959591 27454614 518685348 3212604 39483765 749376844 190546605 231226778 304111024 753281912 559942729 416318386 768089073 519313339 84934101 852891859 332923842 989917937 841483186 617034742 597832765 382985132 733870697 925108869 557823872 989123583 993315777 120842251 354471357 780001860 877402995 378941690 800944131 4428714 424812509 969612049 139243743 797904326 293184803 149002246 863417036 7015490 992034134 795895955 100678957 425811038 263608990 785386573 266396607 379435332 289233013 838230194 191094322 370547418 362577493 937807009 860235176 255151170 196609848 93703942 903705302 906678586 334146914 738302895 602396245 715765639 623767282 789604056 535937150 59516440 539636919 153224962 951154447 268308398 969874906 112621555 90258367 163204344 905289816 336996671 331809653 361056135 589489618 407851504 989004811 785044684 635130992 579364811 886040759 849921432 892576414 994840126 624650799 281403102 618969599 559131057 549136642 853070163 916178403 17092401 966717285 966397578 434671710 165104084 346684460 49035104 545779206 111101264 319276583 671412900 947661497 852492559 838329613 724242131 989067032 593915684 117371271 135960082 78591700 174596917 877496128 365794460 534873334 636042571 402877965 854136672 306878228 973107823 437226401 178438660 486463705 532332526 467296419 593615327 431294489 486793043 703422561 419534177 204732537 577196061 215720146 41415211 987526072 9026710 949555483 302191339 872857244 719010393 268635901 148834877 963840969 306174940 724578015 372483138 469303021 849998923 977488804 168057244 833139280 390835411 845452421 755678766 48822497 324947181 199223870 536986789 794831860 183367953 149591654 602521731 230055589 810190838 368084318 613861229 414976697 788833071 622459714 92721129 319799869 893040194 381782685 322270566 457039389 661409631 971387757 823832828 365981796 484476293 527185407 309457221 511234740 36339444 535249694 987224426 267029547 394648952 654698069 961502542 538883744 486853018 811039417 973524870 892812206 310416436 338989816 758725042 543040292 144877563 84090480 257277309 604252717 8745675 191789547 253916411 280479496 589343215 513220691 419145634 20121753 80005886 363229883 292684646 41605751 359352998 22532894 173671754 694896150 20086822 702164713 218635340 524204488 147140888 299559444 49803504 813019008 338189040 867881510 485302451 993426020 372185828 871847367 23923347 402328022 985488145 40769142 438337068 148969545 42551669 662629085 725163629 74910764 545006054 959863713 182032973 526779401 513536579 561894849 675975267 593705323 800187957 697226319 396253680 924311238 178356105 650641970 201174812 262765613 122609165 196658745 244324954 343334617 220150245 828492563 47481893 727249309 717040312 769371440 597232909 488331246 556141400 508489636 186866429 284869327 882801356 363880329 65403755 7414394 614929211 325020459 865600410 5316532 469894456 947575971 542896285 995465738 727556120 897870425 934355506 294764988 885697914 606077479 788948788 498772479 462668198 150493681 819595915 931004989 36143840 838992753 234331627 203779940 337553369 433165733 722866435 861866712 531230623 536056291 106662984 280479633 234333507 201059891 738384436 921227981 461759249 26867784 136867645 264568303 900095447 720217132 745652124 281824722 750660847 949924115 429274810 736914903 35184536 460439972 452397093 722938317 993451117 447168110 152333111 554391605 112160879 611505102 903363713 687335505 348260530 282650168 380136745 688156178 444362028 584775509 316146636 863548310 510158999 632472885 716770405 682441131 966689311 626005770 860836532 438444030 975201424 864851892 241422915 839982511 609426790 154310124 52505479 697080799 699281283 123889759 327318194 303510588 137588485 429225512 86150058 589243861 530520464 378039314 147668299 678788866 401122994 774148210 678359931 941909102 627395546 643098921 191640961 476861950 300417207 143698367 996948225 878452652 530789894 562298990 476251559 522645631 644479524 396308505 789970189 784778371 108545957 582389511 379710885 612477059 816456429 705255453 618442787 110653441 72659640 198442923 380595690 955968037 273782816 370976343 871249733 203194097 182145551 173273261 834861658 834418523 798107461 636936587 249437878 234675590 149886683 422635658 477637837 44954084 762232315 508316789 542564757 369661622 137821497 107313424 529763833 879566410 839673956 435520617 338475563 18085477 371523152 589449196 730127006 14304401 595336381 770232659 311773290 876522289 182658669 160244380 908969755 136495105 905690416 280264417 777916257 884588148 419009883 528204673 976612013 629335439 762449004 364918056 888702996 934283165 754489089 190089787 716077316 432789393 32236765 261213800 636889638 8099343 306782980 31385640 834999672 387629311 732455958 783364533 29432631 513404617 530183784 245522859 261043470 632864123 37325539 89704080 315396100 635388538 867256551 726861931 669710292 693702585 707213916 802833743 606524229 965211209 204530108 697438766 39212105 591903187 778620968 623049660 531131241 394233345 460979920 832546461 998298461 367737551 898025827 885645796