2127
5059570 569700433 806431662 781669463 169065993 701953063 939155635 579816057 127813190 198980566 601316133 342863872 404237314 273674243 319827511 270761646 82151 22315466 634101522 927746944 759213901 561517361 76548572 367835253 391425269 381101147 282321483 842581201 661895778 50544389 68379569 990150698 716071024 682949678 663445906 703140862 958455988 973742391 927843700 850071867 205045876 871450856 457881005 897056476 45831608 658441077 91682161 764002900 614223543 550486947 314377788 813766032 376660080 294 912801146 909769801 526267597 130107048 668196103 732842159 956244159 63100708 356445851 88657146 209969956 140990739 364455930 738113871 974669037 252621802 508082411 790612662 712508628 505137843 495182925 464363721 119207302 29189796 142806 153258 268038295 705834516 787604827 862065067 695966545 861671243 769371239 715923926 928276924 886528649 552596875 651646142 142258213 307288670 794024808 903250964 896196763 769976743 817240497 448749358 568281722 198151983 224192261 642139437 216248657 567941426 370172022 645142874 379571643 162440894 387800979 162814569 997472812 257068207 690971998 715234318 833726538 435086193 879810945 621921563 111449221 331638772 964282009 552698965 77105221 959883899 660073136 780983280 973903435 126551238 442761431 289535041 549510482 63585072 883151847 794753534 668933922 748006993 341985891 62300942 262118456 821397928 528673005 81706534 150019242 849389014 671711454 931640711 225352602 812893151 795944133 112803268 514383185 729100327 581659447 452403062 234686331 384572717 396538357 871544995 259628429 301812739 773341972 253701096 189250461 244070025 491128932 796576707 436072418 293663746 573656230 261794323 267170185 88681822 900038962 272520769 289616111 481835018 203823237 467092904 237790721 371851435 395558560 340467162 566843916 735244717 300370675 29543357 29910860 112453074 70532560 821178348 589872301 267834025 876052810 466982150 246015323 164137469 280371222 267836205 760550412 445698845 203549966 319174456 943343047 116339458 190420838 897363301 978695183 833038528 368282905 81622417 215143690 257888897 222716747 255050282 77942542 735912181 477989899 237531856 917664386 213537378 276779856 47056956 533703631 657577020 458430503 620552681 500912651 868971419 1533962 929136268 221354423 856702107 931729590 349955903 314008933 79258963 303048380 397578622 188333447 3512 969028180 134717245 936332144 477325915 996706913 722849378 169856498 141299504 17371943 714275037 973272245 919758653 92518431 9954343 308057077 406053932 701013872 826117033 995984647 369865299 838171226 1523110 904266414 666806773 102734106 289198829 418834058 742962402 685125209 162217926 306097711 564801477 384497391 824005833 679521163 582596352 101090250 32209024 93931077 496897148 385742517 700917474 335223194 738733762 163134214 416223365 932016025 381857057 294904301 477119338 437759698 30 778811102 156800983 691971057 49458041 451331556 197763850 1071843 973534133 498820994 106328589 370483775 772752338 562057239 486413354 663060177 910468916 141409131 113919955 439493357 43751550 511418265 475951103 272064818 24194527 874413763 577322480 823934398 476843279 591185461 649903546 463593963 118756827 883480983 834197900 812102962 202740946 30340749 331604752 466976466 530879679 19290432 784639519 540895328 802579991 796534234 218958594 336625980 215700291 24162 33001803 756542644 310825659 912871332 77396176 234095145 719057477 861358808 814119159 969612653 736655720 51163227 653386996 280686907 128251496 160800342 64034108 877215471 890250535 640091015 106406300 267962763 501357498 716599812 16033552 734011475 396011960 890924710 257558293 380528257 910900886 976866010 691818048 281134387 284885038 752964217 802971855 166346473 476081692 335377126 669219676 982846696 535457882 223864422 433069737 926033933 804906720 521874971 805601619 204851308 408130614 938667616 545227008 136073588 775725476 825261069 958282889 353924832 308240423 4570900 378606122 890079257 754580022 729890431 882972866 591236066 647354438 225662789 938414471 744033996 64360014 835980915 211411301 1199 416822205 569459285 903354808 93993213 818007539 50749587 168864213 271928757 780898513 279050254 5443530 910715981 995331717 283669888 384737443 292479155 114195271 722075858 1102 347310206 672579990 838661046 278107548 680622674 212863363 404720367 386491431 116257774 57941862 562511623 78436612 372824144 612404141 191924 736956380 337697844 803404931 209928134 224963662 5374917 61871634 592123072 680886389 933522364 969624768 602968137 173551640 67949676 714108992 730383446 919855783 79231362 170030458 924139396 556408795 290970750 885451165 943681798 548287072 196124571 163809849 367574690 567441363 803930438 788024130 736415567 90826333 323401883 885620724 144632776 908770310 387055317 38923361 473629528 721611070 113170366 455675421 138697508 12021959 702248098 110423512 467544408 472708585 999604098 859707920 26743959 976558889 636242027 395964733 912614023 339305932 269289584 619326147 50803582 78798103 76991010 358686479 668985859 689868816 105203236 622562045 195252587 405695444 635620053 488875065 699417037 614685846 488933773 664336676 651112187 451887391 553753330 270503524 365560276 473840582 813719050 926845253 632266416 752398735 370928029 986658763 769468539 845040406 503396271 218169999 623588735 276612047 386322575 31126048 382487081 277614400 203949481 79917924 748886468 507161940 414602715 542855209 359498724 127998850 909187487 320700624 679874815 954193570 303561861 470465472 170579320 625437601 328738383 685564320 277257904 138687093 677855389 902519292 928834105 524887609 116408571 235635725 961962227 626795293 414230637 410032991 389681341 872120065 481315277 306588704 51949218 153188545 180579922 84874954 835810101 420425392 979847130 240387864 239591264 30882058 333505656 937299143 430952667 60767376 291927254 902667085 95285697 336697978 407536048 679277301 574431394 635094868 584497063 795367873 969811784 700443149 636229100 531831590 796117695 442846724 876667362 532008153 788163233 750145378 766513587 48800 872405920 66194471 321141107 388726255 986866504 58181805 156801914 889688698 33092861 178038695 722208551 764612189 63851595 574516787 500637745 735225713 29599390 516841028 187863556 785554728 117029420 674500190 735744638 527686877 524349030 462845961 985630990 233431250 275545908 690116349 949171683 292564006 66482636 213935023 102532877 282107085 136140289 598237878 607456458 220528034 434374658 421006903 183317991 622238028 938235803 698769549 226429643 521311627 716363368 863447176 599880992 236549925 896337586 904310540 679807837 211617484 770944465 207927720 678346279 456784865 233309302 462901131 523030335 646064322 129299908 477308957 96149665 472962406 68036288 307744331 138950589 63578562 857499455 602053560 372589343 507501571 6 937311586 272262 323350723 953422123 457357622 908124222 876409426 341298022 766886819 140271154 51756911 171034206 635474491 769547721 183241329 975513208 156841617 724085851 2486873 464898683 354646285 341597342 460173607 210355124 205764983 901947895 236680439 588983669 78017505 237874680 738344744 559637922 544599630 329675886 344733038 888646553 848163191 145378553 581937113 21035361 264449426 38347006 782141835 506239945 431201158 572201449 484060248 997216300 292190389 840801643 949756260 688227020 811442357 31263562 619832120 841874466 152794914 99090062 619733890 191750728 831531314 287739899 504170821 39662816 606106926 431139548 539377509 432446328 591657696 80920757 415174269 913170098 670339470 2486934 519237820 829629362 19950592 982595018 875555923 301446435 616855134 416991178 317247068 922096142 992868648 982337907 315551811 9512077 359328072 29340148 343 485085897 281418621 416583080 223359410 340916682 506612219 117833790 473475929 675324142 80370760 694064026 501401356 840071430 864348029 167327375 129932636 644123042 268070676 106293168 90140701 848772414 992559202 369265186 26071685 25880610 180183272 469902855 145508965 312192177 582623526 418353224 701108821 755964968 921941419 433250753 466727233 604512638 858959626 267128573 685079894 586846716 863594351 607010300 375268141 664175256 718571970 298484953 914220779 846351236 6395009 146230008 296722631 792767936 449111830 157498620 165759290 128905716 740959481 762520046 200706763 88739239 993068241 782859157 371485886 599224461 285854604 357759386 277136005 11805693 317694728 314192609 503974979 829761133 566178928 778624056 969049918 494992555 2736118 280127264 43210308 256289332 349867290 550145928 200775335 658038835 820788957 450725040 758854457 998946055 47723882 206135531 19902169 769546147 41997250 332800706 332857437 992453667 739931230 948678143 498128347 400409440 9242332 746039399 773607129 887359699 807399748 893987921 2 685824987 311261413 779650684 34167568 999282124 899913118 745371615 123528176 392863418 827814105 973950416 594664752 240921844 684428321 799705660 222382684 709804076 305033258 322214265 308910036 952478449 756531661 316158293 603999370 493442275 701492906 240577425 166967198 198586739 537239157 833982355 982357050 437677393 801689731 699367686 313751491 263925282 154266213 590965419 557539877 23007112 10033122 399158501 684043420 738467668 877469189 576129889 917374955 427365976 633015807 697313414 47849608 756396333 777670531 789457012 684172065 115183164 67855347 897489909 556077693 386343298 928969572 346480136 458034381 232245840 709115330 881122985 861532989 94035825 419605291 490400011 572060714 187760058 517260725 529002978 855771258 802105793 624786290 173109222 185801644 364717257 431151825 950133824 849086528 900234620 42656469 725470749 958673015 783054310 630074267 726365764 998399395 479127909 658283666 488992482 778349810 104719998 170120523 345257970 933597941 663388543 812285645 180 444058751 538757839 331833715 591662544 594786052 99558626 570608844 598084632 279245112 869485497 882980311 434544072 11334115 17667420 312814363 377620364 115317000 51666451 843608035 4165477 824233503 333979122 712221521 116636381 420117836 790671795 826133378 237039985 274931179 632966496 612811831 569484056 573524695 92535851 241308966 271052979 2669645 548325613 538087304 486753722 865507788 457063553 947489865 477930634 200037286 600641383 752982637 133734127 807810797 821928389 531429984 876261963 8245959 897885958 344953402 335659409 169476726 941569257 576308920 420182681 6566230 722885239 863180269 793733575 612262154 219630044 849606409 490168184 440988390 845355105 443120266 288318054 351976740 312994061 329431019 24777707 142837815 89693378 697673279 716468221 50412303 913374573 834327211 224159490 446565229 61053948 477960202 519399226 636589119 245786932 762586082 353340665 386500400 407143554 93579334 594807972 444928099 726982110 399000048 129268766 739041864 473168073 972313554 522545712 186225110 317797966 455009520 141315197 600027557 492584326 829844349 466660967 792013493 9512758 798536518 679278722 632540092 411720437 49849387 4756556 327962709 794767228 711057619 858643084 329409425 70872455 557297577 490365379 792555423 114080753 693977098 587668371 45677381 322574545 657731617 206636226 446550375 563330464 991887993 2914542 567436112 792526159 3 57615887 778718075 347727985 28661820 875228252 182822943 944097727 50256789 207783926 801435310 278044471 66691026 691831435 539566175 744196132 2928 147353318 463993133 421645400 987815479 32811481 615532824 700868087 3110994 996568927 923300014 33117507 416173700 209797683 464851940 891792302 107977208 299048219 372247510 506072922 434619165 93185573 668676068 983272311 500865883 512403459 473127855 425248364 381025922 821838327 355376962 523154545 366323518 893087882 930820231 387691401 807840403 469798022 89686372 689014521 736432393 170410973 810603029 625864257 489948637 260516775 705763935 270588473 881576810 841440481 840794895 178193152 965435945 855888381 755642907 263251985 723902215 207422964 677715494 16 528572380 943330355 560325698 605004864 472030537 538399830 777739390 299593251 253997808 472307753 199820335 732604643 954723676 790862712 753327855 577472376 42093584 256115522 705891953 643847271 157942457 69591828 337757494 708226439 950170927 484304898 413261942 398585114 578668235 927236603 986581429 676348679 771058489 198122401 911537169 423823665 493351929 395046563 681672827 169065912 555626266 218872291 413717121 327885793 781531335 827735247 114873769 267666094 416890404 5411759 810958387 454947757 491273179 290405680 53447656 735284463 890728362 97702823 984443955 142288014 430263979 409483287 807715386 286913189 271846462 519280572 310053194 884507693 939319385 575318421 462363187 237603370 693870615 865252941 967773014 839751397 42272750 186234252 261360636 787770025 579032524 604221490 567741996 210994009 16341626 276940894 6771456 303522548 68527875 952606747 212074573 792881930 298484392 974323143 687459250 154473757 446167810 610345878 431235589 692941103 28043278 261231558 514860459 630929824 82502508 786004544 609542646 196434133 973539434 239924714 619820768 411727085 168361929 375729912 91676139 483516646 171772931 433522301 194217204 418786455 174050345 396998469 699940838 385466094 13383482 602457469 862322809 472895075 277209131 638448158 817110386 517025751 78645000 639418341 159488735 714758599 743324116 212975157 639384207 40507610 935618977 998056933 573698062 164514145 42664439 157704173 393420290 811007234 630425770 173667278 519131648 655345920 166183415 353971870 349110393 85980325 555295489 56412529 562017191 87293368 494685757 233323917 270029526 920325766 966526451 604 621341691 757126911 518693623 500411685 426277887 917831307 67157147 547441956 9533 313077065 102617067 246868921 730975882 771410658 527941663 67680601 774220054 269415832 286420617 383255678 492238458 940905530 102044075 520465467 125440609 578128737 780155991 574983892 616097279 216455609 203654210 432174022 822924636 881960848 664742611 116033415 896452098 108728742 760955434 878210608 743793846 78241770 243958355 315370108 635190483 922665238 49075434 575407821 500506262 442223848 83758704 309418362 939175802 991388590 971249387 294236316 444139545 588517000 333130893 591272432 876697353 975597969 33308494 303961096 392912137 766450286 221467088 121785309 307143943 449006601 218573935 456568555 788694442 785013202 773275792 447085410 466509200 707932001 788733229 346630032 239325225 350723441 1000000000 114878712 59218384 314197195 953436983 807626848 153724749 648503739 190882793 995859266 137118162 991797911 675300009 568227996 385539406 559667128 558791404 917777254 152052504 939721065 81730542 605041611 628450038 9375 396249264 661577649 883971766 790895705 942660193 529509280 744814977 657935096 286373539 148685169 85696785 3915022 274260951 769230880 418046060 370743441 988825709 818192568 414550359 942014593 1 104457909 830616570 715732174 386476684 534725015 350962175 664208068 242028010 391633714 517518235 904617442 810959147 762524646 701231250 383626468 447123074 384718025 957982302 805569632 990809055 779456443 870673387 920546042 175486903 230430900 717710978 923730725 417608913 148352479 783694544 208574817 929307036 378264112 640746962 218370576 34091211 86998646 769696632 619157990 417341980 836119284 558082635 465729461 554267477 877116140 693386242 571436149 125812712 126940827 487374631 231271993 479645197 796260971 5575350 622728410 377724492 29645519 595438647 639759060 6496636 943372700 705650489 49206892 412914806 211791476 286883039 698551121 904213555 111236384 143604272 907232651 208659751 387908947 839760751 747367020 898290164 832531901 976766819 754000547 428176689 999301544 995000370 651559210 522488518 580524913 293675829 555911658 418034611 62144776 142236534 376301315 217510995 406198430 513504006 208929918 33135383 505827521 507521807 50201632 141916774 280746383 536548127 440876779 379655178 654006831 827316968 858175277 698304460 459488927 313818845 608563703 4858265 647702967 195083742 625018896 148590342 25498222 561952816 688695575 242950685 98698198 179548527 658477691 151776925 313679240 841668126 875749551 362469072 270637425 273494251 68642285 293256719 428855215 956475550 958046174 890806170 153007425 49078613 407085875 882401462 724978917 12580362 419003021 817618582 977752439 280931841 562301898 339076771 987743597 221757343 984009924 549699198 807534743 610707249 839577029 116827758 354758061 970100780 962936532 190945867 621111892 681546755 106767042 629737997 436930846 548139183 160078210 858284897 25731769 592714838 360770753 190150177 879437197 20980854 613808928 560151743 832261136 414722549 531377358 154866320 771807753 418348677 750812062 724233979 888434752 61031696 713131733 746250222 381225614 464143167 522413583 198871432 909978668 362647438 905336723 272770658 548175867 573079707 281378368 757794013 105392560 708589613 698676911 229737913 141111228 822483786 265152357 617914223 100113540 560165555 966116833 505270585 305460275 532248360 728589899 196334331 902901069 682530991 892488011 885168242 501315773 964991197 846874969 510098067 454648926 903498360 155323548 888139002 8 305105293 70847666 236799877 68158340 117909003 437302801 662409108 479493195 532168185 152920373 769614019 213401219 872936505 70782318 352757089 673422717 107864848 990912904 741149190 409284925 421659607 50024036 573527302 633419472 754715616 844882455 983852253 822082005 396500293 292085528 325669625 765535825 461566432 230577356 110747546 969629102 394536301 983100756 520153339 642804191 183150396 553695151 14785416 147658811 273610252 611611777 916364783 228085982 345384163 830324677 783111054 614653293 529921310 326888740 908905650 216291290 631936407 83187946 606522028 350616326 573894649 887357464 351980272 310984203 978061992 243227523 404435386 151076 697853368 319705794 971424457 523240238 13571554 857311301 861021633 402391246 484972488 959218507 161511746 3083234 31741686 69160084 27505118 465925896 875661396 842956765 924371109 887309192 148952953 954289358 714300686 717816760 151922726 521568498 486985889 263352934 980648283 12131 101952564 487946733 568366928 675632866 189573184 454349502 968525229 642061868 133795999 816441799 724812330 773644916 407460421 813675520 229468868 384784221 304433968 69344293 765965290 628449427 716800696 60584490 496322170 536575216 955291385 653081168 556925596 126978571 956839759 923102618 134490773 642570394 43703325 134886003 105743030 279216230 450929116 955144253 766023713 644942180 217218413 743326387 435037619 710892372 792 978637798 838295044 567717129 338590876 107596772 621370840 232568140 492953799 691960710 863572334 733293785 184080510 636337385 490387530 633084073 713290657 658607816 493723876 50832507 351266960 971403608 627752654 474212861 245919334 1274190 371093432 941391410 64134901 877193684 92218639 811621476 154590565 920581512 931798617 656294447 208361424 704067179 20949166 55047637 950080195 431174703 43080041 317063421 785179061 754886541 334885600 840593200 894273763 270 819209672 810222923 460612431 773138094 214673497 700345593 510326454 36854362 803926538 292952 376250940 133668734 15891059 275456351 353806879 530021524 291755008 903433437 36617105 890908521 936019199 94841326 773276701 900354610 194548863 912489967 706910 190636994 398867053 526251796 140813793 376837662 108482800 486038530 552705655 696861498 541197077 631466134 234030461 930843058 196759580 676802327 203325358 547758950 937942669 925390411 119349575 470933662 965470840 994539562 188256569 635307079 319268445 733939916 982500843 515974672 132503282 75187189 16770291 720758336 819394944 458457091 484149557 263137497 174913147 239616459 989898734 725669558 426124518 370131947 358145580 624779032 989900648 933088083 243732013 197546325 250844489 275033202 368942386 350127304 179731816 895539447 551710767 380094757 659686777 375355088 864594651 523006031 373366414 806185549 356820964 58130515 415747606 966073997 541540634 868658494 919160026 30946974 646091735 244892087 798563924 871472865 322773431 369191989 790939671 628222534 712012713 496552980 328582432 818286764 827597305 165624674 75605551 543822722 352955894 442555033 76 148518949 372421270 36287222 948209068 541531882 77524299 195661525 948882533 248951288 787639181 120842749 703465625 93167881 544039782 495708838 634590427 601535213 440435672 913962063 954257619 155069347 802562508 818550385 460029791 524723051 233043207 649389722 547924706 633724758 148769869 91131515 421527360 135592685 4604583 887292666 761193435 347222710 381258715 253605534 36858208 808608614 64457608 575835006 403598418 530756179 381284802 329942170 648283211 313615540 934879453 158939406 976660310 429567513 945181224 155684243 292962166 240128316 843862492 277673534 529577234 362824134 488312441 325339075 602691014 746853241 455401235 998407248 629669797 538872616 951464759 770573248 259818645 755307518 565535348 381729437 876839938 684010020 596695800 37 877718829 743813504
