1000 659913933 513100418 571680180 144244979 898129928 996270266 798929684 962040430 352044863 527792586 262736277 919877301 702813404 449444730 653675539 733864850 73087207 427339194 415107119 543036360 575938073 203529585 958745034 315911691 234183293 111088856 603262415 154957485 144046251 15131485 761086781 768740846 164511654 606125457 2734322 853172016 15036208 544472924 233658137 850211367 971570753 747071143 67937229 835208446 313853766 436457663 155720711 695538417 699591258 193052660 154303867 345551557 333898992 185332800 438770874 985163343 259221406 911120733 436929168 564006269 103910314 343940262 157115026 445713968 683228502 563577201 402750917 302834878 920716970 281554885 665276198 490676532 270618459 425205215 851322301 783785895 464864189 6450537 383874691 658976483 354632166 33497084 748794130 67334549 288460878 276609023 867881910 635535968 317063930 94711224 584245886 924538035 523901719 77808582 918431960 353026039 953897668 870342656 197981283 628513123 265207095 964440327 595449548 479014719 601810290 989848555 512440759 299564191 483002916 653727490 732779089 418838104 245034043 50332514 14782760 274564617 447453946 464449525 315843892 368323628 581508116 837244059 816725858 187621687 973660373 367169062 828575526 155260624 606521977 769626802 184078914 750875846 457054705 739268365 804444695 272081923 35391387 743416024 517648369 244058877 560198806 455963516 577150217 399348338 175209503 381508963 685130618 61906381 253617161 678225402 168373664 759475417 417273712 658835842 539723520 696120527 177846635 182472455 598007245 160467275 870210783 552091250 146399450 939881356 832527832 197518499 496969719 460562591 364246159 533960198 744196590 173420865 710991013 367692837 889034198 281191943 908918553 906803899 595975740 859350203 722892646 458100312 535349052 651777893 8566193 156192511 764574537 547193112 545972232 318844506 204590150 923043183 924590142 721123267 873740491 680187539 774409096 133950692 64780437 505289890 11465654 653167484 692655433 1269240 162913343 505737249 686257230 578731133 607375067 602719474 503226109 990108164 459601735 698899192 643461008 68221211 912648223 327519367 806510078 527977881 622083644 441895308 992893558 341305211 69514025 524289150 67340342 56902460 121651319 214206708 453927215 807331143 115436782 108884429 669661006 628072135 51531620 974456625 305612563 690731820 65537638 713547345 755398136 241595908 717749351 87453601 406497817 97697593 202072052 4127267 802090327 365479485 69570318 853948123 821340608 523879643 585999788 564433268 536667870 30591819 94004079 691738872 13974202 376514559 69655764 246107031 10006267 465878728 410671311 159815357 504432137 643914602 442202235 391247974 792258276 831516547 683479931 593529681 988859541 954697236 723886561 381127724 245261682 263623680 468357227 978199458 548731238 46744559 2747892 597437383 69620559 404116924 908935956 62666415 822489549 554809232 699177203 33390229 875194295 613295285 2466207 193776590 271519230 677487284 354623218 108073991 939419462 692702446 485155474 886170482 760704070 381441132 834800714 232387857 531333716 510560411 567508519 240027591 161903520 394452581 396640150 793494209 152708908 494718447 780496230 76557372 512188805 359862959 481979977 655052395 951333075 754220921 566526337 933948249 439257943 5917205 288720615 320734055 77322333 804385774 448970254 926978562 27652592 962823865 312624168 428631252 540639224 470562420 415563222 117449010 241679826 722672334 158570008 536798297 2778294 834402870 822721043 154196836 89338148 886946447 428657718 199431425 855731702 818734259 205810260 203159100 824394487 365315493 311705104 653473516 232885457 740662094 17948232 416716438 428056906 289263398 409183129 707966236 326897295 76148056 627633777 163857284 455862649 17798222 367818252 122187909 447803057 699853404 816944924 432349503 926155496 344699381 553783802 599053443 312832780 230950804 896023066 751214671 985972651 590332849 42658370 802495383 75519956 790334606 508960381 322021451 374915654 922061500 367429362 525666373 851813144 579443821 508901429 961278500 275837317 479570736 102683682 941708512 113531258 272281329 282313998 294000929 425688695 352575357 795082274 587942661 341375860 236361362 532097096 720941582 918534390 153323114 101039407 51022013 934361274 107415432 254335836 242371305 414468649 384764365 613688653 152427778 564575561 842683937 81630019 399931784 938585577 66402007 777423242 872423075 375519052 304729899 524845506 566771184 759169565 364445935 582877081 595569496 268210542 808336295 334688459 458716077 718114883 350004621 831588640 34569763 349835792 513871594 955444834 87345570 807140020 452949476 818869981 161621665 504099265 598031629 226306660 713394097 44533525 345561041 361821668 39849424 545901297 745021573 939642412 719782870 269723920 462215558 695935199 824407137 176869712 575534744 378648822 42799265 849605884 144733014 45868475 207679280 680455732 360416262 820513828 56170599 875984172 649739196 486870907 549821339 764080969 662993717 173434418 464238286 662884135 910211444 935621120 487542199 947130409 16539407 461359656 937449791 293922250 704591044 910851421 883692792 271580909 90869700 54666757 475346852 252406489 552999339 68014505 69155847 452751712 490225965 927529481 310726182 87643081 547960222 508000089 435923792 134800884 829879593 565628321 903470161 186828792 46483295 393348847 522311769 381137452 257065655 431941990 659206614 757654923 370292052 30732948 964059867 438651152 466642800 999772364 253204039 888074354 708411307 734673540 278697176 69698285 542342757 934611572 727478595 753101353 654615661 649535288 533384148 786381567 12969527 272128098 505534850 644770107 285661466 874690683 745348150 58104104 582452351 140134766 844939253 904569299 617905800 663943818 750946778 570465940 898573951 266600142 568497227 316838202 937039634 335569548 452760346 805869014 69181459 556578541 963130389 85072365 218378505 322543418 887155059 670904100 946793994 695053217 522644637 77121641 642596569 425976532 566149124 62074660 670896760 549323409 918094057 198052341 302944927 798942968 948925253 446124346 609552851 339476576 123590949 691992999 243740645 696282957 639931210 778461318 257103435 961531470 141106492 409049702 173782661 506478292 907174957 909716457 646589770 927947016 234072685 371170227 671539538 639547584 441791061 643155556 635049424 661107441 588811549 63541047 319817158 805646939 851446126 552722754 574107271 283281537 206755455 692896000 808448045 709667134 7858685 466527477 352462312 466154615 985272318 192423777 631754611 698400134 918253569 980635540 649261673 55195755 883236565 788332053 944338248 352313686 344656494 974559433 132021685 90723068 774493574 59617953 472819081 564688909 136081431 633318314 38728063 251637737 214943908 913662154 846431956 705375217 12988799 693017218 325714932 918433688 22952257 999715136 470398678 624949932 56600360 315010380 587867006 997451889 217021009 544515336 916234336 488222063 774536214 631222219 999666360 283615640 520995654 327800814 991489320 399061063 954257407 262474043 96425296 627652846 747159100 143860543 77252741 457766240 922159086 808603460 487766664 865611110 138405581 807067738 331563686 85964818 505520257 517217446 744261316 478537693 686414516 722062014 317391746 481827963 374036302 756250760 140710887 731911107 552780570 748557536 652553305 664217494 220892661 162114323 816905423 152662320 838641566 771767936 970773191 695104913 251007224 857762431 189707513 658981790 419939483 779731943 344203674 575886973 875611685 695304150 658768417 346445865 816045665 511532709 459201910 28153539 106773496 456953870 123517903 400942851 902762459 208142453 881269845 331921409 643854264 727589078 739641965 653969687 527325309 219505641 94675776 177942390 252412694 321722297 495641461 576970591 213236002 365075491 27354898 519933251 783184812 932405587 778373432 859960361 354755434 586928779 905694928 195001638 460036607 752529515 928449680 840998288 705518632 472703557 623882283 886526786 215529501 420066168 568596340 996981275 960389499 54647125 327484787 526444459 935170727 937561906 975757805 916753173 354167901 855037622 733445516 541953284 965531142 881270293 81278910 522143605 943376536 910231453 204912205 806232077 912432420 459178280 716313347 134560502 369731394 509656034 162538286 84974287 682224374 953649945 910305483 56862473 882454045 900918831 674567136 393539492 990330435 633425134 870552412 212421329 944202406 460990357 161258655 361578264 922088288 858057392 408275831 656636182 909359376 557061817 869925437 184983928 121094489 80073303 441397811 397612707 948967603 132519989 681309287 509133558 444443050 287668068 898989080 998532246 160240971 206533433 424001603 112945710 495617445 103367165 602314140 469113360 837908958 118069417 523120473 613400277 450964647 349464696 281320046 111776653 977970645 683626423 23913851 726986336 881672924 633504116 202366407 432742282 736325863 381403183 216288555 542227370 131825573 296806988 201401638 889369488 955031590 261497041 626427762 51077432 332050782 151521573 820754 88260069 244381216 360295508 156125967 452481711 218435404 757315049 962419018 138925504 937477948 838510480 751930057 280847185 505193038 131457456 888130515 532389539 536015177 390293001 240745340 295926584 303131271 992932881 415526521 840030435 529226812 7094615 273200839 9957120 950225567 552455272 411526007 427168576 319518420 214399555 770511728 483211557 204945044 124635891 126908372 190380473 898719521 719124008 799009857 740243701 634066609 260395082 260802847 367355665 669206527 869262376 685428806 866071047 351725016 591609475 72466130 312177641 945471114 493874782 454293692 820202081 751684538 272610830 931994747 634997148 460415299 214116286 410277441 118418314 136057460 523047434 262279333 603496519 85192379 632543 325191628 606798434 796399467 143637921 660368111 311263844 721995918 9001262 952938420 1 112 777 593 245 382 918 845 885 460 975 79 378 342 392 597 975 980 366 456 198 480 8 139 904 712 745 917 448 978 313 323 967 444 48 295 657 380 942 526 968 104 203 333 754 29 780 640 281 340 888 482 262 315 890 435 183 651 147 943 602 184 912 410 622 212 700 168 314 884 228 169 324 1 84 876 587 370 742 78 724 739 65 487 909 874 988 717 470 169 424 457 40 503 500 547 435 729 23 421 382 643 72 119 975 635 623 597 573 165 752 15 824 992 136 86 151 675 309 180 789 224 298 62 163 881 385 518 242 681 203 217 375 229 132 878 492 546 339 341 785 134 282 296 867 368 62 642 796 666 272 830 105 534 395 743 373 756 724 523 139 649 212 33 659 123 516 848 550 388 8 795 549 146 484 354 561 663 105 386 199 800 946 635 509 475 380 907 818 690 45 676 684 462 308 548 794 836 252 167 875 269 719 957 950 800 580 349 711 961 348 364 606 100 489 844 992 517 990 637 687 555 44 133 785 94 405 970 868 914 848 613 913 331 206 641 103 542 148 761 778 463 28 37 714 999 146 216 938 942 438 726 416 159 248 459 825 426 313 861 864 632 825 385 636 283 71 864 367 905 5 555 64 157 670 359 813 115 87 106 709 208 666 551 777 442 571 346 429 395 759 296 75 814 731 855 684 230 597 140 886 988 769 807 720 996 507 899 674 946 148 300 680 835 752 234 763 697 512 550 772 380 37 590 196 134 335 484 575 345 856 964 444 753 269 71 510 851 109 4 172 439 915 649 501 831 196 694 539 352 642 437 299 673 357 242 32 827 78 604 30 763 694 12 845 570 730 584 478 83 279 251 309 992 280 164 667 690 894 357 486 187 654 65 574 286 566 34 478 662 529 596 407 826 74 993 600 74 204 399 89 421 157 757 166 308 932 773 712 780 702 693 79 768 200 120 981 420 171 520 326 396 115 760 687 681 838 406 311 987 797 920 383 714 2 241 646 456 822 678 450 678 448 612 953 566 582 98 629 844 991 852 310 915 496 371 445 418 809 814 234 143 651 989 309 990 367 427 401 58 623 108 867 18 555 733 673 111 422 653 924 458 18 598 858 85 766 63 985 485 616 668 976 562 937 397 788 420 492 630 757 734 935 400 163 574 410 120 734 419 624 298 263 283 834 104 854 650 356 962 941 195 853 691 2 884 81 607 475 327 945 640 888 999 398 972 922 67 624 960 983 901 495 141 323 682 413 40 482 172 83 11 405 657 703 836 955 366 810 340 646 30 981 331 620 275 861 722 317 375 637 53 453 249 875 286 84 169 473 95 510 378 559 221 796 691 840 974 530 572 881 130 391 222 77 64 325 22 330 435 98 839 694 816 251 756 620 667 683 224 670 294 371 767 517 376 348 611 289 563 170 763 852 67 161 812 495 878 657 560 986 918 123 116 436 155 424 536 762 673 389 903 701 910 463 405 936 155 245 507 407 7 345 181 433 296 672 731 9 891 300 942 535 533 895 504 268 923 817 52 929 563 488 838 249 288 536 589 630 761 878 423 92 873 632 734 682 138 741 725 755 871 625 220 500 149 269 306 40 591 174 990 521 490 480 894 478 986 520 851 105 148 109 615 871 542 734 851 743 973 710 218 216 661 176 189 921 137 114 52 717 1000 154 225 985 436 716 307 96 924 729 954 198 793 659 882 263 512 258 853 897 288 647 107 108 313 19 19 546 243 389 337 704 164 976 454 735 906 786 715 943 231 586 619 244 638 60 431 425 332 543 619 895 532 933 502 619 45 549 266 105 500 354 48 606 743 567 412 872 716 428 740 788 603 89 423 462 762 595 744 645 510 290 768 8 51 754 915 904 479 437 728 997 349 344 158 140 886 464 941 194 659 576 820 594 223 583 22 497 919 727 782 458 746 237 952 149 760 243 478 250 401 97 144 412 669 992 153 144 602 545 364 822 969 535 256 989 185 108 839 590 107 940 202 102 447 432 990 865 529 127 113 721 180 339 883 877 209 143 426 292 815 75 851 483 146 641 293 523 171 666 428 910 82 428 679 815 549 652 595 268 203 683 609 870 886 178 608 770 273 212 777 451 601 582 410 72 125 905 253 356 474 305 864 737 262 144 524 248 998 727 162 951 908 112 443 663 309 152 780 134 616 360 33 127 368 646 452 870 981 73 801 435 737 914 53 409 361 577 886 769 527 892 681 372 177 791 465 497 956 285 495 567 215 348 86 993 721 265 415 127 834 804 160 968 57 16 770 391 44