100000 952007928 998571741 60494193 790262572 37935588 450716710 518464251 658961939 928923352 969339099 941663852 983724867 591961957 771795480 833276928 878720738 787431154 885290710 671722694 933488717 904980498 916958988 396315989 940239116 553199789 609537410 433922783 785865994 954409757 968537725 193461272 339408054 846143784 851328349 663054158 756152322 396378203 671701828 674072007 908690288 292212731 858601232 806710783 956149122 812000095 904216762 591477519 684936817 214060534 428945236 433743461 744414028 408214488 894470427 947994009 987236403 107933225 781487127 304103957 498074753 742676445 978690528 453430610 769050756 741575452 942417671 751738598 943146361 279958236 539961955 240234060 500916983 260087256 470792936 706994453 970265368 647293038 942687343 308556993 500000890 611121905 728955736 235776168 544797161 515694014 660073020 186696593 411611549 828354992 950697898 561148727 810922734 143697925 894142349 764749922 797392697 253902883 539346448 885820349 958276870 476430591 732620053 473145280 735504263 973839995 989898718 534470086 624687616 306961976 416032561 649425439 833179854 198989146 694008332 316541784 783034812 935206318 996669145 827960684 953336013 373676522 795062248 921005126 945209399 861183518 941209842 316946298 380213346 229456268 885534489 93343600 510729821 618665266 811289735 279016872 969677351 304421317 512122303 320770460 564506364 563218543 894166586 363440675 557063868 182950330 304029108 398378937 983777207 362098532 881026132 436587120 613842051 439412905 737098612 974275547 997453342 853347626 990725083 387365780 862972951 485560915 542079909 636626165 743665062 843921168 870331091 827086037 861860229 994933778 997256309 869039672 877036157 86677606 345263578 653195514 829817126 242740150 930093582 544399534 636686954 789170519 799902896 920667476 980071050 822374277 988472943 435878712 561074506 426720221 520573124 439345268 480506796 391492855 774753205 956297459 986276990 876365518 881063912 474117530 676951290 310471763 311961677 819886824 869042535 599197087 745863510 979908466 981348536 659955261 923463960 334382137 713795085 996057737 998164176 737321878 773803069 905322334 933063494 493882217 808808784 401256422 721798535 644420320 704533352 259375885 530200902 168786089 464872134 738319398 984044011 544612549 651690269 838511378 893027879 406429628 642481265 177953803 248605641 212061030 848468112 706838627 839679650 953372321 958090533 605297108 755516452 752527391 919549845 426376519 760379923 17206329 700611332 364830279 515394643 915116314 976143405 83315543 292463780 121418078 701446730 404639146 702171522 885640186 898397542 878476744 948553626 536751257 693027736 316415873 685254126 869938633 984134825 577961517 749641112 344701477 619682010 347526366 377119693 406308156 750465108 701764443 878179865 183482775 486487516 594140246 898524273 149301882 400038114 842329457 852352324 666872931 730006709 300381581 841291266 657078209 938116581 977028021 993440771 348273894 390504945 407584732 538573562 837004521 881364112 519263532 911457841 298468522 577927116 69460132 195007542 207690247 937339916 695355092 829868344 228851671 954952678 65568605 834770641 479459314 818887549 724389086 964772989 225696166 270680615 112968149 474751978 438517942 916320222 545893749 999549519 185411193 368164582 142951771 216710825 998049120 999486125 599722875 739763158 496277086 614232044 207779332 892274498 579955092 791887840 422164053 523269139 690901944 917591757 633329152 737469703 254004370 590532507 208476280 897182990 106421555 543539060 285853377 483844942 374257511 866278993 114649260 719755578 630169142 872742857 405670293 669186447 167816504 915777032 464015163 807133217 644632818 664964524 264029153 644875217 668556967 974744176 981553730 996417131 244887402 511653864 946633092 986816118 550701253 797193842 263532759 668464087 53928797 930321840 261344690 470411690 970075115 982819670 668229226 813835109 425132536 555960056 172117564 826034878 894605310 952188764 471170613 730074700 718171767 815438936 76896703 579413986 970837249 984795470 327211688 679283191 844778254 861435137 4463538 948955213 42767684 720144711 783113851 804677432 626828195 819589318 584388857 812249201 162422099 776879516 809930700 820215658 320217011 573639822 413110934 910349065 608960541 830886400 157051768 265632612 330112302 925025831 278036283 740238063 337237769 628342903 110253372 565437700 944123404 960603097 549732128 785585192 361502802 665257153 443994730 772241731 762152391 877964135 400907649 816649931 158162049 568888617 758330113 776991327 571598388 661415081 257496158 988654773 625539453 850914997 635871623 722650406 767974681 910520918 450347693 720684717 312692229 879186751 6203718 836934392 443242865 604226347 970447619 983465616 378189502 393418557 285421286 979073583 157781789 533699424 309000875 347499595 365299211 652875127 885497272 992947267 642725787 746301592 350609951 710175617 157637879 771706271 381454784 937641357 122770128 460219980 355494794 586051059 746400380 962204926 560934852 854885969 235928026 321328081 522715609 677591296 435488898 944566659 672187842 855372770 87454406 832597614 909775057 976656588 782529927 940650400 834601190 946261066 23623218 417834714 781054764 833466467 782565189 974676099 682734579 835570218 251679800 642613243 852452482 895632131 81929224 688151625 787551136 896679108 908094499 982095660 410053629 543532103 285476586 869734988 421101985 426696286 635500428 801365586 432510956 530761500 206952740 749950182 22184594 850280959 368377261 926432421 734967489 754443587 484829450 924677790 19664876 437826171 774563923 859606738 949491920 958451300 990210213 992584107 102978589 781889990 252374252 560788000 914748885 948364203 74032373 535429119 369638417 622568829 614128305 831956373 738805655 783816286 151794665 959420838 862364052 886768648 621439862 759520327 273692385 817211921 78889103 637140820 870800046 929784592 15050929 618635614 196530256 945042579 688595065 737081416 22551785 995706849 679948005 848074364 473514399 734339305 476419158 646611968 300645453 525708152 109264218 616221275 616375336 948448037 808435338 859065902 501973974 779433043 259393574 784096640 655904803 747855506 239570917 467163035 998142418 998797275 314056866 871847182 781346009 996941728 693071131 977678070 886880217 894352507 738189644 922169736 667791890 892672527 524106508 720225505 219049961 625042145 762261778 973380758 549909200 936162936 170880995 687609558 824186502 825889632 445646500 526849737 480322522 866521986 651053762 967528143 823003958 908718508 483186649 495711692 795234765 915467414 167463539 256732657 140626203 429981583 399183317 788335230 406994258 565006350 715008565 914681296 16865178 683506464 147222372 671082056 833081623 838668884 308790650 932622574 125124795 979422473 370804536 670677308 436273768 476206877 465895994 826392017 466930492 850477888 441055217 524966582 269024866 672248982 790542373 840300941 655049992 943340927 915755062 942626521 628310810 761783828 38103747 163483469 547310338 931449108 897849911 930287274 317178950 891132017 783560833 804041905 947343159 999259037 689290793 894621652 54003364 631781772 343816961 820667768 381821940 588542930 43985103 490042259 193022149 940890798 830792537 918891922 479819302 667202917 336395243 436316740 771163665 907133998 666933570 887767627 899716782 915824891 795842367 887109993 35585786 660028641 664181201 985010954 201386895 732926127 702897725 721521752 738677467 972495470 811213461 986589850 139973717 415042053 984920690 998364995 484704678 978126476 842969482 850084209 337728398 502404711 723192087 899356039 429692105 565815093 369803247 909549756 94568529 711917688 137836970 197117447 230998356 819444346 958488378 971805246 607190329 783910626 274635088 485681137 127945890 471235245 652864591 897834894 344000663 986697989 989702357 998100287 600725260 928337113 151946824 562608873 614025344 994346043 715066589 789526766 322505015 983340933 591037991 838406149 713910754 767931939 455172595 533323301 934223129 941581170 606491152 749258996 406884708 658833488 280263892 579329995 707045471 882994641 721805098 763146842 458767839 922562471 110795607 481056967 735935729 896921404 323831493 775995594 286027206 710575220 343864264 392649739 616845122 988241774 269299739 465043123 782214226 896035175 642075669 780429646 958038514 972692609 236735225 795742049 156602565 604854914 506066335 810985048 740132392 769335447 752152177 935331932 168875675 464915972 48749944 230583548 352759411 772832422 266469029 579244572 276206958 475003258 962017429 994158683 859261578 924723108 874300356 901530192 956655911 995063177 714406722 991465132 798636776 895480064 954193975 986695147 470207209 674182362 975083358 986320477 807051123 945584724 565132633 874321166 245703691 278081314 90051246 220269079 785665227 955028004 541637788 600236052 109431679 378915892 201694503 647179839 990392189 993945669 927285281 995333828 16237454 188949618 523585835 534505518 220520706 356312227 988892869 999429648 746549865 823114974 677499803 800847617 416160348 623355767 285313561 579245494 314528051 720798335 866952591 908690603 84065835 935190964 89402430 524234302 749195247 912546546 446969407 877211152 698341358 928793871 699289673 762944525 751448959 859385761 651517947 896095388 904217036 917553223 981964786 984911062 913690629 935071752 658721221 796070140 801497321 805705275 195475699 620002590 680585902 715165979 721821412 762640610 918812623 934642527 15005956 86818766 977769700 987390361 473798456 480628494 896541808 959722120 663806035 688501471 453840382 816594302 519361015 547005512 301563455 717882270 56274692 797757215 337823822 486161629 588470436 839143277 746701799 929008349 447211268 663032260 740049027 861717062 443195831 735886366 855467491 891872255 1946967 767602275 400349193 793276844 967112330 993520501 966473471 979424098 200115588 451306018 483110873 982420878 158356956 861999075 841726113 905938885 98424499 389104580 577668692 706273367 846799235 956738641 957627651 967184515 850402070 854014158 230747482 922403134 405731423 720049769 368182935 919228385 659376114 709972865 360096853 965230612 450016381 562712620 483763357 983881269 847442869 965426286 84295745 598104414 760440186 928575919 816891194 824430284 736322117 863155303 420647313 964863075 882178384 943331994 227678009 568022376 214649522 863644618 240891932 762593484 182075882 363020229 59523680 601681859 232999809 784099306 438718208 826632097 554665360 683440578 846533449 988933388 221972214 566343355 157106150 900363727 612230857 836249755 752405630 829464263 514217982 589955480 566709338 870699856 301538108 481437422 407737426 419121924 290481474 436540617 345825049 795152194 297561510 518644946 758514185 822737668 125754139 420203460 412994550 646241904 767094313 944584033 455126860 822901283 62963346 279582177 234182959 454403182 189737195 945186861 588881558 598798177 783015224 887576406 603906371 981040941 41323489 44080149 582415279 761503104 809220543 839297664 681261145 768841384 698655866 802597247 337139590 674169488 579350935 753877910 915462229 997509989 286248800 960211263 154919784 399384290 343136451 604276036 996950556 997683515 233967935 446954060 938150821 972403501 218207505 805371865 30591939 592948877 118193407 151188250 171649942 228989955 54811812 451061593 835530365 885521264 474212484 924531001 822834758 858649365 612853375 764468669 404353997 869967195 670038020 818523177 873781880 902499729 577058290 823422451 12894043 181024283 974179977 984797745 718957791 954745562 593584955 670154223 442110209 943353978 4585035 700714382 322008250 947076142 620061383 983514509 844981666 976544848 197850309 687189650 337680194 844237075 186005273 205193107 983750125 993447694 460867664 503639451 145341216 983644481 301867061 806353104 542626430 613113893 40587136 389307759 20153999 317081470 255635885 356781376 883305877 918490180 270997922 428153128 185120235 995988178 670184074 930341327 443396526 854375224 861056244 877143935 262397122 377097357 860704879 960010348 517633009 827065484 489638775 794003431 732395696 839401472 729489780 847879453 3300060 74321103 293759244 426293359 587282495 891088531 63925065 124063293 452830329 668318210 516280992 949423820 41659333 372800537 632714576 695297753 668849914 928832262 167460801 807477991 5920641 721117392 687294613 788013358 76968439 815856280 863361882 918036338 489399687 611287991 698083349 811010337 946709546 966065285 557277370 919320909 326356897 402047224 772281831 775315616 736494919 941680706 850548847 959616027 98128199 127731517 575784831 662260329 167037920 715307193 877727405 928065685 683421397 993579033 886633568 967135656 815903985 842098964 359225917 465710153 41586903 825384451 584573375 994445405 590831341 915375751 567137428 775072879 691873364 860708332 102430310 685070373 819161109 846137702 258662326 383388256 337299550 745089517 903662639 917380132 528141453 573785033 979088719 984383179 912554443 954930244 290976062 682249821 602995686 668740542 387242367 837059606 753883332 810135176 647464065 791913696 520198095 916421328 243615858 747355500 308036725 618799350 22469239 870804704 955648329 967146276 860624605 873709321 782325053 969986640 727350159 987032537 620261168 810542186 884278192 937392044 22784530 358810143 766524306 878374764 898685986 948840472 971876812 986281995 859299625 885014928 492134962 948913472 477569246 817293717 912180727 950627339 963562289 980876238 443568270 713950594 231113223 968790783 834352642 951837235 235145640 831357711 575141307 675971357 544744358 577339661 200675129 831756077 362613203 590695102 568889043 984740214 153618703 538059409 46701102 65175042 159702541 732607623 226429273 546739141 210657302 529879620 37996836 344151642 520277795 838619577 638606185 820658551 360408167 437152091 524414474 807279625 153772179 866734863 97469178 719930413 120062256 885010863 927099708 981833094 362358965 824846113 551977116 631423973 757114792 828616588 711006945 942454941 777574528 892597961 703516514 849769024 695283579 722096319 398955573 563241507 803730306 903155849 808050663 882208515 386983658 595035145 215838312 411104400 733679891 985362221 784453403 811253249 467049579 930625439 838100758 995747269 156346421 414005527 372784465 595840774 14914357 872011996 631293268 961827147 158381200 193070374 68495010 276932626 105507300 873223357 347227324 592156935 468909409 695169008 238939520 705830689 193395351 568149663 560743128 807296966 194571072 538994436 891423482 938732167 329314805 809864033 306282995 654373957 940162203 957588825 686663373 957382892 613308956 742652737 356055509 620331902 956303629 993691037 946105319 986148797 531545459 893794275 988720130 990675721 127304038 157722232 234735677 395479944 27126430 402925803 848444565 960568345 885834892 909763657 416238839 478686383 834632457 874070771 846906142 869469183 941131581 954807408 591932278 800911576 311932589 599852426 454577248 904856670 750824841 874650098 5865830 972749217 363909765 545508849 233099279 485130980 426825839 439272522 700143461 893234799 623611830 973742895 651863301 721219559 673969302 920408319 497212786 659161865 708507047 845172093 868759909 932004360 694014847 844746113 220572100 540659326 800442165 855774809 109830999 452259743 420517871 928193825 927979970 955541805 733938799 832637630 321713227 467860823 766455125 818905524 1421712 749979077 853021279 976947180 629828471 892609537 924008019 974742558 981424142 983657805 483594811 844830323 523454869 837490071 533878080 783878094 845078753 959878901 602891172 735017389 688582461 867403897 176738299 221194882 564023323 803949157 678380439 868386105 812532306 912934900 883022381 912757260 690261870 995974727 242149307 886512024 313425576 369083744 951138126 985902517 153601069 155101337 749120269 920179170 634122255 948547204 551918900 799902322 911980827 912542693 982431447 992180805 353245492 784888347 280616798 968932483 472018970 914528452 137744466 930980430 255762824 972034870 409070325 695162489 364286386 980407197 946975314 947156947 718590266 892773866 994182508 998195991 480521508 783901901 612939138 975707480 950685556 991644894 484137326 884985547 846254671 857429383 284345571 433442245 373323636 487411485 803408518 940427225 626351254 676147325 175044964 236273624 106992324 648706013 62488891 824513219 789434842 892710631 610488546 800369596 111462275 446154405 984557449 992371624 498984243 624746947 294315197 783771748 644462263 665359022 510160980 820359119 185518074 248939777 32196595 552277903 721230476 728213547 160206024 250364255 529772361 648069905 141830167 658128117 703246684 946646706 160062130 492799273 768977775 801168303 726697208 991270390 391589399 864293624 704598627 819570294 217681834 415050989 340205196 378982114 229016338 710047963 770171257 834793785 556537986 695557879 594187109 996521962 812925147 994477990 553501987 991147474 741794758 778220402 910581354 943260573 417952106 500662063 91729008 462670933 84435437 980661598 631509503 990432010 539412346 723202326 462333690 602641677 29510403 508134720 180547027 204173914 955695979 964699597 829899966 908699481 60395244 66122071 183224917 370191516 900290382 968693532 42686600 497210563 740102768 758258657 46796239 743577631 553002983 797250923 441612097 736886894 419630276 716109096 427860512 915413138 749421727 787894077 643526585 993704933 948613066 975418257 815203554 878203187 425483049 470800961 156955153 844933745 270169756 540512143 57401162 312464262 179865762 743865432 529560811 597438514 207731273 300365115 611641144 750671796 238444115 780466584 400328560 483405241 814841841 927487059 362550038 652397024 401906645 574400156 759339481 872670629 880278047 950700921 998866756 999866403 486213713 734964499 621698575 930792565 925298565 956294714 191124761 368303231 962162779 979643292 659763748 785986980 55981150 790473613 33019701 112277949 740858269 890650172 376416378 470974986 649599505 932948653 753672294 976677644 276842517 597655860 273620111 873971591 617379155 709317152 349779130 931334863 302476231 634033992 383686698 941274162 283934005 874290824 23808596 99621137 401835028 789131956 267341021 377951838 421305212 556040658 288026987 825236083 25537669 311312953 195885653 965422030 86196542 580984029 499610245 824683487 761749661 958781400 424843354 595229063 45956892 734163329 274748484 297424366 347174683 443091907 261887806 396889235 776445352 921902725 597245564 906893808 830636208 922467915 429269166 907732882 80455842 611250894 850860788 899395035 962285343 989879495 549880707 940160764 643044572 658161220 412204619 996801529 52502533 175136737 696036014 975777467 586451013 588359480 721452114 921450894 759870962 793100197 278559448 556029963 767955797 770496909 730059940 929074102 643899615 777413671 954661482 985196404 539688354 573472455 687852695 924577143 148226567 583067971 19175523 354359744 890823684 908229048 435181706 769421753 627408274 667266089 907948600 961105004 851296195 941688387 630049047 704385563 872541970 935446368 197540388 624800507 305764310 317097784 649114057 965417776 372176215 659741442 245252692 859605220 119813242 661715353 828479237 912706060 337354993 623480262 846042062 965075033 614212706 689510182 245872778 367298745 792561910 826266019 671878638 780766728 800981938 916415180 78137395 569722474 536597708 552350285 782770562 803414763 749311367 960124610 831497415 877500039 275064073 334407582 43729279 519389976 421582573 673826981 390070637 478397375 749068464 824038830 494714966 571020193 115158206 998909768 96013169 818143133 404307955 708995238 513313580 537575323 16848620 94181446 307819169 921975776 989754411 991942606 188329661 807921058 9966713 697572361 577006110 908240843 952400690 974633483 447418972 640930213 627201290 851880038 497057476 941926997 518344895 641661687 152608618 444369120 754027149 977369555 904384593 984023656 885883698 976656230 244684335 341900039 255789550 791828569 232779881 424020741 606180309 925884320 492150902 607572455 374841274 671690007 545765404 747758937 291333488 347660078 660141689 935988565 512565651 930757939 486227656 783499061 806402523 963480279 330616805 362479509 913911574 972898021 964159550 969907402 858532999 868053680 751006120 752516690 965386517 979244454 812143913 912104135 590147771 709658653 82027274 845266299 43794000 706991607 417204524 958064218 975156444 993338174 972845411 979599286 603331937 942785307 53962849 969056478 270807943 542184755 990101657 990136216 348092744 377900703 155611263 838707682 843073164 896112250 603333974 992751614 802593719 954377038 791973291 859996908 786990908 807248642 500713034 759206221 271408304 343424364 620624247 880987542 148263661 686057424 863116437 983199358 750589436 992184151 207156259 806676877 261728443 784368870 803587827 829012887 530182052 996190413 5546410 981785135 945731077 964155557 795853045 871435327 914682065 916525237 988654518 997373901 222188444 395018312 774142110 972744043 490895301 983710992 485300040 626468655 482144902 984493707 133101954 242470811 805060406 938022849 85139054 193383478 347790999 444648283 428743073 797122938 835398380 997250928 16664294 822722692 232309445 487564413 970651323 998067095 688972410 840098234 129353658 263823278 439555873 969510377 612033535 772364578 104628918 125983656 343428891 359505562 543161193 828339287 74947552 575342778 428108458 515032746 656372368 764082645 369660065 642331716 936241909 995631610 125538568 790812455 717390788 830990544 592340308 862860518 695631343 799836487 361945196 478025238 617713034 968139480 419369850 555641311 599914359 706022636 566211312 635728061 170767124 828846066 498054431 624081395 143987144 179693138 662669006 883867963 198659727 521713513 949442784 953318236 283873640 869796238 315295153 373781548 741645487 768793840 65777987 792764738 137770975 301231811 705387624 918057689 363477421 391191845 709171343 816190182 323855187 727558511 306373718 752430962 72874670 269830272 41423824 864100827 387609977 717114944 850319581 934461452 959167418 983945667 358985990 592351391 178914875 556582623 151416745 389704500 952991409 973794990 444315334 749760033 63652041 308603282 532955304 815440683 531657075 921752289 617113804 980340164 780011467 962395413 654270889 993827870 90118020 320520939 561700824 893396150 85967312 281675792 607505358 987599260 412390101 465864418 991901341 996454276 746759926 807907111 524000600 771843837 80210684 654065310 893689973 935674851 228302854 287983728 160044384 289918976 10433637 442324669 832474333 985127147 112151431 356007111 599949846 759308867 807442798 822595431 233928653 990587131 95958281 254315895 626519987 890733884 474873073 630023757 564121611 691560209 154287873 530486029 737801485 990665120 500573755 798887910 115558132 325297612 199783668 741740973 857855460 863717279 584502645 786020915 502431365 890864023 928171413 973673519 201554361 243058810 60655319 847876437 235032001 477935509 281780109 890891545 134483600 546368480 654631329 936391036 264441204 374799376 903686792 979495224 715167467 741454188 573522047 877064339 102787871 424236480 580619462 750380785 230124183 446593256 148244349 481481735 862518954 988894369 77823604 261534351 321017131 988803751 895058861 914766468 812044702 817710805 614409007 672946600 91291716 841768099 708673032 800423010 283852733 426690999 22094690 420361293 293762649 866140439 766670610 910857359 530539856 633452021 194412253 848255746 703955083 868244980 648953976 925394485 796883266 800957639 662015416 960672882 852108400 979316514 683634286 989036358 292317930 782958736 953540712 959445026 579974984 604945301 78665793 824767526 624918360 902009217 628292474 891203732 783144876 927188920 620441029 788102225 184745880 205527247 965145369 987739632 930889640 939561552 624969367 825444640 882268054 947487275 931637169 978843082 552630776 833855543 653304485 694906350 810706735 933092020 806958208 941122136 904972753 994161943 619592862 771561403 613672030 676197610 539700681 871776230 127626895 990520992 642263712 712526595 524919380 809666130 648244651 899300375 785847463 927845688 853295314 966072542 470337723 958752090 217449215 877727568 76841137 653191225 347738923 710278073 572709979 612160691 740974037 982399926 242396587 244242226 429926691 438202609 122828052 379067477 404109966 894379173 136232836 420303626 779903689 892850038 83431405 97694488 677393478 926026621 885245187 917435652 472200397 728226226 198961930 211730979 305018200 958700604 217198591 242580763 392144164 674020137 593237265 842241993 313309912 640699432 909500985 936939382 683238190 963911122 19812634 447499506 845373259 963424150 346942789 434860772 748470493 833372177 768069873 870859345 900498520 973753902 617676191 990271543 285610997 795110763 173589463 407612261 192386581 235721456 127736655 709589872 400601623 749805303 413495069 844579436 812056945 908278106 280332299 918317156 208956590 236221804 681908846 852098560 331056729 976938104 344190232 475607799 116745792 329602110 878584325 883044330 738631341 979819180 205170380 276063043 339747716 892641243 428389926 832274900 463845325 926679635 496048033 597181585 991064441 996881195 132652609 778029930 790883764 889624116 90937267 145798350 789214176 839200492 181844771 444890282 954440854 978804542 503605782 619377683 278256106 661810314 322629125 339872216 572089189 796498033 334594094 687593409 600149705 633076648 305639758 491364756 952312051 958847859 503793670 745463272 830613248 969095000 784944303 932289834 606514951 902186911 32762469 536040514 421046327 478256155 402584875 806235787 36335810 990844446 293438977 463507521 915692805 942246842 398529758 701960570 402645908 924067104 142827954 340074280 562734953 990737429 791342532 848667149 511644626 909363640 907427510 990301922 460405470 985679103 803022017 858905882 170705973 181269490 817145398 941447455 416256507 550728512 589775089 921507405 71168722 761251335 821658763 854438822 105119970 185781743 956643048 980377320 759212979 861573121 916324280 956431068 77857365 738203623 4651019 417015745 398468557 549118325 996609490 998041883 170297707 391741493 369575050 943942740 695201276 883073476 214133954 427393036 234907406 421201919 743539683 970014032 11174153 714665083 112728290 363578966 858390193 940679131 237715173 849420080 428191110 522470926 399301135 847107965 992753493 998910777 839388344 845335001 87984500 529579486 977105160 985058799 416976533 553811339 631570552 927758475 309783899 415363195 530761155 693842453 232841239 403383050 665763361 755456973 155161106 460244044 821819783 906276728 542747683 938381450 713876795 827440148 375729641 761046314 396328001 975215720 256631016 468626518 242178607 562887389 504277826 510607321 861469072 874456694 162469558 778024050 354693625 518583540 631563152 786107241 830617567 936327298 388130762 668744535 541489819 735021098 769025333 818072139 853423795 934801454 342809972 585100603 159573638 946149967 946592294 976387486 536917586 632099404 380433591 676970003 676309013 924807914 493491801 831036368 482503823 564056624 332365760 916066329 847727856 911948566 899999125 934972393 304738173 399531187 762157799 927605013 171378872 201112583 213173946 343453514 709461893 980331346 417312614 862570652 232441165 966348698 170972476 764539571 650928443 906716368 340885111 738540821 328329788 969989951 794890029 992440028 50394601 250014797 862106874 982567880 905557049 960284865 285354800 962097689 786780972 973416855 158688716 972747978 209956859 325530147 295527992 941293617 150116653 281085469 442836009 703543501 783940701 958674594 217653163 416012322 693275100 791271620 713129855 955405343 855486557 970760614 319567908 662990764 782857423 812328330 655828019 666624278 383511156 581159049 914480104 949666081 116696095 271703664 423267428 877983544 259466174 423405584 913681287 995672253 917219296 985021104 531559629 611192047 78800378 745383279 714525662 960744980 486458193 570609600 730649901 822481503 395290915 448461250 64055147 984342357 457346583 696188763 957290272 974901233 572369509 667339950 143830072 609259424 357738438 623608844 409050849 604198790 886165806 908167650 553692236 619856357 987163209 997046196 411656236 705010170 93611398 932570187 464664881 636705628 409845520 866436158 822465440 990413872 276982678 546834287 870106550 938115861 68190191 319633666 739163908 832617426 939822381 944379879 666654882 868943979 63659739 792780584 232978687 735828624 115185886 972949471 729444980 995164690 917320620 976800814 933901400 937670467 77574007 623522659 632692927 664144660 121850617 464263360 460029123 728099522 18588937 549894229 377088749 661198269 816468110 842763412 870431618 996112611 685905402 851326054 75878119 476297860 454781417 639736308 393523098 536978423 517992513 932349697 966582656 970048644 691137355 975597402 329817031 677207489 661345285 920164772 449431530 767719438 92865373 517479999 496194728 603592446 553733758 754431528 204142756 381810834 636709267 699001823 68022315 877240690 219714832 348273208 321803537 525871822 435022721 587610548 75858763 670179419 565808796 755697667 990801764 993934529 124611293 254413795 410248133 757470644 893444087 925114985 859026665 870922487 329424625 450484863 385826787 519090328 895628788 920619674 333286247 554030193 348581957 587687132 912231719 956705119 426540985 748405992 204873506 428760793 551604865 869467806 120048110 695790054 183670708 917431115 516636207 959542155 240718655 946531960 86005534 167525900 334471069 948218126 805508390 895042457 201301258 579858766 454596745 582645933 408842907 895338996 943659753 964226348 170832137 419666522 550914356 872067489 777980385 988616476 940690217 979475848 347209906 852229878 563170544 686330285 216229990 800733052 585585902 961998579 619315685 970625899 253623740 468927052 557459465 943574001 189768776 830115859 503259354 972021500 108821761 215553432 810277184 997411251 807309305 818330038 562128549 783465285 703670494 964861243 857062918 991750068 640272523 978149895 325761201 984472359 815519942 879491867 187207227 931075003 694731285 740084179 790957217 882526973 695975003 982922333 600591332 808883974 282644104 339349965 323995565 410558370 253637126 430177182 577919491 855413719 59799295 65012163 780523676 794552322 111411473 914943556 304110398 838426119 578730139 968067544 884742898 897701633 473748654 510147749 883688856 984062280 865576603 972652987 400160162 576971448 992771004 999645056 349297751 631960304 939580563 966900312 336644845 691881881 810861595 998726940 334694762 551683546 815097578 981742683 204036545 603736094 909459608 993380934 807809336 914252276 22605543 822474813 635316055 922998847 605579224 939153467 814337332 949055053 865659714 934788971 992402156 994426733 294389814 338930993 84763473 569846822 437804349 700308170 827304423 879463385 782400090 867665169 411578256 872016883 551194687 978535067 774334621 859282311 505409262 823494451 326924772 533434423 420056785 693180365 921383677 959842865 71980911 548486367 357128724 544841076 352586810 397489042 13022324 831991185 41728576 278699566 100492171 789359311 494739727 960301066 954040761 966709870 79019435 185237952 177396649 362249979 517820287 606348487 187228956 966838317 2059804 845036689 688422737 880731181 637334480 755956006 713732579 864472174 715281785 781794837 296613028 809465296 835608768 954886984 604651671 901610433 931483746 980330538 839572934 879528218 151068676 804317130 715373646 854928780 382872458 768232209 104250401 343299134 382838943 588961195 385375870 400668426 478336775 772108595 728375474 883386123 712749983 960558901 23232951 564715078 628445049 960818192 512104648 966179811 901028391 943568298 194942175 365578594 792846196 990333523 381237015 908917085 695574383 827746574 724863471 896047748 340806759 704315200 286329567 634057870 539277702 564980083 457916468 937269242 436868608 669813734 944854469 949248119 915128589 946143102 156998388 959070366 604048816 699616510 904834271 939622993 924888455 976041035 510258837 576902452 551156578 674677987 542244921 931936819 853764318 990215796 667608169 774419028 472203645 716447557 337212902 506297296 239512273 387231994 217366895 588184016 380772403 701916602 441932413 622327404 300483406 312252296 17808694 465297217 650608284 722290185 44030893 982921060 187923518 327374990 355398702 585087164 7350652 456816959 547089252 702303134 398300594 802448653 507383536 923829842 328196466 560399074 496116220 796430979 754908605 961964370 945078125 951927088 634995954 815833787 535344483 811825302 534975344 683155943 69209642 690514820 365030879 956302022 142497808 452887786 865646866 867830989 330837179 480603134 828767791 884309624 35003844 299682026 912258992 931585817 838543753 843182659 159716826 260778484 237770324 655399921 90734497 826779686 650449455 868712215 529268901 876488342 535800930 968370347 438426346 594546401 844007646 896294937 137904519 292850731 44536486 509228571 345286548 549705481 973288702 977418704 359786524 596134772 754280144 778905016 56190698 543208795 970561642 973890212 406098574 583170789 452969711 994404556 554874065 621267507 24488355 63047382 480843109 518414081 969972322 977683988 926687235 943776818 765294370 782714047 390059670 998021762 806552583 845823049 257840747 393955812 232475352 560582239 7060631 685989294 349267478 427034347 634752889 744941408 598299408 773498991 363125000 954148475 861331437 901053457 814046363 967405696 607897312 900903346 213656414 718653707 322163945 861344586 619206308 997315428 827839801 855976448 163267883 845053283 794484542 829053004 738215290 766085995 231310661 650080530 528054410 909366747 212481632 477591631 557732898 848161882 634001849 730797126 491983177 959910460 802582717 958820360 430298380 489655139 727972607 840929700 655618078 923388487 545416347 947583034 109700610 467332978 131778618 765373689 388743999 597900621 449642606 620993025 11846610 351648601 838028701 849179185 332959925 500351664 923824601 972959092 380811676 691519973 534248460 779743724 135044491 412642416 966047700 993667702 912470742 962918988 373865322 390041627 601419309 831813173 503266754 664305970 315828458 995338983 700608807 977021836 275195322 477534139 493327087 659303808 291008473 635155900 473349340 693653060 475701254 817548068 796376238 957550105 132214016 803960825 547784494 835718120 455736894 725097538 277631882 343441181 125041836 787308595 943007849 996897866 637725292 656626255 331055267 371769740 978912923 999101629 560046905 662822826 189824579 441410571 281512923 710804562 956082731 960175126 339347105 791144828 165880004 357415330 329814158 872447134 166351951 745133248 386500868 961033499 385093856 415687868 947907664 982178493 744806406 938196209 253223569 620507003 370315012 632350670 699041745 840049966 620603824 716184377 619728019 950451915 553536605 797495467 497772226 842566454 167931952 523206133 803040305 993474310 400765446 926367644 76998366 563896672 764573564 976269383 706030429 709093147 459163940 570980610 713641214 871435003 69764790 553439827 78345250 508423577 878646171 936383541 237238155 441027672 820343194 984487125 572755993 629921516 601205426 756995714 414711747 614337419 32668400 371212762 423099573 541856646 33399606 642755824 92331483 853447041 101788797 416031765 59308038 890033976 236311656 740786080 986345337 994226344 997023655 997613396 861248546 890994439 924743682 987792618 957274148 963533637 91896868 705406995 920886420 949250577 297646290 515079586 986841997 993819198 59765694 420770170 496770792 563343542 352419696 925844422 613315481 627697818 86880766 295319202 559622913 666596393 269478747 456403658 252000819 502361307 46612244 947892430 805282610 851945013 700927295 839725683 183485933 642476050 252769145 951370084 349059302 980259073 445076647 885420215 309432210 357416598 873270845 916602628 868402104 890678053 301239143 707048885 207465231 266221703 203551383 668035044 40995814 631709366 615623818 747945960 182045353 451327713 264753772 761524904 721816493 819265348 169088012 268446324 516106707 849111052 518256402 614825437 797792025 977395346 18464908 701415647 779102580 948364253 725322455 788797324 367492414 899536433 45289943 751447301 924268527 953262613 70027235 80651440 74241260 908962143 198233697 942368532 617337586 923893819 704927717 807018929 471204948 666456012 563286142 960932690 450507764 966774506 656242809 956604518 653046914 932913934 726498332 772627968 606982763 824072080 587322508 968621378 576510962 927041209 813090667 955917487 55100044 569222082 433144285 698848075 293170874 493629253 943985294 988104969 513066496 927700620 482804940 693127273 188351700 598892594 307249856 723190582 737677546 949196287 99784670 613274467 163947438 308837496 646534704 713066969 270782524 954192514 750451723 856152694 947393364 988961328 533042499 867718511 413542499 477944462 115726725 807934869 638926974 754456641 326511995 470083263 780264062 883707004 882328002 926965643 367779999 673195164 766774524 808590908 907951619 913594471 972123108 999132135 396324329 657761984 736195952 967001952 666993904 759204884 235665641 761338933 552556880 760148194 466800428 731764401 764285793 847703374 570778680 726038976 32958355 468769184 238494155 395306616 672257573 894158182 731270586 949485024 295853718 784306170 587103247 643444339 90623833 990844488 823460679 923426224 799578559 988457502 926867235 941284540 50854965 744865525 971824447 994436199 365647971 392244948 641315912 804179150 614328487 772300144 548715331 590128923 908118761 970389177 509754839 663859352 421869220 545582720 230181464 766405004 25585485 37401443 296339367 524872712 737430255 858317242 942332262 966646097 218559039 867446707 205622992 720890022 647752596 927978511 163781351 206946298 1248000 866719046 223928521 382435325 381176308 650401681 224461371 785019010 553432704 809863860 151432156 366715311 416875200 475148842 142032415 924320901 939312434 956375940 837306271 862860137 70011661 619783203 7157126 77917232 255223179 277349026 485268565 558159513 617788594 800169635 546541399 686570900 656863505 791928558 965653519 980968097 490198826 753061433 644672760 785212303 815644319 849699052 482928467 668280854 301769887 488515033 578346326 939614303 977185716 998161317 387378576 853961300 340778316 909336039 700978710 956742641 395672091 506434558 657069303 863113529 20734651 467074225 90421469 818241403 74060110 281937521 949978612 961363207 571761840 936562398 105900267 185833209 674831402 971130017 891969312 916370974 423135761 510177486 31352777 120994894 504925511 715773658 337220807 758544796 674067019 975010553 370281000 395634265 882968628 938246809 62794688 148683736 850229028 966086690 776657054 962740394 938777406 983916702 309332591 452210023 214856908 903522064 734556022 958910341 725938653 915021212 832158013 936064156 68903767 166000566 593780774 986436002 958438791 973292777 564065213 824057106 292175252 959269997 388634753 868300660 639947771 878991625 412569043 700680999 979435929 985020131 494594021 756999219 389996152 911274763 336639701 620968693 120539092 905443095 817237259 820924986 772490787 945397654 783995408 986194930 686276701 786294147 788125138 956548270 761904307 986406404 287163019 597699250 56274051 495939730 273740354 794807472 909464199 995075529 46137445 454117582 374559997 599920627 891997903 963833719 847592655 894641427 117387309 733062889 215886921 891436335 282372813 691315850 73775332 393788473 759050674 853501238 338610379 370075634 374832292 519937887 312899469 867387963 653485217 794149418 95708649 122130323 504554507 980331033 162054018 835899886 999404510 999461156 31675986 551364870 99332286 107595513 492521849 752269493 107970508 273814615 642748818 801870872 774506818 795268541 290676845 921013266 149298605 959404837 48045787 858065254 115434715 694552553 351833542 835767404 639547465 957338708 307727480 948546173 939279298 978712748 286158114 939227321 896682783 908100487 359375853 689922964 935018706 946025634 578187084 722021718 753928915 931277381 559325501 560253279 672502854 802695244 68532964 618841480 994853528 998736212 301115238 486829011 565424582 844772705 538986040 720135796 699477343 764055441 865645125 877939306 299720208 394154925 548379066 660842013 319204014 871320568 564777686 924748477 520651512 526442313 820186503 864639749 127306146 914734989 190052578 279454948 892048971 945028666 182472019 968218252 358381392 745742151 975207334 999276573 653912386 815020596 509519088 849487411 125785499 433585414 110133569 926241124 554302173 722496821 750603546 885504479 643342714 916841700 420120811 448759750 555063704 669478489 492852365 732095727 553562362 808587919 476480499 573871013 682055960 834577309 855148487 858582679 754139604 837180591 959791774 965608974 749935883 755928312 783382796 848592379 818571840 831603407 781760598 960047248 233766985 599874609 8601088 30522259 589624011 794510408 48624037 304123283 913574665 936995115 472232895 497289513 6127629 88153585 120232341 121685721 31952297 114231775 453813992 505876114 641821909 672937288 709186698 757469581 959292815 966502239 794074019 898393424 765746625 868991538 338097391 651550064 822997615 967533352 34136942 249581534 757130957 886818741 68909138 302296615 968153974 972182067 345254303 571350663 876239754 903351738 951447882 974366940 132589636 415543858 152370997 305552253 661220971 760009504 121358229 220278348 370235266 588486942 411946130 806557216 281164507 286142045 808468505 998505402 54293213 735468654 598756142 808399703 132663685 909690102 623623707 640330776 601181526 824249443 536632133 562590213 956836626 959798163 231849102 518058678 920245709 946320308 911236887 979187035 269548709 475719241 614532220 625371849 486574116 491785656 930069047 995070095 327760044 738761155 402068695 907916612 115326856 504924166 400011376 989312323 932352259 986317535 394211663 620755339 324478226 417919117 599962527 631048669 73951486 606984031 479365819 521309154 64897747 740923809 665690562 750222010 822188143 975107201 323985976 454321048 765234018 830904988 14420331 123409804 87785595 705800312 215585995 669860177 341717171 689664576 59539078 266674997 550715564 618971788 678533390 873270528 534992018 864681319 885726252 911631310 462015002 755587152 974332095 996585469 960005714 960917950 65400764 721993842 973237233 998075910 875296927 948797220 268461764 517528535 490553927 695224060 564730006 690177868 486301247 764529557 837917989 852179726 219923934 914677361 165145282 870817295 632400912 929955573 798259280 870737766 531746993 761518018 533504540 619597528 683494779 941633891 237831023 367829633 945576651 984242288 477410529 879323029 751074454 892855289 190540080 243707849 576113092 673563468 775632969 874682777 839171937 842890680 628470607 689419841 617205853 639917687 370725110 897686645 850956500 932525583 454967698 852444084 704070197 943434464 313403014 639813812 315763146 889095141 240319984 856621341 401826647 491946923 909633643 991302517 847453486 913734709 705772827 712404278 693910848 990986354 977053567 991802723 680487668 812266593 739624581 986667052 758533080 889039016 871650183 911713266 854080867 967388475 318996496 377875625 298071810 307196703 306960564 740932977 120125185 156993151 371337432 768561135 928745058 960166745 119115536 252252999 350614141 712537779 540407926 695522284 657141544 910356262 65705904 161605276 926124863 993757324 697061697 915350164 645919798 682581490 630357507 633930137 661748990 990240954 88494189 907013288 39258874 737904518 776775071 827798362 424091395 552370051 900435641 935105528 676923482 877399713 462769030 846371412 943098702 986621039 168194679 784578120 827387877 869494586 695775171 804946886 530895988 671099072 12741611 103782619 528879992 885378218 27601271 90324432 979556175 994775041 102523031 354994763 190486534 848589693 70788464 872048182 717190298 996660295 664908844 888951964 636039746 813635301 418218395 709449064 149828632 756282647 646409599 683844810 215227723 830003487 975876218 991446006 6303473 620581149 264793015 767998466 125029486 300648440 128883259 267718948 578649168 595638607 703593874 887864362 452831399 730148230 246335367 475228816 103311813 545001608 280233591 283402015 798571246 936051242 856594082 873262895 294812644 601692026 803457566 934519321 294366241 891221693 407149893 680208189 676821515 981567595 457045242 689134165 320703640 657024915 906211283 955949515 539101345 947439301 303489831 876381394 468705021 806959691 54686522 514608067 762609394 809660706 757346995 929889195 934765101 995604388 259167364 738697601 789353333 839163359 261758970 742957421 308597223 377017241 245673622 582007902 286142556 567973082 672968998 782312491 705210654 763338642 48913718 477224293 579623107 853642866 866928365 915436999 245766042 570415596 887066967 906075392 220428113 379950836 320487231 705632998 406765339 839815732 556702924 896460129 127610005 954554862 448762554 566308908 578575349 956059853 830672394 833322994 827123203 831817938 800694436 804419255 788221845 989065272 785039143 963231126 935012056 981832116 7707258 700402495 495437687 705610239 735304041 957302536 373208507 645521772 558021391 829695959 939255961 952256422 779945027 978407515 937178998 969801803 338805972 901910571 531555896 963385610 330862159 918701054 325070392 517940841 869619799 942171481 352886568 975128352 105705738 383165554 710548537 888542059 938728261 982407666 50494428 266491827 344342375 695633935 316427757 587795651 32426275 532428745 543058422 599146601 40257201 272285406 706096329 813493777 381079321 804869109 930871375 996770111 362410243 950642346 964389433 968373702 875905896 906850847 271206793 878649123 520990658 917366821 448555185 617494637 441546982 993003397 818594845 963338477 603124499 769842491 491415908 875715480 668237820 837839131 101089475 571024378 684720918 939386449 38530676 664107688 967351559 978217964 540457288 754003878 239827800 897716103 321695941 963136263 319431195 585288843 418313394 693819995 629923352 677299158 628817548 830559205 119776233 313627689 590736456 873640258 584278 240087180 980877636 981565769 209727468 285115534 897413303 987705749 624218362 914242845 949192855 977817979 560297395 804935256 854537476 935309859 343050797 698833914 302897704 997636236 180985384 538651907 877313151 914406006 338573189 922263374 167319328 470364029 536509387 677224195 626263798 777208149 499418052 565936932 866934057 934808399 906227770 947348723 340794416 803325178 143575011 318215953 68563687 714255442 347381426 945076181 755096958 973506779 774295050 881422862 256710031 302546217 265586796 473931080 779578183 851506631 340576308 428851939 997701580 998853398 397410846 842311118 274367011 386570927 299892508 548918453 468505750 882214800 94146062 996463627 250283985 398063792 330286051 879365039 963321414 987608201 999737600 999781723 700762000 903227264 319109225 319873248 366251831 460127776 133641193 807801524 39682447 228142372 288625371 296461636 572933160 910523937 674781473 921428561 173041089 270061346 318050999 351073564 467369275 491730721 297443850 395150923 140346898 197099927 594614430 902119873 670576036 804322520 794029707 930628383 249487401 736578755 814814111 996335415 586087041 738227252 592359068 967483469 277328987 878528571 14377651 132708756 564863085 622209840 618937761 680086758 732651934 792101757 662041139 703425586 142321035 709201641 9673062 532833160 394322784 682952972 263866245 508920277 587454567 875234821 424458085 434240989 381113926 553099777 322796104 991814074 381801282 805165627 835575481 915270655 668376375 953379933 119544803 823658138 805055689 846553540 140075345 607995680 287549441 922267682 86900037 524422967 17388937 486205355 933391439 979144438 981858155 994002624 951951150 984355159 752390920 922521681 375411355 686449351 597710024 657206751 504798825 758486195 489706033 845534881 859907729 939440178 223647541 931843339 930158182 941981826 335799329 618447683 860919246 914454122 484799907 795391855 602645581 731215452 332438016 902231407 878569118 982917522 633848017 996444072 177763177 455377838 684171503 722339104 508814983 734095468 216714790 715471878 681321449 964136059 233421434 561816945 553651305 800097757 512990819 902642153 332054468 862203696 197953499 402483712 5983622 708634792 178896028 327724045 263367443 716082056 225609087 790388785 161520531 856886722 398229153 433792694 623820766 713976888 521323828 790161185 449798736 501157935 298160241 483710588 366415650 756436322 46033485 614303363 567662483 706263893 319379296 491030260 150886864 658323787 82971133 882918031 694086683 984992748 739992270 820460222 404818812 802275372 110323644 136977631 154382577 264416264 185321711 210520587 817102964 916463112 234885909 731946733 167033841 355235675 919432012 994984437 416713999 864344633 508304779 989364680 159051559 634739329 145513284 997720442 177601462 367704835 304031985 669088453 37565135 391948720 404607146 515687971 634785512 965987722 904758063 947184775 510983388 796095133 328199331 874089980 440908850 637247825 741432384 883469521 727088032 728428572 328967195 353364515 396694394 408185356 945894545 975161019 21637448 279755984 118797929 150856154 105852854 138226903 202255913 283497853 411280074 438094817 504792165 653027914 134084768 314720197 116534963 854439361 180958539 912497540 729881797 908746648 567333208 573097064 210567860 796348059 679734377 972708177 660036300 708152680 233156614 848171940 482737181 582246892 638679026 638984742 198524291 426580358 62105550 968386744 127383357 202135201 850445175 943813113 771655248 913210454 411001604 511260707 779882073 972758057 891010793 984467930 624926266 757698856 319690913 656516946 932650699 948330464 772523376 969871642 235266335 248548466 223970381 954586070 741635 989354343 22824330 665415001 193425952 786610244 305365275 546564629 802951660 894987342 404603457 512337174 973926142 986994028 718115844 910383209 755644836 999201014 465791054 983603718 653093942 740538639 241109964 470623039 174514086 809291045 60594789 404903790 489414808 617186900 495053758 509949288 160566753 848407246 647918051 705198936 290122375 846383936 237437412 308563583 699843795 976761372 513695104 626913158 654373735 792820397 614461058 947802152 135338680 255194034 905845877 976477180 466444677 573728730 667716291 698387139 212857715 300367174 585519825 777806479 698139959 915581069 277466568 307191426 869758268 986128625 733929279 977145312 484244006 509617113 104002106 186122497 31927429 952778532 625453116 844959110 806535864 871387692 312534161 545931664 900891130 934941553 220813607 639052258 561261848 802704897 400430202 933116453 204121288 801012117 954748587 985971416 753014795 765641478 851744538 885620155 873273014 931040686 857079670 940014830 465279410 608282237 379475703 784722090 383970500 631673083 231050175 420323309 573828668 923402085 95205775 682996081 90656219 413015830 944080480 975884547 815387676 946011869 430679089 875652748 945150758 977158825 336474718 844930863 220747657 970856276 33270626 647326816 655869846 952693577 492267279 597017802 708838099 724455888 954607108 996919933 153271204 157719016 576290442 765075155 349363340 490500867 166515810 578003720 163710253 291310516 273287311 928585649 208783105 785524118 988609759 993230477 676803780 858041233 882434038 889659748 777943696 829960972 534995135 818844978 917383921 931133889 280964394 923996318 726667449 968781975 785824346 987593662 783469512 912216926 323000911 524297835 471920773 553125079 172740012 428438581 471323240 889073532 377181235 694147533 409611238 430523861 94545680 376336568 528162493 978580098 22442714 520523951 827607416 834045011 333002876 462390350 284616729 741989828 419323693 939980857 233039072 784902312 697838101 786353394 274617575 705631955 1185147 251080753 819298495 976346555 599627013 693122388 838922947 994794911 895414120 899088634 801006501 803600539 979021145 990434983 984150257 990543282 999227268 999688887 121831751 889764533 960850502 994514470 233990206 973265853 318527833 439803590 875885965 879001708 565474079 722625283 248917538 263729511 922975013 970635431 422287698 798675622 612743118 661240154 932736760 941654043 266890692 281686206 347104914 601242373 283159003 436127019 582546125 905281284 274995579 612209292 989724362 993872956 359397236 600600178 992401662 998593436 193855080 347701239 45992083 316332248 104243058 240442886 208650343 403804594 348621047 412077517 161271152 792023308 88941737 207272706 854032419 992827066 54435251 67156922 924440608 987688731 678871635 746571397 175808986 226603932 120515344 501820201 986355938 998930260 24866637 79294876 632197933 945230526 442119698 608962574 663537965 947344973 548708426 581141910 756791292 803008289 635887840 994358311 900355556 987416279 529569632 761964910 339798522 841423186 382879088 523498149 783358519 844638333 26930593 588173437 420626561 605912351 419756402 941936807 926943177 975974847 425632277 524674432 12225542 990109612 663624223 906897943 75419200 632239596 699276975 786425388 979286914 990291772 496118561 619668477 756274861 790502307 855651866 875690094 723137759 839561594 359755029 531610356 333192508 903466219 536285402 866596640 48266100 367584975 827289356 913284612 248533301 422050935 898998488 967194724 698279708 909524832 231695413 278730354 23402542 610476052 958910331 990695214 399668267 574854080 61478595 817102478 567116453 620573524 687248916 853371603 358804336 542026415 976881408 993804297 975556971 989771106 181254184 637860529 552264341 645182147 809455827 852225443 780918707 864331026 52573703 403270637 246731068 289378488 866265641 894147785 344816435 476098517 856513972 918886313 888144775 914124424 891222948 943293853 561792958 711767128 87737638 925143001 409998489 664045160 397128649 836797896 356544890 433502513 633864337 923974732 292126072 788779619 306884092 719794577 681747932 935525856 284328703 645142690 978980389 989467435 324151005 716379582 226170811 863209608 403698213 631932374 189293327 215531739 379361575 956568291 22753083 102469909 746518484 759620578 381822360 412372055 178831549 847146106 953684774 958272125 57151016 884771486 516239440 788747608 857758721 866173024 729879081 766374146 693141729 818380998 326406176 644083145 758765780 841238992 485665561 604997720 527790555 730689544 581076474 881575761 549534176 898735885 171015082 884034520 16706593 378328243 630254870 725417625 393570600 418283988 534687250 609664966 495887652 673172726 697266433 899034905 120740856 442789770 455405471 980949067 33437881 297685392 714846018 946983129 517597892 759580039 565312149 645667232 40502764 219620328 594919294 750446166 527087659 785422317 989946776 999570073 599901576 970597370 763306351 854049936 613561618 676041918 886295967 955007029 262623741 990282551 535012905 817877777 825296473 849443047 875427650 918701819 334723794 712056614 727227006 847131346 900981238 996980805 198508612 289553151 612046019 782721399 354669242 621972036 123641807 321317203 754172819 940560092 974224195 987173415 226544051 469903137 829314252 999495945 528142356 925732047 558652643 694937338 457809778 609037313 179109711 446095690 798720256 826919030 119648721 487494074 850662165 963702844 350794274 984038104 792531190 900847567 836365813 946085920 349145277 573210816 609818751 612754713 61559087 935675781 948224542 968755903 789771520 969150628 90952144 247626324 291628785 341133323 147407276 669134007 146114045 264126905 733432862 867275944 544700537 918608082 455377423 495852647 254970794 343432035 387971813 494669718 844186185 893265809 485002456 528875055 338515790 897507833 628323853 938840598 896342270 931646479 560942333 903923659 382741952 605328994 64300634 837209232 415066395 716238969 491160366 549603080 118755292 123886314 1716658 435744471 668305664 786719329 245656017 332811963 341986926 461959947 416205712 436267576 303056833 483331899 182385648 686883682 392402651 468514748 729560811 791436786 990629176 994520238 749782195 802481264 532548235 938450891 945173102 952602152 94249850 767261205 869617242 906258712 507692179 585821363 392063948 736489929 642913848 719501903 750179222 977945571 500107988 823112100 402353985 794619706 730461851 958004852 92089920 486192394 582857592 912042095 801841259 887330109 806834485 832498499 324358409 714084171 37851201 787954224 134127603 749591790 772801239 952042304 997107635 999489607 72704887 672415188 268225175 533721573 664926060 697104408 763948830 942004538 909132854 954197210 974096736 977509527 95278770 991080397 553518160 918621577 68822596 499377513 288767830 601250540 925523166 937459814 439314192 753076875 592620961 813418026 543722187 566863378 957762726 981210559 853580286 926311448 754050184 964108181 476665118 653759907 592865307 651653617 515546548 747724371 331091062 611959734 711913127 822777200 477320106 612492726 447696516 487469297 75488013 877290955 532698085 993035783 810987284 872007659 699105704 791418958 990914904 993862389 660246746 872688107 176595625 873819768 463621546 630994420 178248686 240110411 728875245 898345189 660580727 707835684 890122235 950534838 375370524 670812597 450587381 948573093 233035408 735435132 638693985 700788861 160082236 473173493 362520217 682945813 604385181 688364796 73519770 139773536 218550879 692293969 542756385 910345154 556515886 643516863 897269064 987661013 894390077 899666535 613053125 905903113 846747195 986756584 697257550 979046583 350092186 360411796 128397691 384882576 398762022 726251369 377271045 946415710 956158729 958422616 855076047 928504116 625234902 979509672 970148911 989937779 709955351 955571694 724816239 808878334 653921949 917414620 541036497 939505108 428591209 546015572 240799685 448266239 178263474 352953341 460022392 973807040 226724227 538681155 502165964 996389161 716215042 767106177 102078289 726430647 882183550 919264396 587079014 723070800 909151550 942026275 972812751 990489012 413363478 712592973 605795684 752057873 770294706 919296954 517512045 839095391 951867780 985996394 327909468 970766478 345440493 463104542 23678542 884230611 676027569 958548216 536871737 922482402 175487063 184001190 989762634 990481069 596658657 769417688 207247178 523001839 868674054 990287656 983717145 990658743 844125145 880168039 893527703 982791072 221402297 576717705 497110191 891642114 29811627 198517434 502814229 660232604 273489223 359458438 897902829 917065629 350318571 627431188 704964958 997067680 367708857 440423208 329760764 665615872 446988678 603963609 479586548 783024146 335527963 429611216 361957377 938073205 236277085 915912078 145427763 202197790 67703878 695948944 384787122 942579693 27313104 140933721 206949844 680530419 111035802 354651600 816079687 966882349 826995250 993224657 740925715 790002479 168809220 638761883 967976442 980742234 241199232 685537206 793400679 800837144 278922130 541932872 92258439 565290750 995675181 999913132 967166425 969254897 452543497 769653031 37497160 277617259 728624737 881097783 653349404 865308125 634747353 816696629 22785165 186296277 608636721 759473100 566360027 825261404 498032869 694031396 231408684 852160564 235580414 592037696 594258389 782288990 558500023 981402600 658518112 852673099 543077907 985564626 160917169 717786493 738133439 918444623 809295404 831310393 132136706 890715085 786112890 807124098 118891118 359118536 436368 59687342 531075758 622142264 827969002 845726401 167247406 711525163 410482909 899684849 397265970 789878160 579021530 876595003 712927107 737375987 114845494 118284196 489687245 674474130 681456395 753226038 440967098 891377593 48444313 671332881 171527905 864055136 639361594 774106877 685228994 998925256 247687066 572538919 309306952 792595579 629564369 974691723 937836069 992909529 965972056 988179913 558800604 624903794 803944919 859033690 167085230 560518361 97784347 633957984 560475088 809879418 978202560 986155732 505613609 648374764 962846238 998452826 394296580 861721532 458597181 856147767 329515752 775491608 972552752 977967704 278769262 631723356 758895800 890322087 894215108 951663237 257165967 350587557 633481618 734394578 421820365 920617200 339656177 526232345 404534867 791694409 560454765 772358662 87307338 957088727 799938756 874005928 444779572 808356796 965932240 978930380 25426866 427882391 223899037 867443501 397912170 580054933 317813537 683699991 140644485 565850416 393293590 797545207 917499598 942921207 522132907 752208491 411240768 596345724 931998662 996076150 30407015 167537631 495745840 663422928 615774234 971533897 293495258 378412753 601336484 632437178 199927770 596982576 497496262 939527036 932681204 954534665 786089160 843605088 930729522 980744665 993946801 996750264 291655800 619678910 757020529 988412245 928240988 952640724 382977032 821537749 58878189 511088337 311932307 396995523 568262493 774262564 19693228 62226340 104850777 560077773 35168122 642222548 629468593 733978268 637240755 745073026 344135527 603133668 368181657 407379356 278646462 298878999 845789503 870250215 183129509 429329814 989581374 998128718 953435159 983252962 532775325 793575933 258304052 872266718 608866826 946209861 805045923 852799960 209761316 824978016 73903735 615958102 501268075 813863293 889629821 906036087 658813732 890093815 5985313 615831015 215096402 333531049 487018975 600040578 13505952 239983580 730342519 932713648 336649883 896244932 738518720 835095238 284688611 897329916 896462706 970120691 680880824 808726340 545985889 834869762 708766905 786661571 245052280 986216511 749834477 984636386 972990373 987503847 228240107 730177930 800545352 823259795 667405299 688494112 831729987 955968597 614062000 746995725 860859657 944888995 697535802 971018591 759809501 899456160 156018360 938343393 623966025 983378561 752834035 907942611 162875196 197201055 249845133 626060827 680542429 784357976 297044485 328851211 847379864 939177221 674899619 953454792 306334973 457079181 640102451 653585827 531827686 799502579 494155823 603602099 161566695 303735831 15997328 523357603 308406000 552132395 589064428 811177023 773783609 798818508 299169407 472449735 700858187 800636245 664079481 842411801 697302183 811172910 646474543 658101712 490712552 613732441 602491223 678048855 455324134 553573532 708856497 733123133 216721236 788530786 503260575 782242403 78357882 424473133 347676327 808947939 849104082 889569688 749266489 968545832 246874146 456146584 218791284 761198708 851643192 876943920 411504824 541396403 136559125 758059494 528322776 641876744 602555873 794578766 857988419 891655110 93085556 946051158 152898072 345088010 524950377 667125102 173954799 281151659 228731296 372341975 122676245 297228245 256639082 424464041 975151649 999004315 848861487 974295619 138168226 523030825 628457614 870777044 665465441 781170894 4790934 245990542 225773790 230221860 603021626 658463348 983723545 989725927 260791507 406491429 643499855 741260668 454456181 561108469 106624682 966066836 482289476 616636022 399452731 455632026 988267138 997306173 459543892 715097854 453911504 596874038 380999077 799857258 68077916 334802472 452150574 582128296 90698924 705717567 421721572 889738877 490466394 942238654 12361666 484770068 447756406 508973050 565502368 879550124 75947778 309806005 117029113 591630421 165957044 734859824 379563978 850720701 557768962 763964579 492255743 978275327 319786666 696349947 503202610 676206515 565718736 633681002 243441871 302461907 144879291 224813702 546903272 597012926 29687190 41500475 814253752 994398453 435084330 810293149 769814229 960745134 23223636 232455751 442623027 678402063 155902484 207003187 737571734 902989362 641548247 972167517 304287120 394533726 893604304 915841419 899581358 931135472 195095788 631944498 704798710 884661779 894750953 913190967 587941327 806430645 917781252 967797246 212973954 603107630 168269269 884952669 950802038 978030317 950077680 972663961 643328195 657961061 361050584 685862631 887197696 908234441 97844512 912362839 788767966 849961458 763772619 790499698 22555683 745683905 296930870 329928986 115747419 438285626 940727618 942387186 523272222 939324777 762641001 849026587 91029901 367028355 823856727 925728928 814938645 823520574 404330809 789879463 465464775 680990210 811463442 948487713 284737210 586642052 896117537 939393806 506427429 740384440 678416780 807230762 189854456 522806065 999781361 999796525 476225074 938327030 232713232 275331754 38928462 851079354 513520512 783494956 323770679 650546499 157881579 535567098 683828729 984490812 752586121 874962023 998152541 998367200 965055743 989853100 710423910 797926768 412831162 981710493 183503309 519033870 5925885 114132762 426079222 636246515 482160061 588978441 434563651 451637322 203889471 694817524 422023957 462684306 301301962 483711319 680841253 745320491 674747315 759348457 360031418 399661827 737984087 835728944 334208503 739221026 494334385 747246102 812359219 945074344 592128512 811312997 871517269 931050466 663588844 980440970 334427020 338828887 628531514 629993661 590422501 619346849 290220978 881464244 254145730 674491552 158237077 308018502 663304554 856356102 152346125 331583425 810608362 967517473 842294064 952525154 503320560 587225076 77649133 720131122 260604217 614429318 39914256 960973538 589346364 756830849 173747316 975377885 710588146 766488927 473845942 487990454 476983882 626195853 510309215 983966011 13876408 255361398 827285275 911761368 278281266 609170424 706624580 751679011 727840461 887589712 518291376 904311227 812457542 939284462 907895316 997913745 578323115 720540484 248449550 834211050 806579454 890858380 252793389 927676861 499858755 528974416 337769586 571680751 602149810 793214365 776080843 837850059 248636194 756745371 714787952 859038715 789353970 918429817 934640699 940781300 765026690 967176490 235368576 510833127 343994933 928710276 20398967 543098646 294285203 774107156 615155843 737960836 945199400 995065026 304911570 635789125 227929662 401238660 778156747 860178459 346545638 957510702 72110305 240421541 516936990 789841981 235377153 490180228 96911501 761619065 255623767 644906099 428906137 718924317 311911173 780977657 176981636 303484867 376293467 620912548 799578646 868377699 373350755 737002519 713796862 958423633 46629757 99590003 94134560 777183180 407924048 748234288 975749274 975974883 731564405 914185120 542292621 651768274 576895055 676618798 943828188 960104512 502292566 750767449 996646082 996718218 927311135 961309245 330506501 683569348 55252579 281790038 107397865 444237638 371895024 832597810 462967267 779716024 730045823 791123792 225867497 669117932 201176059 713784687 167226928 224814029 571769773 792882005 447708075 915538279 409261859 521446813 480441221 794653193 802284912 886346229 418497457 718117758 983966376 990469473 567882389 667614680 553513125 883026527 71861795 179035478 301984034 688072013 842073027 890095089 810731546 855541508 994434211 994895670 976233082 984626575 658376337 787300761 415254880 521359667 771559464 864801256 368160619 558483102 297494352 664785804 438001204 628925149 582487690 886365883 559011257 679346758 616595172 941855322 175486617 973541221 261600921 401961231 631982793 844298035 846704291 927457725 267978382 869277578 733946506 842342364 165634854 658417489 942407183 982216472 321837465 515714463 148291523 458418243 167281822 301839023 417274543 715122082 477567794 627597551 3944798 485411706 89144563 873653617 678873099 821259511 84109497 972458126 153600702 493962033 224577816 399383630 656990133 688699148 630782751 765223484 118472756 763754282 829568022 859834219 664011159 854889942 384976234 540078113 219787827 670389355 641409140 789142462 287359485 555963749 766553151 814367260 514772820 753344603 335116902 965527552 967360541 999235018 882354316 891808530 554321022 829146317 911491454 938041452 30952975 443829413 248797751 359849006 579911290 630055812 329236497 684612444 597756584 902712988 741941085 855023498 636083316 961649079 210428098 613440273 412152362 978732581 974592959 975790240 785189261 872928904 829091078 845589133 498488561 755625856 548679438 857620799 820989394 969718953 927698456 955361028 526836666 616118155 492624136 977497171 519654110 762527780 517289404 730804064 769528521 950909516 247550918 631230978 760814877 928241150 660242835 824386998 402042683 725924624 517744098 839445535 39931973 412334259 491697383 539510405 963602990 983847670 168819541 325187682 138164566 376124471 268418280 364201840 471337275 648897926 120268805 901736121 803805291 875714226 956819385 995240687 197918216 272204229 476107071 664405143 948596224 967521445 255752609 964242611 971936955 980174331 307947791 546077465 869455409 931558572 669833697 746655253 709855000 748299642 109219770 479907439 200086113 438434349 210628297 215000145 424668366 704106720 205587622 707898088 478915301 898065381 343735214 769538413 241645729 888636733 348360411 954188441 298331249 988456531 382314182 872998121 473736937 635169593 966127116 970519958 307643899 672554260 446107564 923914991 95543780 319497749 347012115 670639793 16221464 989314616 290331863 366615040 546999679 712723075 327981896 849442988 240619621 685334735 164158554 275314574 362074288 580581217 40189795 975127512 974360197 992528474 547270280 713161448 806877801 847030687 725038934 836384677 810835462 823321082 217692997 721325309 285193214 808685483 59916186 201083278 911181259 977987887 801467896 963909692 518340283 814750052 394798631 546909388 445442500 844150119 892714851 942143587 548836348 845962113 979775271 986897608 895011268 949672641 944417320 948244444 192197797 222142091 719507378 954678566 585399872 949980839 794858050 860439335 787578034 936857726 620547159 652025853 836473495 952343005 858957921 863215473 240212892 529854656 898431264 947923943 207739916 793195709 515438704 766421693 744083130 807625774 378645744 517721173 101252783 739589755 332480430 666806149 5592988 338333004 41094887 255622585 389598041 982065639 549765815 723866938 368993100 375431758 733233978 953548170 155666697 976627648 309785800 619509486 433296138 642838065 49831490 645379998 189163291 423180237 508491313 814449186 304873980 848938609 482680480 549991741 846577771 991818705 127255219 707247416 742502771 947699110 353936420 747692784 205638922 211171171 814091798 942883864 433537683 489102688 5915134 236832287 725845860 932046335 976066514 993245498 813320422 986381222 276763359 418669110 798719889 874955523 199628347 605212018 102883132 727260283 417800255 640886995 50024560 176024485 426422533 742840135 94483074 95870810 890674607 923136467 82618617 695162779 770913875 990935553 31075170 468968560 184423354 676854090 378245510 755302850 824920412 868461001 520853981 893121851 152653562 624135334 854943037 858608369 294521178 638478030 786971127 984085142 835306599 955783823 657902836 972250838 731718024 740177015 718424930 873516519 803228814 910305624 425975787 530645553 757304035 929084981 880204713 961056192 508818210 887556163 135819440 976645579 487803564 572585615 8325059 221266068 732374482 892155733 760858592 797503021 926473656 935669331 862474737 876346452 225733482 800369332 446961432 794761626 442239306 653338803 25030393 946696675 371683263 868511704 828424782 907441198 873170198 934196489 797771018 861639282 728400412 733709146 610534169 757486408 764716743 836666746 798171357 951885716 470484457 698578416 640007919 844363246 485579167 649140823 11561200 930739324 406256508 437821054 227593430 961402803 973193234 985088323 869356372 960318253 485778661 684954881 531610360 604230809 363669323 955023050 922166958 968429549 282295459 567786627 319333650 848899166 388720612 580912159 497288087 678119916 196868744 431220088 150673465 841830946 450179301 872508721 9306278 749129577 399979991 514990661 312677367 415350885 667149967 941914139 984544727 996590567 314805293 591295974 576322587 866980179 292951669 436794265 818926984 984750851 473256932 766498557 553802572 959758273 201635149 946968230 310416488 764918368 488034848 895986006 997729728 999400019 234812498 490421998 803608328 972393501 503194298 605137072 832891503 964222416 616805585 942172266 8845235 980795128 309002626 766519652 518969600 951512380 323496803 950498396 95392587 336216924 469143664 497574894 441405803 902868817 73453701 218725411 573893280 705658116 130994727 692062135 719809995 811168119 629450579 634250858 787987839 834259255 687123085 723087280 431398007 452991049 433023689 786058341 565721678 677459618 646401992 744304342 245165783 796917832 960787456 984285474 865503831 972241716 834160149 950847479 716270022 774365406 572676143 753444357 54085056 419152224 796607639 978453098 885812125 907096026 85493996 934260486 240892779 770915770 724503969 771037635 898427715 911973193 15832370 489482483 656373838 710331537 745672436 985668296 330221641 792562280 357253263 480572078 886188487 928784086 732598881 995263273 219915228 918087516 653626439 940167681 839858512 878450781 982715441 996187305 818915742 832539555 86793905 655617373 795318226 918971056 120215409 595754021 57433498 418054204 83756931 189010813 673245674 789657833 448119718 452338928 846222000 999455389 103603024 804597330 847151468 896194998 731917792 807268118 858838491 967479286 811803112 884589352 683486352 805744792 930554372 997925032 457098375 953747666 447449994 610083158 154622766 534861563 551792194 700368573 41184451 621713195 997422411 998408210 67689184 484580844 70525642 81808122 720332795 810928120 455028708 672826204 669031948 693748886 539703102 706264128 88214690 455900317 481449603 568033123 313728679 630301809 535738065 795026083 837131560 920492088 99702435 976991581 128931227 498721102 481553252 949239949 364643434 414933389 399299022 969273736 491284061 521723359 894933764 985131957 573482048 680390273 97239237 979388621 5649732 348972628 558182052 984432966 73037968 110110434 584002515 819344967 103268364 697743405 766262938 773563129 284702190 711146451 225211071 752089670 509866049 602114106 406679595 551221575 879723737 995703207 358137919 703096626 396583776 718608251 636372027 937850120 477025103 847427979 82593356 733556013 892305602 907970267 501469548 990831624 265035363 288955638 329002592 559891581 127140468 873329277 343423729 997741239 542183620 723694124 280336823 624563290 623870692 921209031 49559016 828936348 692309224 994537295 880785098 930220673 384107519 642111199 45959975 732937149 124585296 923466267 884915833 961909812 365894330 841619650 45131660 121122267 935268968 979462893 517416314 871081529 616884195 935328708 868417652 983136825 275079533 319467813 962144804 981075741 341710460 731924790 241099150 338032263 441267643 624275440 807060527 810697574 92483855 566299956 769656638 878337570 50817821 636163733 272398929 522192787 436761426 711106175 4275037 806638505 198132742 689068071 409331567 498833987 482827888 739215724 311627099 769645389 147885465 396137372 267086567 356301552 73025618 687190057 566867531 605012467 602058705 714379119 500057333 534053795 154570434 961485687 891582340 944767360 237646588 667205349 13915915 903565001 699052482 716357290 132963132 705050458 108324846 892163391 544243115 794747799 633135395 857684727 968648642 970750634 180464078 384985467 614035645 759347294 595870146 991981683 944285086 974905612 610626761 870567645 78800780 426653119 692260995 972821451 900186841 966633255 419804371 609465617 556635147 919028843 725395849 761851250 314908545 785271963 166167689 979483726 539608831 894421024 885516381 913487785 826159698 894667506 662949069 779542320 701933318 780240649 127210856 230271912 566306966 989593373 258983001 412308291 270837722 595431295 56057772 792586171 170343109 175786239 208497324 724315256 686364985 932326058 72695352 674045206 165309826 546965390 248076639 336802053 517951501 785794811 803879289 991117523 803030272 864046761 420263694 847777293 512226224 919282190 93726591 777835204 753991548 964557873 33483164 34252372 457133721 602110381 904144048 920103364 350319517 715316178 711270125 900746127 43639761 163484400 687898875 847072267 327779892 531734709 700778311 794200189 865879411 898191136 41501645 610288111 740616148 878889219 333428751 853346497 947905062 974223683 652564179 875543659 140262230 684193275 708321753 884606761 700557288 824521266 310591752 732116981 575957169 758858957 182875611 205764089 476710267 940277508 850178263 917456956 974698719 977941324 908679787 982806694 175700356 722657218 537378630 852113537 35401712 337271689 336138276 563758580 567744942 688986538 545948404 750832141 638641429 904446680 485630068 988097729 810550952 816606928 113291049 618959032 646101737 904683719 924989104 944197892 890764830 973634651 499533507 519432355 253993988 810953001 627883969 934837962 747573410 816690600 503225191 796490464 768172396 875809312 112865392 305196957 821712333 937869018 81633408 859224556 873044073 910778613 674373271 948177559 366654854 915641872 79098267 86124127 365887708 381186845 884351543 977278876 845663900 889598726 391033465 761028250 824598815 989216026 369865430 716171543 630263803 977282423 351020695 956422019 127983444 661671432 520138837 871601629 702025890 926410926 976698233 994271750 422538393 975481523 838238447 848701475 265081883 932241439 332696088 803186290 373384587 530249018 258904739 796850042 926377315 958116972 561159541 972435004 239201035 761812314 462373690 971566823 553152071 980432024 341677423 780654984 635747846 806271255 303398743 399250114 763980204 991160139 760994343 941972459 993109946 996130356 736138139 943229238 163864242 945255715 737494675 834833206 488002047 851765275 456864597 735369704 798577342 824767663 168632827 899645361 103536148 987017522 434867866 856985668 814082134 936735612 509202219 758493195 115914323 719458185 619422206 658508866 337254957 433031052 222680029 800801801 16871117 439449715 796309152 931133999 763807749 902180235 763650082 928824964 109610788 269326084 328106099 501961059 367950970 734635742 485743322 764767245 450345527 688486109 190361681 273055464 375648816 954767033 597638081 702905762 165653584 726247738 720896522 746026430 567464938 779435443 100877589 662441701 739051589 991453434 895575008 901150140 987322468 997431055 280857441 604237419 920547937 997553490 926019750 984565329 77793900 708251228 430828887 784678824 549188430 946200208 689182841 728003280 768333140 881089325 8808065 268695866 563492977 757724138 619745507 986316775 445576442 835926318 943507627 988064307 933111750 962824592 394278907 581448371 650392802 676800571 659151282 768845402 733515664 915761153 57242661 372777010 636090114 908758115 31271998 340329501 691035590 790017982 701093703 866854147 889747675 917256157 937198593 978822322 564022861 641953873 755117050 807722155 737346923 830167056 166951098 789778029 205458911 491977948 918155925 949606199 777965092 793701290 171968496 303792722 752664483 830697935 368605196 942220747 134419700 482712218 747678662 974846859 221451505 964667841 751157156 801857245 100513740 359642705 848270292 931301073 162971999 238409293 3749351 422958415 170327512 222662341 610269461 720039853 665191834 925271771 861150110 915228125 817066666 846294544 334255649 550666269 680196715 701993663 414601702 860451639 962072159 975368728 693587861 932549978 163304831 977605163 307517459 629036679 493427614 865428385 411980632 992993054 165496810 733860787 282009785 969883315 113031793 380621578 619862383 852048420 506881352 562346749 949969882 980001706 97728756 963439819 797086329 890055067 731411579 958582984 61895536 826364799 936052870 968615454 290562518 825331330 370045002 806377981 583859746 997589679 255756059 450740247 56922015 830664939 500685386 963138644 562588165 628921642 773496403 900221590 484077175 560062274 811310862 951927544 765366303 821640414 233211590 843335669 457211096 786094450 281707744 407732378 250331845 435216920 898811143 975903440 797022909 899117208 633155244 676556917 382153472 921470516 651120542 737159570 427560379 831344757 571745889 781737263 471938114 712228698 850531804 948480584 160783919 675093556 258347511 504066268 819799141 868799651 870330917 981107552 180829324 709770867 985480202 989834408 741199997 888312630 15220462 666908311 490601906 636206266 4253733 846488263 91831424 647406655 509192341 869531944 356148003 383853224 793329604 903083310 161501402 350707698 648168791 955432737 635618300 887051793 864802004 933797964 896258207 931163150 171575036 730242792 379253341 699206101 791664730 822896682 453325247 682093019 789247175 845415382 3965235 752664569 257729244 677467430 447458554 501549698 280423376 782096000 525327594 561479519 444592438 825762886 680971856 874783300 340732902 538442405 708132646 928282751 957918937 980480042 910551459 957281732 228776323 907740349 596655590 846690320 457924394 910092010 404305911 916961750 987120175 991275301 227955539 654619013 523380746 898418900 156511304 419260700 610677134 663110437 816484955 972915159 897734751 898129333 157914672 966359538 846880129 979612734 573808066 645607376 112614931 927295061 856474511 950247359 652165060 917801780 662451166 681820945 957008559 963208070 269488525 682615720 161926770 185739359 753249223 826250263 433499980 827884096 295587776 867912988 687511476 746237918 268056842 804174152 356935781 829356733 490674378 684179686 84988314 792404488 597904497 876052796 214707101 362072269 458948456 988426648 686721578 708546588 412639225 455300017 601580973 810215198 549292396 853269445 889831890 907491456 862600000 877519727 510882665 701761558 412285519 620956191 25017451 897026065 324429016 718245819 232426461 799567737 158938207 650164806 24435524 966171852 911289887 975145627 367784478 547715251 478569576 733619359 186074939 359929748 760864560 782672358 275286240 519141491 162365306 630008964 92763130 775816269 903655950 907751727 261761112 656494676 562421106 633037143 655335018 913561479 272848139 770575508 219882336 470437939 586840370 980376788 304131432 619186046 8848395 80327424 754184043 782713491 218188684 455456132 443282986 497022661 900406891 969581332 781721872 784441756 587362903 798347652 433679919 956990051 83875863 727114987 524513746 892665836 613145135 936365178 720348954 956513712 327065891 873849823 622653673 910442615 910968049 983694523 890820875 907994106 495137713 691213884 378088733 723914926 327569497 639306493 970122495 977935515 255638795 646093006 223562874 645571245 426691174 534229877 189449122 670126388 758553035 942077567 339986645 629318673 793689808 990176598 343428049 700873248 422776272 597001512 677810214 840219488 818341995 957138706 917896661 984360507 667848509 735092008 629667968 955605226 544750136 661756113 391059499 567742881 951443278 972840988 295131801 348414040 549006097 565326071 259339972 652514777 569387120 767466293 752006799 761006567 85317175 526162907 63223097 723295107 291508952 990793005 297627308 852095506 626868127 719889710 38064081 951562066 394838883 722680089 331754462 406505888 85382167 806577385 53920241 700555836 495681964 813124375 186728032 518254409 916516761 971167327 815421465 849560262 906608401 932076626 721202071 761075702 659102761 695930449 527019988 888222182 162465335 845418863 817717052 851095113 86097647 767273330 763933939 966455864 224556349 641617144 338568032 980202348 362030675 807756106 78238656 930753838 324678095 843199074 77268240 823609390 199980873 341235930 666454553 677799570 200319012 681827346 891078515 945858001 686292275 820405844 737675009 900120819 142490896 855701443 484581307 585460832 655873283 848033663 614424916 861498430 896451629 988447925 630291294 916885460 911886205 960906999 823503040 897823901 993972321 996871197 651601753 666637211 398461721 543365397 212825716 493730788 732463537 829960546 486678983 955997372 406111165 595997299 499134616 739718654 235471090 510751026 643115490 738734395 875931952 900338539 898159026 970205976 192243554 383443452 892108201 900962106 86529734 923844964 780622495 973308002 316072256 498592503 882691839 931987864 518376113 726356346 320607453 815639557 568520391 688398514 648467754 777737181 649517551 873362408 324134692 526417719 779278982 928294329 811397697 838431012 909516643 953395434 240922140 748907219 368697538 854044807 245797919 630962969 26359424 540479956 60718648 609228652 6539530 475611779 593194719 745889690 611141483 899132640 573372347 943574460 358648013 566086291 804007610 974211389 604110542 928230845 648411517 664025492 910861921 930997014 732936515 926707163 405025723 552088397 582238078 987012242 651761676 952312014 506361222 969103545 210121310 979541378 475817438 661438817 669414212 710536015 789062203 916166454 665770990 894299372 622931286 999527737 832133542 954392462 525471106 609728996 561679837 837769683 553242532 676784774 967412276 969702649 512955367 866780710 373571729 428430118 430284865 723921069 241760130 350207287 104309299 734821848 93096139 938832854 463172400 722703397 720425189 744993243 947417701 989511242 662000807 817634518 942673699 967874474 859360602 990399404 173227449 918665779 418668728 557923120 623063558 956027240 528006973 799549129 513354210 781661290 592005452 906139554 434660389 470362180 422007476 812674273 916317521 922190701 91835432 936108332 855469067 927803883 11728574 382459873 322491152 805455667 790713678 813160025 470036390 917486197 710246607 878765608 903513858 992308825 347830983 794127176 687627995 955865441 222718925 908000059 42886439 287601845 616694580 913198095 876724748 900481848 191195288 852315542 411159990 674269612 969624360 991621400 678255427 875038224 872475074 912794653 17315939 601883447 595222272 689835442 339100588 856520817 709475997 782699284 801116714 981330826 551377599 703093944 736096704 967412385 937104531 940455904 690202894 712098140 947761460 986779482 539145723 742381090 230329089 352925250 697198822 998390819 257913307 962627432 450986660 537558884 692689756 826091705 51216991 176794735 234958545 422388184 486466601 498655415 165798700 552294581 716279941 961361567 943577966 990072121 631762657 660537392 915744261 977912121 57752413 451627919 514773413 851833318 315684776 619589917 327962675 992792544 391597372 802909272 881368432 892190987 579406085 719195705 518750919 913456298 811026158 840178221 418762466 848451603 852656579 928225882 21960079 542997537 537329911 621514197 975799295 983612425 198117256 484361646 62794983 137998017 617454663 697295434 642624498 788943785 291401666 882546432 904220251 931696053 156680701 329835106 483018607 809336047 696379256 720381176 253473756 619827343 938867582 962472571 778664061 818619930 499749109 504025908 261618789 498560995 600326271 898591469 952249391 986856255 379151847 912553908 856061715 928799566 869196870 987048005 109956177 868420474 416903086 733388955 989448040 999967182 986474205 994983083 25004459 155663355 330960632 345404953 24940262 761180475 859318727 939250982 261311031 471846875 983123637 996061529 600790390 611640844 69307250 714609691 761318204 988995829 732941144 736418368 438725557 981956639 917298723 985934243 225198187 755902283 267331666 432959389 33040385 248497357 788616524 831249585 692677830 817120669 189137746 278619855 270233931 789142562 998254296 999194304 398519733 726559210 534363403 767885058 815276738 960438891 617813810 767350684 479000021 530741339 184591072 315803762 780427757 796660679 652673572 983449697 947010484 974849611 89297947 529004331 839790690 966560697 544135417 575691371 236344293 600318709 739718982 964752861 336304799 422445989 916930487 962216487 269042473 346043541 418952716 995027717 921107566 971441243 818381301 896378919 640383330 861346683 635461732 699681569 192648341 990369124 602993820 689760852 620507626 818692900 460984333 905073775 330293256 979746896 191553634 893410564 152510775 268623816 144956028 925070133 297082754 324474128 312798238 958038639 486445329 967630402 811362009 905656582 237887952 429547524 973788596 975650858 185248846 319751576 585015018 993606859 122617411 641890270 237628552 519319166 823066569 833644354 103582543 540177928 105412221 382925603 1125382 434127524 412502984 818258417 292467026 479040263 194089728 278221446 680170452 788519232 877660996 980469247 398891176 994223135 961127219 964894694 185547797 348535785 89289794 276070650 338640129 978593924 236287037 772385146 275583807 989559589 632272657 907863795 208580242 692322967 978482921 995832305 69680064 535112515 928455537 939833348 744478205 918262170 400175909 444937320 79962048 534280255 277223357 855406884 71814120 924810609 95475768 676906702 224991544 748895578 208195536 505559881 174241469 772360835 448866866 753982443 863466282 954990174 509764984 815484695 35123012 704684380 529812356 918554971 421243961 594873352 425157011 796080069 3739628 771995084 683140653 698996397 853620788 987849307 827896876 921645981 65289016 230923446 927786331 937521724 881576652 928681579 575363532 768221290 61719490 370885945 684565950 953080723 918380110 972714969 26706504 503849515 982673610 989765346 85507801 560198854 219603192 806685672 391472780 928317319 196559804 481718059 150699258 866395125 851396992 923410479 241880375 301554544 598942163 894079239 209104894 730097971 704336695 755162736 994263690 995408474 211527750 575967008 485168694 811253646 4444558 628289446 188781673 924602694 20241427 706000834 675190447 990396678 221390894 934693210 173912367 668935486 557900618 738056403 818918407 930375135 110296281 742085960 757217287 845708246 453710270 618118707 724987294 755782973 616221814 921146012 311815238 749886198 585714320 928064526 318739326 522402193 683569643 784142217 208303297 801633438 116508842 406687392 375246398 687955881 862066614 916358859 842646690 998386256 659418256 710853492 325098297 360807131 599128832 904874061 874219716 938784040 74388840 651497211 664659570 814325027 232542146 512027915 811765332 844628224 914166333 934140500 472162318 801382725 955080251 978360536 713231894 827341313 370177411 490974578 931695694 948857699 573004675 914974143 263179365 535625102 746238273 826379082 842256295 922841141 595117416 880814592 427384119 684102424 952679173 963445997 258662810 775780600 802505322 916850659 47379729 404262767 81221215 826944592 30655619 355266603 233155759 637846493 865464795 981322757 622213581 820687582 255294172 889383318 473737145 585510425 67431089 300767186 738634714 839259675 243689893 896904513 437942220 927306937 718530630 869988306 303157894 949496836 635968954 887307668 691765767 848163790 432765508 629494356 441287516 924514364 699011334 702345267 150099310 476329633 779819489 972722643 502921154 525817430 9877857 889807931 668451809 997866994 413124213 538170832 413761911 931423315 260700146 702289802 983591344 984066647 104460275 267178677 12833636 22551518 903172550 944992881 509517592 744475249 95812302 684201104 664064604 745449524 988128707 995302115 582915837 756302614 121631954 357063456 735877101 943960310 638253780 819872983 465589679 591763311 405226812 559262204 484004738 839910649 16218060 72469544 547030339 750906133 974290465 992827230 844227237 939510716 181706975 635621667 839741462 850047437 999155545 999777876 780406965 872777377 581777944 765815100 257302925 883107702 274455594 617176685 876591116 951794819 495599038 506175180 243051765 757688128 913173881 996399359 303987863 453700748 156775037 547310937 697385942 709530382 468559850 497172751 765899086 868449258 878693652 983976733 560089367 668681104 669232722 841100138 540653500 561398818 788523300 821644199 9470375 566582604 830584736 989896047 307456170 972724536 155299216 761877513 256106567 528749318 698760617 705279896 338769243 423767310 672706223 838335186 650921973 842619360 423131086 968109211 724625907 862905059 254801468 940468805 228410318 755167135 494495137 654766459 518810862 674461066 91553003 254073868 615506275 644222633 680139050 767924945 269429540 703511764 479754046 637141010 737149072 832408925 922721627 993175931 578528542 726681285 407513692 698195579 249958007 451173515 480933626 982484661 985033235 988822031 886969391 954752954 583867608 857212045 721718454 899486129 995733430 996632249 568798531 581171900 708318276 849626695 223573610 509574423 308492712 906707093 520090021 599194493 228720851 653839537 198505368 782222853 513630823 548879760 886233260 959662464 340501276 697019036 458348045 605993865 592568325 808602275 301349416 699688104 249747315 924644603 846263984 966661769 403082468 899099840 653624078 707255090 853956473 995380225 485619680 946263773 570131847 656790914 420764554 829695847 342852338 808137626 750640251 871874536 151694514 573205365 58967095 807266502 926353177 932734654 738384464 982917945 447049486 774287570 14910917 728376650 92586483 832445730 129860045 337488354 143636776 301808664 951678079 959296640 756510399 954573719 403035674 563312806 193545522 828621230 475068739 741035213 812541772 854954707 947601528 971411440 191505565 603600130 263343447 812043516 209733526 893909466 529135106 921701052 222650538 251891803 575816984 841710171 772826932 877825500 281231926 545502079 581037623 977284922 226688967 555696666 136099407 153574751 364238748 757236845 891011934 973474549 528662974 710008997 396549794 511759900 871617387 982691607 53134077 661653405 699979746 924501790 558732414 626962972 684923890 960381193 873402228 972687973 149324827 487623368 50509918 244796342 461636064 797836716 993372838 993745505 201742899 408671734 897761235 915534120 788936731 968693406 683329595 910231611 175002076 872212331 335669530 981982164 227763136 426698308 419884611 592430603 581151522 940514186 980810959 987629207 591562498 639389612 409547053 806332626 735538994 911038316 167335537 581497424 937642896 942824171 381101003 767535964 724153370 837412521 924861052 973038825 934442112 982046083 765898863 800711508 980398873 989272915 613903284 981326210 491713359 727278476 17390043 253197143 498121074 758775264 136654464 805440240 956056681 966100401 996472644 997925552 18668 282034160 938215441 938671612 710948341 888504421 429130752 749926006 539982175 944736769 815910866 974619518 203816997 213338158 524530583 732401518 875724295 900986037 809073842 862540827 404705924 743175914 851990394 961766345 643002464 980540367 540914681 999101499 597083005 920103410 292660076 797656311 184175603 563626265 798361959 943363914 106333534 614513095 951933880 999992465 529355253 680115418 594485942 655124645 57249232 444734447 52020522 962938955 6273410 101474197 451603543 743641195 383779996 879377034 712657743 725797946 124689961 448441039 410216727 577944119 648109323 935376813 720255626 989484854 613669144 970252118 987971992 990884826 767192812 831453960 134545099 657546881 873447325 959898196 790446821 803701749 743454861 820062335 743891920 863629370 623224421 927142264 669285130 729553048 668943817 739700182 773293488 880585165 245899904 823572255 957833119 975696106 694898330 814811760 96868206 555430659 44056812 892761446 667777287 842404183 112696045 318244443 842633739 973211888 898600980 924564999 809377035 926157858 596065338 950140066 504884676 927572861 597098111 799499153 173075503 696416255 931585581 954582582 743293989 908180069 596314558 755541973 69352644 468734666 551610028 719807750 928170746 958525938 242569126 531301537 149837638 881867338 473612274 547713079 689303406 798375494 662877880 945778254 431099397 945670533 817685374 847617082 673445779 757758558 299060070 491901749 215822293 305685209 696342696 908794651 981569999 985090157 794606523 873957537 274404224 779375881 196228489 473328888 326812589 695354309 641141466 716996381 814973561 985812097 720180545 905765247 314708363 349081568 211141485 221863850 777969926 790299474 515012270 571779082 729234794 758778507 335292603 796465720 916819310 947448401 38593511 865720543 996714740 996735370 509214636 818334202 564905282 905561955 903341946 937415822 532072665 727862521 58025215 627685337 228410128 564607491 14655914 756400449 364271480 456819002 974061615 984182611 326235446 885725034 877105385 911236827 879014971 997048628 34175032 875315825 958467172 979565413 255657951 351974726 957644500 998963493 401858570 553769012 65338007 416879091 468357355 999856384 72117053 821202635 254877638 490692160 649989131 669106977 719981333 917487546 86953989 483675584 523299916 644607953 353542771 405604740 184070913 244339474 383169651 983089605 454576955 909239294 649664777 678603750 60423911 826715152 639630563 694803207 533092331 832193123 200276464 345306751 676518386 913416009 916006385 960520426 402903885 820477845 107527169 315130556 318202978 959067769 420607648 654151127 132591392 628686656 552560097 560205901 585205011 614856909 315795595 361691387 111005298 292435173 129881131 416335821 774773438 988286695 768608468 945224979 888454204 977928293 25719964 984795881 4520316 284563335 811201517 920565253 460009084 911674359 994767498 997084561 189106 159160784 168976202 261484177 379419944 827517145 454316017 996944658 389661342 677157893 370732337 970677000 482995969 554140919 639424956 894712869 814766506 935294465 892138302 901825757 605015381 879373860 549793905 619975927 214246553 551859058 370961834 880269933 723149826 788540251 516331712 777976183 510821064 716963799 37780130 397141963 626809267 866557223 467649731 887052904 367736618 966141992 726336336 908616243 587593610 656823798 356981429 656826131 448751420 960185794 943755262 984344604 978240736 992584411 525889385 773536917 955181050 991077856 209019095 788530803 3433243 211019999 235229651 882125123 118599019 135310431 665502592 826113433 839327476 903451808 206700339 520291495 350128494 574038714 907306608 943024395 280524274 538493263 510904530 791074539 191551541 717485798 439970428 628206708 581266101 935412156 382047310 705973945 50954904 835263220 553887946 572305642 783668460 942095777 776355183 962952351 799358399 856065290 446099396 669635824 332389698 632096780 9424308 443690290 673636370 703851994 582271900 877165997 369353922 534514156 429961399 914785158 153735293 182242857 709956463 941524145 748662297 788705489 366900259 764245033 851199016 949454011 780591304 999803219 121359342 674324098 599506789 803053655 211264144 477771335 225314141 361489788 63705869 784882576 401997857 491344398 812129370 936529693 605472147 990406517 788306078 962310761 602846906 684862534 583922362 952696814 434706429 790997313 749019949 794657342 934597620 957241280 359764996 390144717 543773419 780009107 107787344 281204769 535674253 863126131 625345583 885376836 273512985 626489066 117496889 633897597 144697017 761862746 105884527 971152177 581990900 812630632 949802830 980016630 746130162 974083325 415392654 506258303 272488306 631723660 996243762 997246302 735287989 798661456 420185607 702966428 499355837 907546400 216733244 727741761 569701099 993205228 506832575 789789710 42305252 221106577 273002536 867266063 653806871 945451851 281811409 999714857 413224285 866005849 32919530 640439943 10272311 243118084 703236674 763714776 331023741 623572978 229667393 761183984 771603798 985855027 907004147 995704202 480148309 731560456 615326584 659139969 521858403 789204750 843818311 861111617 291633245 418779727 393539352 902345823 13391279 675189922 399604077 589854139 297637330 688526211 556381129 748960901 835562202 972828794 959853974 981223131 935043962 996164020 314457619 358895166 646245166 978045207 803740251 829475608 374487825 482451598 256176348 986330823 66963297 547491990 420342328 921460091 547865401 885954549 272985656 339322740 14473466 247324218 820775813 901454780 204410886 901079540 864454553 873807264 835505090 879806523 217875434 975328665 901780015 988526532 519036656 534220158 144460701 984233569 620120034 753125259 269185408 527982288 37124242 108705275 196291452 651440384 961213742 981798596 396900783 484674999 452409314 545244640 572583024 647809204 921163479 988390206 436902728 520592814 469828445 801483456 953893172 985424052 289749302 360912836 397530750 439561417 941388935 975405997 509629809 653867465 699902745 962781475 68917545 989916953 195477449 832035073 841569887 997447318 720724963 741858909 614645230 665866694 692483134 746626619 279769418 864441057 797410226 923544722 865607797 951397166 97402082 144329324 262943140 651680771 376101414 921780699 878590670 978279826 106962005 877545127 773392739 778054572 709368141 805846202 855173503 998430350 255908374 462526238 88266801 836162200 683106526 733681267 617473016 915580767 573555306 668521340 183998089 986800243 256904743 800662236 180153845 368562427 741019490 869658265 440477190 455151084 999925041 999950799 994893917 997520606 993071915 997383314 794898196 835398553 922774594 975619112 588030670 880564138 167681289 935412191 696467096 746606866 291828052 498153794 289539482 771170431 99420932 229511515 131785440 135551201 93336239 517417570 945077412 956966354 35897381 211953039 698051873 945790727 804495574 903315168 852680477 975837716 491840545 968304953 365849315 800534395 715604217 921186014 881842544 954109416 34584386 854935207 834616407 903899703 760171158 936434980 305834842 510733223 183494019 812428427 299300117 863205325 661652016 732445523 791777789 890030124 663466654 984122068 123515576 748702692 365531678 398269182 421829340 978504391 832645554 907733652 872037349 963190919 86722826 452459853 106323399 710143708 769176526 815422526 296859354 304554432 267558294 292868055 26059152 589578099 821096237 983960318 819695238 934305004 853665230 944865035 64416085 526754027 917462680 967001192 292325113 964569074 826686710 984599821 571203929 614243892 562788251 969982102 633060908 814020549 343503052 541186099 500870292 728413151 862980127 867286350 843982052 905720277 758367281 857730001 368598782 392923822 753363478 897840156 640655929 871554823 295467421 870886839 183413367 751323748 51029623 884855947 671447369 874318695 603151994 940419721 660750042 699367034 853299417 976490568 818846349 975714395 166497133 222838595 224813149 580066571 199235793 740411610 337247774 390933767 876159798 906709539 794619399 903722280 918245926 928725232 34482890 466385209 149253717 760769446 938524616 970947914 337794537 522032484 2210164 742378148 300547442 995583294 737936164 933409240 35443580 381959979 426322646 702720491 419067488 936811039 540827767 980107927 638690321 999722382 224587883 951371167 36039124 67431492 967026554 992326631 167005771 784755567 492844017 610560771 290541692 951197161 794291391 893052830 908729572 935611643 389686160 511357852 824916856 955633437 850739686 867483675 584402831 721427138 540263428 598735996 350807224 779574103 422605692 882042432 463317803 660616238 450353759 768459755 263141287 505761465 420706316 426536863 151221984 659890836 395831469 701009172 217799749 790435330 175255611 791479486 8631206 429726258 158778938 515231648 804499564 860082143 20087914 376180275 657420022 969649392 974131768 981646284 469926725 815325341 417943593 563835083 72438950 589225775 360599526 941045775 571843944 733102478 228171510 712790071 340911828 850039417 298701428 730459371 7633465 396548653 657743802 877811438 278150814 946731853 355648226 447586084 980632301 980890073 753482042 999450822 793697546 945676423 688335458 846146458 490912416 969657079 93532238 558761105 792422834 977361642 240456228 601135542 656001787 955204448 385768772 570351177 623469131 723803431 482138784 948397611 865545895 927417064 314841834 446389571 898161581 914369237 270829076 672691763 763026986 810056765 231604184 388373489 917686050 960689827 944778062 978859710 998335948 998813244 828304495 874475349 262629403 817509726 958886577 971436377 925796646 975886905 955964551 985497881 518015673 933821088 69146881 335808281 12189469 195443530 275901910 349265761 676530147 843827350 439442944 940606950 560268697 705567496 153097893 348580392 29873873 117141220 887206007 890289558 646856602 902321975 19827225 857231298 368096071 859560217 802344252 973317243 626496174 691036575 100044750 930796099 721335403 919406953 124324364 428068508 135518739 776072434 582872930 585269799 815605976 905816229 554082169 598839590 550009658 738958392 202533049 599902015 214169949 396213484 876048906 986200371 255316594 902649035 92474732 498046668 56075841 787097437 775654950 899444215 862028437 985385346 457030094 708074883 520647355 831848485 811937146 982204762 214491874 714029004 121266986 460623104 76888717 248602674 946924754 967743033 136696892 247195914 833710482 840606297 536148230 964106592 958786912 960895259 50373641 700681816 448578006 619654818 337641396 923500828 869722082 940773025 815559143 980062665 145481613 959052020 875399007 879797667 914933023 985620119 402092007 841309457 922468753 981106046 339529653 468357923 6414107 61203509 741977481 934563934 738866997 931990754 471359244 936349489 440903400 639197101 928314903 950548147 237272684 325858224 190055749 738579051 595804018 629010930 88826785 731927337 79950611 677186814 123512076 204212245 702779165 942169393 68968314 421817966 523578297 694840219 636913976 822232973 323368009 839723414 125627089 519677480 988288086 992778581 785864472 921118673 861028257 963163719 192282874 729685447 425750616 589563023 39741956 897986269 676487866 785276618 938186188 986869964 117089337 248835240 416047079 982169600 872511627 931009702 57756309 356298084 316350856 423315137 644401511 838083265 632227605 978565948 286100360 974120249 764007099 917893783 631520772 786363789 684453148 721884873 689501687 720289477 21690357 386721486 397665811 417687175 367580478 471411581 892964928 958901848 404186991 683227464 217255351 816096570 6413257 202548635 487092283 733845086 401568425 605585293 910716895 976684198 653928366 805785899 243077149 379121200 512573240 961460076 168314232 413358714 722552278 931024011 947010152 993349493 67679423 461375217 158332646 621825803 167043406 635653336 544113502 621108812 774095099 784796469 310272137 515879224 594763513 638386412 677672573 865838806 531572243 969149478 788903870 884643898 19817360 725311557 612648547 885075380 597845323 714065268 879132537 896102346 820258155 980033995 877999707 938564966 467411744 626486041 941748245 998020090 418700523 543116802 935294238 957628578 773070588 901551758 973958152 998215872 440524836 743984696 149034156 745901354 355889616 509621905 783959843 904999491 122543758 711677599 375636145 510495109 139132284 615768203 70577070 550691860 265512063 964741286 752897115 838790232 458031418 870301684 331923447 340442744 927073789 950639098 860701724 934884801 992317691 998179630 964006429 972284499 964157991 990749225 782400346 849288141 877243842 994141054 356397251 386030612 923848564 982735445 504721489 934937042 867968472 891725055 170456941 356171728 865812596 891603952 436694382 759613331 698019682 766537417 107887843 204973964 861978087 908130964 768756273 813062492 241507942 324105965 409691719 426956830 912029541 992690719 245875293 699793462 402535292 733501099 520180907 813731693 895119377 947838161 422829503 624222669 852063875 910318410 733578497 766432556 700318293 802408348 118780577 445293610 520025615 865763211 824307682 946004214 792826975 837467661 356888180 937439149 99424367 922984491 738520623 857639426 121261841 621111688 137902340 553542780 411495918 483537072 723967770 810397760 43806199 184553698 978207148 997371864 151817610 359499230 194243160 833681857 336977911 594782832 934351838 972261317 862111670 933220759 250453640 715462956 948405470 987754354 255011585 831341637 122022285 817768800 227736750 875746759 367461534 707917623 552613371 553117195 449448973 771122343 194409069 763443369 855643267 900134542 735084119 764764439 834460163 837054318 478341338 622428866 855696209 905774731 513803554 578716715 561548660 919036998 833331940 952158026 86146901 316469826 896036983 938968150 100307147 968228829 95341809 986612483 493864684 561061896 505628327 955100389 362397894 539311854 558123928 780009533 862381786 884430259 72954050 237643642 764081958 835482721 563961823 959456672 549786023 994441734 979123680 987750365 63510943 605113344 632320135 866687777 122394599 780836764 979478453 988434307 22124323 159001077 760973863 955464169 75589920 151926271 634795951 877837793 418745288 516378830 625725812 739562813 639105078 694242864 491034658 880361277 594262419 666609541 892993484 936141392 740929376 860081770 29004742 877971911 550362338 811938295 482852704 848093973 156138118 199990152 369730190 492852768 901839270 943301300 428067347 501424364 261722568 728489160 639538234 907568430 421564054 695579869 687840557 843186670 651161577 834168689 827098813 912733724 584364682 985791639 951514883 983424659 137691560 776173367 269647859 613796382 179093773 693791656 887938865 948912211 689527381 926579070 771399525 893469377 152142360 744620926 658533159 768538615 133365334 550069053 781521751 810157586 908815438 997624393 176066799 509676908 689070324 949918711 527242896 694295368 748060443 966891619 703301677 780801756 703520662 928797513 138787734 147620520 949825860 978488586 981501461 987629132 659405196 877778455 392755293 411603295 873590103 946715304 126462746 183069100 347185082 757489905 964409669 973775617 237727797 922270651 258022273 309485478 558395364 927120331 585408874 847911414 483913912 909356982 598046757 904746007 940924334 948559063 205412980 920726194 877483156 941552754 507598099 510092533 157992072 185737560 206047887 450127360 710285756 993737483 164423403 839338080 89902229 755539479 617617691 667270350 518485596 614947459 585081863 621487070 458400615 653351629 366099667 491098311 453709317 468580743 721618909 947782089 90457337 868224460 804947555 858200218 935779755 960666017 159928377 522337569 882547535 963195253 140404056 614334974 790349173 865079013 537361698 671119156 432450393 438867921 200328589 303865929 200665748 778610280 511434374 722330094 231190427 985086342 41435167 856621926 13767084 232563590 829527454 842639152 283086047 595179040 821424897 902657603 626027691 711720733 521085091 565397809 958185072 999127369 76818552 195173537 9594063 970320911 312440131 876603580 240420886 702528826 454972952 841544565 772263272 846966034 643708195 961840240 706077799 941852112 661773847 799123192 165024287 203819989 531491164 580278471 680922277 904370871 213136257 462654077 264742832 432076483 504925495 880121804 89081679 224606305 909754077 938904122 826845505 859161607 192685786 416423744 941406646 941669509 378000488 823488773 215640782 682776621 723062681 958859558 824603850 943559260 963717981 988165060 520197794 727268684 583124111 782218930 532141811 661963479 121363551 912299295 925754583 989667735 142512857 284660763 695104290 891289794 992719548 992938921 234422250 240776096 902620883 921519196 884665472 960853825 547839776 909303021 959787193 999949524 307242307 998719894 143804160 771738074 249832542 352496182 310187735 677960175 484068386 789912137 440211502 717814400 343825236 668302448 692357298 743573635 569084908 927250845 933911751 989774245 720182329 888515606 80572390 288682173 113320315 564594706 121091963 381626659 507189159 775831837 329193858 862812245 739912476 839729056 658054800 776854137 400231607 830473222 972870309 976520493 629083047 723879995 587110500 611091128 856429668 987457422 803491940 833005700 781641682 836699309 881816276 997449910 600630436 775599650 544126182 906053825 202338575 217835200 667764964 752521002 572882544 614529224 794749106 800085396 120365424 589983315 876641443 979086671 10841481 621319509 124517599 838979771 896171119 952357656 186587292 799086262 649877506 799591890 890703902 987681820 626897847 661135976 252127528 367484710 616444970 683055014 576776014 766363898 127417957 362635215 58020549 309526199 163320351 650370476 43400527 656593623 337821529 560918390 485083748 538140585 852718393 990949743 944990904 965121549 309634823 765270134 788460355 895342370 12497875 933008917 408705401 937322253 84423773 166448589 126475049 556457799 533736673 937772666 577692104 862656832 127408892 883786117 12685962 105156093 914756189 978269511 22850990 514094964 685425595 694682449 889375506 947286592 213930508 313209267 381190336 493548944 765188579 804013896 960283519 975118683 112548383 473760142 945635257 947203200 398668824 916784043 870081254 895530589 701612403 840039106 468508647 589198975 959611837 993502583 46930881 215563598 110527286 386139483 529868611 566452725 307519781 690274357 877091241 923076972 888028971 955360018 942582842 965691936 671725831 977566586 825657929 829934924 771582157 896131741 506336041 683585781 229269636 700007600 383524905 769324376 459312767 595258419 423516518 533771461 157842062 722334784 970105211 988723561 718806702 858226865 743150591 775098457 585388455 882202009 820501034 964936276 716816956 751242280 563973620 980023066 598218542 713036557 521969099 546230533 772401198 780653760 231978859 484879461 704048552 927676727 36616723 569759881 414377523 829280043 618526746 911039288 936473814 980731925 33679704 290488142 818887594 959541482 928936326 930613232 865936277 998979068 841617224 968557776 565445170 813742309 378415005 787599829 235264554 885722905 8640147 217302411 244015627 327749272 545748894 673731349 305527941 835619320 116175166 628773776 544884140 931266457 24138337 289476221 308339640 966086155 130028788 890515499 415019702 967161106 958204708 977504617 817964128 874369763 952870053 956475392 914451484 972718060 517556612 955849698 642823911 907241114 341780035 893240004 862366904 971855633 364165553 545602929 642509412 796275363 8865593 956740401 250969519 746801438 291549443 663149861 349869142 743302536 924058909 967257746 301495841 309143833 155463658 797223116 330085988 659248935 28398341 501190767 756611770 890964404 206521274 556987271 821981763 823158143 67925163 166146286 319638280 781961018 82050301 615603420 136714534 593352429 392817950 732737917 143919694 706958439 558285698 647650488 443961975 946069848 25085903 970202961 131120560 500620182 617237534 999717845 805272470 937608845 447704749 995103552 506919674 911600413 583646220 966097478 893930774 927694757 145508377 922165738 634087435 842483424 124662526 148585802 476582302 940073794 526558829 682315774 14408335 138288966 491286502 625320878 171572297 756492110 359883008 855098327 453299493 665179014 484871257 682626214 557635805 878282993 860587469 906317601 754296652 907466615 708336340 920519054 91774476 611478739 296191490 695104623 213784926 544172713 134212262 604222021 35492554 250965242 710372908 841312675 172358010 601552969 294650608 370597939 205400165 642614028 857786642 977904985 11492404 793167544 331995454 842561635 938350048 971887648 420813396 759659367 160207622 615893875 131501543 287927879 190810669 331683264 232508034 513746552 315124186 905023755 888163684 926206898 552768491 736548857 473743428 583570548 361049749 582093688 946304705 980112282 479338115 892922404 262783328 557430985 265521368 879369211 534127984 612105740 514042187 596385529 600895886 907211067 397004141 842563678 45077115 444410738 221523823 507429619 568729769 852457678 543736564 587316756 316713257 329736279 256092098 790192922 131492712 308748192 251854512 833403180 840800029 895552514 58247428 348005504 679026439 895471655 653614176 841604531 844195107 980385838 352316022 757009622 164597621 846259073 320081212 645229873 435709119 683949090 629083609 774670928 397031988 764211374 667797009 877430839 182739732 888078619 127639496 977281948 226795954 949783264 98768250 986896640 617703450 719134885 317075331 943314589 135005879 610155404 218389169 326718691 965631475 993050568 518111979 809990216 692224867 934535978 95160201 479995384 653330859 752599396 197928586 920405149 665268421 737619763 535018552 814610526 636410269 880925944 168956895 551462254 161831380 840941000 824651357 871282038 480994090 486922731 504607302 709528266 74866087 780468040 646916059 808346811 710573454 946206018 235524397 612950610 643813788 931522749 563289432 671171510 274529753 426704571 632546517 779193758 309774423 690051319 418248650 571062313 148810132 614427675 525841774 971640977 486552872 826852443 939119353 980370569 265941667 953524551 512264216 593544348 808122209 981307699 145769491 250899809 19234554 155601103 780315714 882553858 148633199 990926578 464203949 746099605 198232080 669320001 75006366 344673192 482458350 974239586 472939580 638171189 661726319 986822532 171036922 630250098 203491165 457524032 153998132 179876830 260671368 951731321 827646921 899494647 382890608 749756936 44419764 387591886 211402255 437384058 534365975 922679169 270403130 314120493 638596841 972183034 819066965 836381031 46335706 639030334 270529508 995557347 51263738 528810085 706461356 930697402 627510750 922970006 739462261 847022583 92078480 407870508 675195962 979148175 325629862 862391676 961450758 989393061 811744938 947186629 678521868 708512515 587543100 878224054 987943976 989297828 519957107 704378363 272957204 660251423 923260411 988433518 436161795 495148838 351889696 989108543 577640036 624658801 772911863 981761304 431637112 480882332 866790109 977018353 961082248 970085861 975506110 981331005 127729692 698948812 769962562 958323451 686921038 812876030 20904974 106754132 863631421 987729835 693141535 996812870 878139444 960707319 190763323 998964847 247130173 789651041 26271765 136747409 232099381 593261091 561669237 585624248 219603256 400293854 900153842 943593561 669397479 926419899 506621927 903708958 416116632 712003598 942910954 975332887 30366210 310260019 156960334 872591241 214396731 418481556 824092478 892435137 537090557 913451141 514980918 955134202 174812012 477211644 993860267 995032527 209370973 792611835 865141283 985063825 100561618 802073861 551566333 805243717 556916719 781987630 790532625 999543913 209480200 605429443 648459132 981944933 98706722 540589656 652152517 978567691 696053963 937044264 506048243 640788843 487081875 837547840 713684387 907385151 55322448 595287691 259204010 268184632 727391661 731420704 595416457 946883651 471865510 599804946 988705505 990902927 803317556 984370974 422765547 854871817 150915992 333505167 471591216 678682693 208379309 934010440 316458779 449487611 178238717 441317428 382685163 589347486 988538445 995695808 294252713 461563413 803292258 845644191 90725326 728667061 12540880 357946929 141988610 309306353 490789908 851811979 84013820 821786829 41493205 222668741 948159741 958286377 990728632 997060097 801528803 983606378 422708399 949724029 964157 361940028 746905113 832656347 639128617 797713662 998294532 999998293 336682110 394209597 409891584 784380070 280545509 874568257 616985592 644505944 116075519 278345426 47677391 259542922 426579816 484200109 351652711 972075077 328234370 569033349 668589770 857317187 344115585 985585451 607310612 859177873 120145768 954500021 12020317 275917497 724267355 989781215 335306593 668667891 172661524 904910300 241538037 607160321 949180006 982705964 250203650 952009946 232355727 240599247 844577929 994125887 317670350 968555722 737678329 773787084 296935906 459247835 499833785 805170925 958885699 983440743 50928701 337630906 409738963 944144586 10346155 741594141 387037795 887953507 589499192 810932152 160612693 749303668 987561574 999702115 453917211 925536991 391393712 630988441 249251922 664871314 247528882 625057167 443410552 777756951 745759479 846589154 354542997 825688678 177404939 888012797 776695466 821032538 248790757 881861962 218054446 882685231 520931175 625729194 382313676 432084432 115552131 276734647 747756220 837565233 974572680 984077556 441502780 848810403 468192925 774826666 968729893 999366911 794596135 998885317 658281470 953217631 43905231 357840463 841941822 873841104 557595968 827872672 561262641 771084628 18846114 560385107 35367013 762148721 583058912 858600145 757495017 928489090 428169675 470032611 459290354 638968974 720067442 723023538 779900078 880974297 677650147 713901542 957843465 976588222 192861843 460531578 404513477 960283205 978685611 984080739 591563903 989973337 549706657 907465728 983048127 989662688 398385006 692153033 606961751 936354414 101220619 503764686 633051114 760128097 508557605 835720784 504438451 656576591 941436590 975353691 709313473 889859099 67540674 850102481 317393434 980462059 503766838 589585685 201584433 907212017 514762875 927614830 212061361 940948035 875523029 882585272 424069756 531965281 494020364 516011636 245935846 860808223 125926559 594337357 393652685 675849245 710736126 733620621 183592930 757010797 354458142 458303397 416199882 733178173 428201377 833867393 616661502 829366381 367352187 679989815 829302717 997582166 544151136 624709171 780994879 951383101 841944088 863879750 200130420 920115924 907612591 973360122 162598253 902947262 101792390 384706537 647973897 686237770 126400326 676684985 854512919 948223528 40846822 850131449 381209623 402166320 731163310 859279268 523376364 737191347 182990657 947759279 638723246 836713609 199204189 357860982 403566591 711782174 348801597 489721264 78486737 975210433 597559153 798358256 10740505 335701027 230266787 303720166 215410006 411485806 924533574 950681606 712572904 959746992 523400044 889085603 6733266 570454142 106798059 568632262 352989820 681574051 862730100 949635154 57988079 318806727 116957595 623267163 769990969 956303455 197979532 676297303 681113444 959459878 102229312 512879636 979300657 992797810 509092664 948651276 78823374 174536474 301401838 494747522 71604140 337017662 634719005 694196373 777924593 879465579 531628393 807835587 100021449 790873555 281674975 560468147 803942687 858114344 20632743 455262324 353930905 981991147 438127284 999379327 98154266 216299891 990411909 997791695 430057238 833802469 319055408 975647084 276211514 501392230 730019839 880599691 972333086 976985922 73080716 622650065 239196021 863536600 894612610 970018248 828679501 965853280 40556623 960431538 906018877 957180091 307059311 779376753 197229240 979631776 654682004 789306498 262409702 876358067 942526392 966741880 297773740 797113076 976288677 996108109 982279074 984366667 474148743 962711869 887602495 995793763 684146101 796809609 252096404 512557188 556857460 644028901 774824247 876703728 803876895 969358028 960946174 998607126 864880996 985789198 148469956 478582485 917343384 946921800 857708449 950501077 890086022 995108147 342677333 433558246 687274059 830355580 225335835 491693562 131234799 618537284 233254388 592676794 681474252 904346458 753035004 947166439 356459675 761038000 878967674 924256766 562315758 601105525 970263562 982933400 34802773 87136058 95854266 330168762 482417655 517981021 487237639 884241147 597504742 939859479 331205051 738576863 492397667 609701677 948096584 976738536 421619113 720141656 187942946 272606504 790972802 826971046 211606206 891856546 501896162 622856053 396096493 976828777 601316021 790395182 692912181 866789761 66194693 947295197 972034025 979619641 774788070 783758346 520123925 557504226 313988959 703606293 808087591 856439009 101648356 604047870 643553663 963822044 397380600 634975409 116036577 666291607 221419733 714361495 143489028 942460685 21736053 180336502 422312234 609644968 607811453 684187460 161575236 909309609 129227154 155446601 571147085 984935474 183294715 440751666 321745476 861603240 921646385 957712397 765118888 814306608 333609876 505399368 248628925 543919417 647600743 864795311 825155886 920660662 845374565 993070778 352610526 985990347 65717959 588124442 485340683 799421434 4075144 861966349 278691417 389127614 922221963 959147706 746711813 756503531 917663849 974168572 250980834 419713555 394260354 981954172 478392240 767607905 77756510 672920056 703374352 995308011 942823573 981178813 99468850 729668613 79018989 211424613 166651755 283022210 906188403 934472867 402084446 811424727 644441515 988566018 371174673 656734209 756614789 984215054 764746685 810073258 706830564 745320054 297857924 909248251 665085086 755641348 953960009 998168525 18086050 466097064 477185606 733994626 836741228 920263125 647007154 992400589 706300617 888124140 610714194 643354791 449026923 836962272 5004960 817205617 289517997 502766479 768751041 808361618 483875550 706278992 850787929 898737874 982324243 984024869 236466472 402397462 311814417 652521247 197530268 846487020 302839010 704482365 303332335 869170325 437707104 440097586 737298972 766145506 577446261 961620012 180239773 657924957 87824649 563148889 301103840 417710853 94307756 401711169 234467747 729154539 421527195 585283223 380114102 671067390 346059550 558090230 719986018 859116422 546821584 755656520 467953404 874631533 27456261 768579161 403376263 828425161 450059811 708615921 583055150 584689088 757163312 978729303 480278580 787534588 721470343 960366022 222505339 560341767 177250439 523608277 56504908 797021157 78741152 777188957 550624660 892761372 368913001 873795860 291039285 319959440 570599387 582625845 621005196 953423397 238459993 539126497 272250503 546449149 704776819 924502426 510603395 916713432 451789435 576302396 979185734 993482697 78378837 712605537 894660987 899463865 629779063 746194113 902113678 961930031 23844157 527889810 243053118 974957181 648799966 677020474 422791367 785758410 542532294 553833836 497269135 633016731 138501615 357353586 721625484 782114908 116983191 852022472 497162870 792310364 86656296 579051093 382507820 839355973 176299211 299904122 827677120 910161825 412409487 859933632 963110054 987894953 523325660 617324822 493853609 888321188 901584227 904194180 308364801 947235846 403383576 543668900 460374800 637642296 398738658 616142270 12032880 973608980 885303210 944271943 231697231 522754270 175045883 870151393 640553355 852466540 788056826 817695558 747881246 769887217 475491304 638992709 978811512 991608572 899090613 920250134 799061991 906900488 961282784 970258296 262854110 470876139 735539111 743648952 750108520 947627524 959809163 964639376 427031766 434994888 2692144 337620894 51009491 687744893 793223380 936200629 539582521 971641919 626986541 896438766 241282942 378461262 657137004 810905163 595690253 655728469 873961230 992738437 229485986 951346152 410253606 444770125 208213226 279775117 810661194 988188198 64201436 282054279 991437372 991526807 898040992 908798049 78248614 854067731 949133996 983317601 218700554 859224215 224668065 689093923 236468448 570992004 170473959 353628963 684029477 718438850 526177752 571022690 258556464 433297542 14179316 44921463 430929585 662591585 305566543 417422071 122739986 192486702 35390057 329743210 156813927 167174906 904896516 938706850 224196737 374312418 637810703 674784021 655088575 984426141 735931513 807642125 405823489 689430696 758434499 877321747 208522476 894249287 982647805 996534405 220077770 431890983 695108025 963756073 699619596 864988417 852262970 930136260 699029769 832185784 661441411 666309800 200212943 330544263 687192318 868503032 505891258 968802229 141173107 591403658 90750969 916752287 109618655 923729830 514044556 953484943 451285359 736740808 882037960 951877777 39444287 49479885 766685448 782335154 947781658 993939186 538096487 801672118 815928752 954315031 58536516 924164376 812020692 908891120 207952721 730863406 999787785 999996119 558016794 928436577 376790893 562392597 990031505 997849397 116867939 145217944 427222654 685247331 178624905 402061820 453628575 545475898 814082474 964950950 686277309 912008212 44508761 403518612 717538168 933135800 259353002 330034545 809613646 922039232 924820065 946193494 285456608 615831448 198308415 424981624 700800605 785170795 488733202 708222635 975697439 987078985 124831852 478395713 463952344 548325893 809343587 836145955 299880016 547909166 193205947 704613537 732075211 898285493 943483997 993555996 191149400 695670194 949680695 996189604 146069852 287669416 562006708 725113696 435656050 679335957 271294589 918416900 572208198 956059246 409921861 494804755 674586790 964266577 187565149 561032431 169136212 334735632 118883313 716758386 422598645 472052888 701609349 964572797 689924762 756234811 967594165 972982154 423102417 686200134 214200136 963198082 37755814 936504760 529902492 831203166 655297521 851026453 426544824 980820392 378111851 660491790 957918960 972351828 211118463 355669193 499182512 649643630 678715133 765724749 237080278 790713463 970752276 998757971 805334895 888351666 274382699 416707510 683172531 921099893 811518718 924154031 319891410 748926191 602217900 909131873 336809637 996878816 542727487 604264497 938273945 950354172 675833152 923997713 623908314 660906095 632193979 848520843 510300398 827849700 711580246 766042503 825067362 843920767 145968201 153165649 813949699 939616295 692651739 786264380 919604352 982522179 873695346 925985928 946551071 986804108 569639803 623549805 748347608 867320978 660691802 801478205 614454284 759544998 170289073 766974599 107114658 111209839 269578392 450509999 444758190 934071948 386966863 904250154 551142085 813892116 593945613 982872209 582657887 755087291 678314886 792637725 584532778 716869529 111564532 338466091 646257528 950793978 496075719 832097075 391757868 658720358 123621063 497782617 464590322 933030903 468063666 872586421 126617502 678495087 939656476 951946961 656027292 896142679 630317965 635644480 160404542 813390000 303313229 742802419 511998540 735258683 894702643 943453419 140285164 808111429 759694046 808264225 529245857 971852783 874017768 977224848 745358454 812138992 1065637 577647003 67718119 161428448 676402076 952369377 639528535 654728878 83533704 493271783 586564123 825926410 162379069 573185126 924918326 947669206 951525228 988775659 886708887 981623634 482967618 756443292 282988675 526883653 441781528 717356205 10763557 19727294 820357081 935593889 205944263 740789511 967848307 994505099 367668732 368502018 891346121 931897263 140064406 854710057 295007573 449782402 442546404 713612674 843796360 989043454 532038553 904208700 39873089 874533421 952647603 981541358 951535577 953408237 542512700 796789855 985034866 998900167 700647485 766111437 508592430 719655315 418053238 499601045 842673736 925287477 752198669 778958841 695450786 966801253 345970303 390044462 569360901 712861749 61151498 677176579 503559918 866737598 755153252 981709826 365757087 615504846 991817601 995632694 247898887 852000345 161910237 726637770 672489291 787505414 325393362 658241471 910819337 918176230 462468232 513987095 692910985 710277320 487722853 602849111 884496899 905641317 664165699 695262382 427257966 973846648 964840219 968645613 211664026 751717521 917580656 928307334 941722347 952963798 70281279 873571929 427160283 592131762 773293449 841405930 249847240 734851561 300375471 322002807 546217638 746145970 510876243 612294808 568955262 584087074 467902584 772396847 786767009 836691546 857671827 935046392 894795420 925016085 727342233 840159688 421381288 504943574 251673818 572331881 627893051 865233400 318786576 655725402 61599086 800839878 49498330 546846123 573579725 888569175 865480707 865754968 115202492 324538783 407950070 529208705 947344595 993555020 198623266 929368655 32061380 68618023 937840323 999869966 675253677 930905888 738241748 851807370 375341963 792003460 757820569 970937087 655999228 979344533 314688027 471600215 407157579 891518716 519994800 640717172 646437234 931670595 551437410 686145027 373255305 649633043 735375701 840365931 599998007 824235848 970783330 974012466 735920321 829846825 961360376 976708078 583173740 927697659 427842553 612510097 857805840 922261618 481117864 662219160 368796124 377041420 222015466 674312187 508708668 876928538 751709553 991636390 665491019 842540785 423273518 457878681 30480970 558860974 848580018 976162933 746787051 937815603 694772965 844091374 261209877 934171193 66448265 751991807 464397142 489315243 853022217 955275708 881548262 918013001 42655173 371075598 730621633 844302168 366225099 382317609 296102785 927497424 454205287 587590777 774597236 873625953 419444641 618995746 137751220 639841128 646281652 977610996 386637048 414359677 725129686 740074187 278983240 492188992 864762270 949796549 19615581 91777512 643496736 894918606 596490121 717062501 139809225 887749279 467644043 660025418 389809620 723481088 143329777 696317325 480541957 797613026 23083392 70489096 589873969 763246468 466462954 724778549 395253351 621010642 863474602 927628179 814979700 934464809 666238794 703359017 411955790 982263133 188891446 633390543 862142157 958067173 27684528 887945110 795274699 960115035 636699386 701255468 797960436 965658726 149472857 722559779 845670808 903764895 408629248 590608422 483700776 864280256 370888746 926209994 432008867 767081111 481635044 589723410 480198840 753584988 795102106 958237332 585870796 995555878 449504246 963501679 527872486 764348955 51106483 161963881 671798452 743601958 186335594 695410525 654591372 858849295 246246371 763224166 547344960 815134555 964236676 971191257 78441012 219265712 431870422 823011682 676829692 828640907 872427132 944079753 666172235 930910386 880962786 881535613 719168631 934658071 159007712 503800174 642910667 776290874 875096681 929391995 810736581 925263342 418723707 496455182 167269877 193130018 670996045 760513791 29838768 662955455 555010031 873325604 922684386 931007034 770453769 829404649 786954871 824438806 847467253 933708174 451380994 759154419 254587948 998517968 365542271 632125442 362053118 995334622 236110323 568282393 787419617 904767671 360250585 365335570 612792069 864359987 972660582 985979337 753991487 839212465 274484597 808787024 381894603 905960322 957060408 987194143 252595689 649945660 214149392 311573018 514064628 782947978 843787938 975826663 197931528 412004075 988664861 988955109 370144037 677122691 299750538 624303820 959778555 990259604 815626387 873280276 887606809 897833898 860825212 883304713 929320763 938032438 911401161 993543142 328952126 587338429 814756530 896880653 699895456 769281046 377320546 725720959 753227386 991065496 10473222 224268852 577327729 813567742 312974481 471861925 179660070 988048349 863383332 997871880 438540679 949985141 706317966 759285454 169852910 629653241 350452049 726180490 937543469 942885603 202945943 542953525 614284805 676844211 232508029 947593161 495999952 773159508 251516971 612355190 718125948 860217047 361163529 855084736 110468634 706330892 975568309 999007267 563333696 670762910 560449521 786483455 95534346 246193242 51345999 151410684 780311549 975918777 691170681 970954680 791964922 980276028 288898994 377639344 48984418 442137961 595858487 600782874 240751728 382418870 500276378 855207066 49817152 271037907 585708701 640501897 714090973 869240621 587827000 873367590 941910598 995022225 899064568 929644423 15592259 174137508 302927851 714383223 569950480 824180017 14808080 562708783 336081323 608476487 40532117 308003631 627153176 669679896 260009189 976365200 737181314 935496622 519069879 555663042 59641067 596522258 80478912 825683547 468325819 846602569 983308753 992478370 554230151 968646134 297922669 543461772 444979481 876368827 391207538 818033091 946831603 987020711 693595672 710256062 750824634 977307839 478859711 568991867 993847876 999208100 527960911 545610239 264669260 688961903 33788750 775814800 298205603 509067384 334123034 746513526 931706241 951251244 339149695 402008579 110000476 369544691 272694680 604711558 845753006 864023321 351616416 793130198 914855836 972221205 127419787 457177060 495626310 631553444 504888207 763098047 613291914 683192103 248003804 843330311 284416851 352358788 735590640 801625272 688183144 968352871 593470047 844587774 794719143 999814347 825765763 871236939 477205218 609252995 702094579 954496032 879264692 939396600 741485301 822788335 52686733 508561491 445883984 961614142 192795114 243090987 52162501 587346248 665375255 932619053 218081746 704973210 358812866 399367323 516799704 993171692 963112649 998472015 213970207 259995445 718627509 878068646 44470342 632004798 267728020 467331015 973481501 994890635 367935980 542866107 933235503 957684184 631997918 706816454 700433660 724341313 813054029 961224364 533984625 682934703 815669382 973832390 735049086 807079967 410973319 835316035 702127187 979342344 935477345 980164620 550545201 682588966 561239608 684480687 691514948 865331257 240783306 758616169 227265599 546450353 429531224 676760078 454329270 601701305 525587471 736119516 529585704 910701449 118650662 664309361 952985641 979198551 893588134 951370952 773204003 969340740 123911228 125004632 233372331 365061480 37538811 424643595 313489648 830415186 912993038 987858455 653312793 699753321 441596319 533370007 283160813 454643719 706099353 758353165 978431075 997827896 374648432 768686643 252507344 326697043 206601431 345594252 182414072 971459588 923328132 937374445 904801397 953767500 30757511 698150895 344609401 490486664 482421090 958876093 5166290 914342735 337904323 450499925 874159624 934895890 317983162 780629447 17837929 871826820 80438033 704511307 564176220 677926986 25548124 239957202 786665033 812148007 986734915 992130118 831161507 898838032 465601172 493220077 625221989 695616351 864293899 874460706 906495240 951853995 840331698 977765259 397618984 794141892 276122346 708869024 872853909 899763776 202046237 723092429 811663439 965489146 516882111 941055695 958990089 973934044 697015653 848082870 684013562 921214429 203196167 264258827 23113562 109016977 727552780 846398225 729407472 989058702 304544147 811813212 99756056 241074970 475089585 662304805 898556091 989932857 870610988 946698727 933756906 956679160 242193814 751436937 626179905 760342415 12927409 341926596 301131909 588223820 776534068 984282351 812326920 927883584 763314745 970585102 630599484 653810804 451567540 708104687 331677975 604540889 537016434 819900406 855589796 916091125 276221696 435603326 76012334 787080210 44640995 85604206 149047568 781033998 167599755 715092806 742524716 949390693 101465716 167968559 787145441 853237082 915761921 989584001 726671766 814944803 868847849 877438277 999278257 999420023 701735053 726785296 541246658 991563240 489081977 518388624 237813989 948770801 480932913 570315112 117856487 830194207 967054764 995400255 429819713 492240401 585654548 708010667 670038940 788307368 155371937 196375238 83497788 478838412 411832364 484147462 596629917 992244911 779953988 881396295 367700336 453029462 437978695 998965954 868563401 960818490 816198062 914260309 854669628 963797318 962158245 997729965 20208689 682855199 483153809 979213121 8321265 984673191 828318011 840170943 537387936 906847390 985061059 996513495 699819036 959946829 208401248 605126407 587401829 940457093 459339463 613699562 126605217 855763975 944921219 989147057 743810475 914555759 148947176 372489899 366274192 511716804 975973416 978234750 553966607 946605155 212506309 886873632 256699061 347829836 339169375 671585792 101304270 877860210 12124337 41792598 682864712 920809967 1970303 215370803 253209498 339343567 75890324 259541942 178042173 947841183 841225868 848174186 46892453 841901970 513173344 954428032 54309179 274885585 332942415 605383142 9928659 632949791 864225842 902830580 143577329 665157332 252015629 995300749 500990970 921290521 716033723 923708492 409877039 953157711 214033980 253180766 786801584 877520988 712407971 731408309 979881308 999836461 272301723 452620170 688344058 819466038 887129764 925604530 204552182 940778283 218837259 421641933 788785389 987221716 792294835 860267859 432419478 962835493 349034908 746755212 537866961 594076956 290363379 648931689 503015177 963217069 243992425 720863139 700082392 892415626 550716851 723185570 823492981 884734211 875706479 876719219 219250522 387225289 562098181 665513200 674716676 752223938 264584567 570878134 155862391 587600922 360043529 456944441 900123286 904112116 654494282 866349843 776630237 832186932 620235730 704455053 655133168 665148687 340769708 343110493 53228239 283065937 381091558 456457825 7801158 27318173 313320967 678784401 178124788 239721613 473776830 839960212 946192760 968553835 237382830 995292312 27535154 330729977 62308000 131580112 375930304 753282055 999249463 999673503 882894499 896818553 921639260 975263307 851111098 879413635 384410346 756896431 200649057 634473367 456808942 630978987 41531960 408514238 965166894 986693290 737438671 903191934 295447110 980680808 926718861 970675259 747598925 843305546 883179174 981988646 829118836 831398598 777154644 990831012 480373309 811058145 811848587 853286527 173331643 488558280 25538387 842016776 247232302 654792881 151635153 266721325 378904363 381235548 829034580 869084422 71758035 143344330 481213776 918568472 230245002 695379162 297275614 429912455 748551321 879474002 663571825 856038302 182706517 484716632 765524292 876713780 640745057 733402856 575508051 666818539 661165789 669785473 933243863 977224825 623050186 697259388 815341561 930104545 564509593 732623709 145515124 430221730 917489577 929201041 52767109 877230717 18716008 859677107 146168081 470654123 933149660 986795245 511589114 924387819 240894994 479345156 544591267 971168265 734826483 827840651 373024018 883427784 941987867 959074705 455798652 817554815 32852672 706943846 562937898 813592083 541764504 739305892 545069186 979350117 12118684 14690325 64264815 317076658 467871679 702348117 122239762 620409014 438289595 601714534 79296894 610908017 110194887 207141341 129044800 916960047 29238765 121934550 847191820 974365547 136586161 580551441 473381276 862372675 597972966 905551339 490370914 909816166 238519446 465351117 789260208 808825786 662068578 824587169 245912935 570357839 33373495 792881727 29780275 256941518 989304966 995386008 251222429 704436220 781032325 800554641 453361870 804089455 10168543 23068533 133997179 621625996 543473074 781064366 697989526 743350899 994940377 998729013 19531185 230349909 638284437 757319976 995113144 998560148 124292476 217050160 926659612 946138933 351500921 576952098 232934886 380334733 70643782 978712851 412226194 903397665 920360225 964259701 820960874 991786253 316113791 833900607 630401844 892301082 729812679 989428592 960950858 973751800 461596002 585868233 971594676 985582581 484362315 949284033 546416799 624723063 340808471 810100669 673632174 807817764 762861013 916601154 788931184 843252502 118842733 237702150 92676138 682634563 963714783 972325072 347644004 573407258 949806609 997680323 7135985 927161424 724676884 946290747 851730316 859280437 479857112 594189817 276953408 666624395 230689963 717646174 47485412 435728609 381926101 746544739 611340085 723286131 261162594 483708073 400851891 849446313 554712783 752436794 268019143 642881430 804715106 975887834 526352844 743664895 947395778 947640430 282952378 434703753 667813938 706305581 643660986 663661995 599488018 671238673 895435774 930716695 15292091 41898100 750728118 770695979 134507348 719599594 450156456 695600674 5963864 675299076 954269935 977986796 680364203 970658293 191373657 921470104 280103794 650112759 809366081 840042171 157771816 411469044 345844408 736759068 493291665 922651142 118956443 147339004 512149321 860552957 772660894 961686948 208395643 688911715 50041498 318907339 340347081 475392636 334511332 990583060 565943003 813404973 205139389 533722965 668281755 994302024 778324901 793098627 193970087 598473339 577990822 735767116 316977896 353898860 548669175 562662914 448544596 501628130 697685321 866218259 256145933 433876327 160530119 469329076 246078185 322301199 148990003 214594412 843639741 852529015 464027640 954725348 561067902 870181667 540390588 914892616 330969844 376752698 349012757 839844675 502046126 568930229 811739201 887558879 642117957 816726271 120078872 902891430 100828220 743381870 910829190 921049411 874826707 911487094 574645346 951705677 202432043 788008870 950568087 990237255 914533216 917243253 998505692 999508862 751661795 870944770 723042741 942413505 373929745 625101866 403382708 561154754 408904144 797609333 843272477 950705919 66027997 330843587 422517156 693188354 57642829 311397360 301816564 828362743 535525415 613935171 104701264 736073288 925571135 957650306 248193816 332262081 335045377 476590289 795156451 890711249 10438024 980635660 343672517 495663391 426773943 898425877 699101059 856412025 266013982 416572559 501336222 755277593 71037262 232791421 426421954 869761555 926871617 969606473 692851542 699377280 972591598 989182702 598924634 745610708 430451272 882681381 477438869 674190342 481673125 952326401 581232101 828674563 491161090 660408786 463989399 616106550 691257022 966722731 787138361 852960099 365859874 418771741 867437843 970104086 82889848 297360096 432241832 909983966 465993257 477411088 254591688 345900329 14693897 458234031 543943574 620357642 527989219 661148539 783371542 930760756 227509389 932622654 214972353 702673879 720475585 849330478 823759371 943448503 767704422 980501047 449216518 452240094 692904544 903078461 21895949 286965531 387877687 954464352 912486735 962083260 222214460 424634526 349322178 680965994 648286338 856095636 802409521 939503309 456071948 738122822 325424455 401821856 495077621 994794995 222148147 738890373 233972626 643440811 845533900 896746340 540922843 828360984 153518985 359088364 457966520 605748992 799467286 891474614 109092902 737843972 389653118 799248124 413723059 500158280 16456316 243622545 655329073 781135888 757762836 894687756 392066882 562131487 893553916 903752466 414893348 948293762 48258162 861629554 733520103 771251793 685045231 826815673 75104969 767712202 480566766 526889107 679633083 952645941 795461188 948658897 804596905 869385176 116379408 154816703 603344701 627633817 341743992 791573236 343721032 422995747 761039528 988167463 523435173 920400814 467523534 874803127 669644773 926029369 927823550 969116371 59303656 391797013 179028948 640847025 776653958 967520115 144749986 215733895 841780603 942380743 687721348 787372466 278008408 832334264 61983734 530523289 162998243 662433705 130603683 469628713 440930443 915513059 755376749 891009343 14056785 308960764 366080016 998102559 580291264 773057865 288265804 601211894 120706929 797751508 48601527 132872491 822269939 840309765 7844627 488609617 83273707 313879304 543490436 795477224 908528784 946861732 891840426 970081080 975246160 998341681 428987100 848841910 142342105 605092418 508777061 997549989 284517886 486713599 557957357 845164563 915898208 954711286 354492674 770734424 151419817 603614893 676876476 755296542 891266311 984440073 793115650 843714869 105833873 706327874 682480293 738279589 191018022 445575564 143592160 785434439 261066302 654660027 417510464 682155323 248792710 828402262 304241416 587468977 979935438 988347299 416816256 710933704 684852999 922493927 175532169 826291531 17831871 727084952 895154623 969273133 221635324 656832503 9778652 369771188 276115701 371736080 45236904 122942524 324587241 800729542 459494934 613257299 72881467 769865749 699206845 993855105 749685260 815307135 648069399 671356788 141105863 215372884 550558188 634642340 344178937 747686249 206700330 477445376 96215562 608404711 296773141 353192861 419008050 650288985 75917929 345528798 103821078 610317417 843440668 861024552 331015696 774633548 928217018 940689756 870426776 931017128 340042915 431322625 205890205 734164510 338347182 928053381 353343054 688533977 95481407 132233970 961314059 992605518 226826495 995131635 784162034 842734437 906123737 935866124 873141429 906668686 939988770 989430952 82770526 973874278 924562716 972628372 482779312 933592101 764437885 905856338 223724461 491653328 875972589 902821125 81964437 303986338 894005191 983246337 740661616 850897307 603969194 805784521 129707637 449303635 971861534 980953480 854069080 980934113 884460674 979893729 305683419 442225415 547011412 711972008 711167454 811733077 263454785 591321418 453272939 537935010 544520545 610856649 193583630 674418551 209680149 970865146 627812688 961268317 16692099 569027972 428375147 999889233 493094680 994626838 115837207 623082519 370004730 478024768 26433479 841456071 948399326 962518928 135188993 875417684 733589138 893274272 133548159 239375139 758346636 787528988 314961202 765944008 285773800 490024321 199738382 717058241 749666301 802395605 560034224 720558794 71081318 172407452 29022621 755641148 906815437 992234251 352446438 824241891 629376786 908163689 754056394 884375627 444006587 461234708 880567503 941894344 59620399 925816379 952077586 979760451 985167749 995480651 608495772 616018527 377595604 427491587 828238502 981902718 152691266 647796036 571247170 859098283 949587373 960735590 140666271 704524844 937358127 993262015 376797409 862533188 829647381 834264939 991005190 993052402 414110568 923345991 640336420 897596442 450088307 569556479 78394680 953638765 559264716 663262084 374637843 401377813 183441102 734318817 641707402 956230394 846727357 890673187 794625155 920277406 388812968 888715424 786200795 989025557 429301798 615136526 427535630 664768883 841517404 973987857 882506693 975191115 801175004 859276479 957331431 984886868 880790012 940941912 589201050 741169328 119084951 332197283 433430803 995086113 393702322 412548438 626978080 870312867 416366123 671492581 87639229 636778142 134442190 178182895 751462158 874860531 658612490 893561385 371433159 569215583 521864616 771127651 882574508 950300421 763472669 773426019 460100436 800797586 588616163 871875378 589377001 799336309 577377426 581152421 894929731 919479408 874785108 923258825 147270963 548778336 474646032 616918996 95036733 656939802 64461523 613244161 255814218 311758642 895625995 983779188 413718459 927291039 254385448 768250420 53075237 255911552 377385016 858952798 543395918 721836724 391929573 571188101 911101701 929453177 356343697 791068570 445881041 916939125 702189871 782052932 618519519 991680190 278393934 468942170 82090474 956809451 931110381 946789730 226439736 758923483 291687644 987026333 445189967 729144328 62464300 557229836 123506608 865869804 377730739 902414141 298412111 876100857 476865916 683104268 205290272 758827945 416787655 919506674 81010754 143142416 39403522 377026519 81486480 413669890 745537152 961722324 691452397 909421502 903655755 907927156 30946856 133954189 328225146 780571718 485126961 630773661 263674917 386362976 331371268 422245682 657396203 878454946 228094949 285797713 796895913 822176058 980637090 982461075 583530265 630375096 344237731 957361585 2622691 627641281 266257857 314232993 470407 474883267 298515669 944764434 897568777 906643554 871390181 977178742 622653196 715460206 52912723 869892962 807299533 990074038 389621548 570732593 879820596 912385662 160077654 597755221 155789537 356651872 186234382 455278965 707185278 746244609 243296726 662228911 672906254 699635838 740157985 905833122 209094719 924199078 760077875 984571337 698702560 716514319 164817274 914204058 49267789 52567816 298671447 355769712 457483750 761537245 789930522 861976978 858943166 884541157 289435670 898507171 892712211 914575010 836357901 903397281 698784189 900797233 915937312 927479045 982096742 994237263 908834262 951126905 669648999 839871381 791445245 861018954 439826502 577290278 190582318 394552375 630937703 996673813 906582999 974897425 9144591 229839962 937583960 981566889 599769582 752725069 185900590 946956028 452839511 811744290 725675070 840109406 676557944 847501284 865765823 891326270 903966301 910374885 976082042 976093850 222242179 995740360 67989874 509593889 579301254 857265019 475074334 825654611 34151672 603621352 266519072 397257555 306818209 573787621 697600829 732307406 373000185 732519367 721588920 880214248 864772701 898748181 825267448 962155049 140223648 865110601 812789091 831140296 98446730 208720518 728642917 926066813 771683322 875581913 494933846 852537061 201126851 640436243 135783308 552170331 888567399 933660948 92558271 261372061 576854705 686772245 408502130 641808915 699463460 766194440 13439089 943036062 101218491 529448015 823306603 940861073 743499802 808818335 89340612 616632259 116213770 690288541 168964662 299390287 648443744 680067011 964148555 965034956 349843414 939570077 108861519 827024014 181385576 538321716 559183361 751684601 786507818 865205571 315538208 627548812 888360774 941684419 679523449 902138457 962399637 983427403 66712 966892494 14440447 109225575 584882176 726818610 841472773 876929959 181022123 837896584 717889538 886656887 975410626 988223849 136501043 976709465 535327942 673579224 677556599 855832884 684779461 778225376 132007936 178826325 497376211 950121955 946931271 995921417 336137470 973589377 808615321 921741950 625210403 713837412 432762709 566803116 274274714 403871197 641809158 740738372 66485876 120868574 170910336 975773706 893062653 909589489 199281713 960814212 64440520 349709982 14014598 104783037 205058094 674143198 398428236 805671654 486743858 691071260 221118322 341095920 780476348 873633779 933920332 960774635 795483713 954318663 96227009 280415171 16725126 555435112 812571012 831554053 975109007 983290728 711345747 852778313 614791033 879209240 753261447 901585873 572280819 963277664 984558507 989320820 168269308 440588121 23545530 61951454 238930230 682280851 449977973 579776966 885963563 976437050 918306158 920731367 134161904 278119089 424492954 585986892 608425862 622285883 629148531 665339707 491684210 647378717 253923434 810441699 660324266 789132946 412512379 937238122 58075338 684515546 212643663 904805899 841136018 902640514 596302664 634655621 520954963 751414140 630967887 674399406 22899946 579046056 477046513 730992640 59410953 418712639 528977536 847042316 530649509 820170836 625937093 798284108 204510890 249329431 776780134 857924157 998343289 999123718 344140943 779949894 48709311 595714765 445883193 885871203 310860709 571129724 106174718 332267552 830955254 884974153 506062047 862768452 459677431 940548958 89400387 898091626 216951552 355875136 414631576 615984849 896370155 998390534 400206990 424298556 527501648 818282744 460106832 558009915 801101632 842106970 583855088 649896293 867959187 979210625 252944296 909886732 382795291 608068552 431918583 584302452 289420546 818945500 569083029 672193276 605812740 823789327 258023210 930990379 892599857 905479374 675996758 991568548 525397376 995730300 619556147 633755508 375756571 739714726 950313109 999853156 701027659 910479292 806509001 984088442 874224353 913948792 741095127 810416089 295869972 868842711 219718881 747775774 611137412 937102980 537221577 863835562 724659429 970477530 800401015 838911627 620873409 701403584 532704250 923438351 197520792 877307105 188021895 675819851 204244424 319203495 578086417 674598924 82702099 672246839 566935514 927435578 350406892 744261887 8113490 423741577 620330649 874019508 66787824 941996758 7565166 866417156 832509976 913142400 255449099 983405829 35182668 402995087 199827078 401596716 769724242 946100058 849234173 982470929 686520402 784529319 669582410 941577370 632135446 940461828 577798789 834609757 37525344 507997778 814525881 966064024 737061697 777701157 241869442 596998337 959227784 963034169 253250936 775277977 90652238 295765274 305563742 328670570 266217729 575358169 640154720 989891832 228031627 604430912 347925394 762151263 464571654 723159024 808124882 999133433 732958877 806893569 373673556 515764275 834256685 874744617 353983116 805635848 918779881 954573760 179154658 845680316 819428384 969457812 862688935 976367935 136583829 991772566 211604408 840970307 894905999 973397727 635696852 827759704 643270741 925361307 179949433 246226905 581494326 933059053 536141127 591625992 564026165 966885644 821820226 945228739 711866654 968137211 510728857 561752492 707228592 877581320 440641211 639121532 45160330 641976436 599933433 704673286 486663516 900574031 741947 826311308 568245654 830365303 605224234 707752614 475442060 963711144 838755307 934359090 913748819 994641179 357227380 896167109 161285427 688212388 965904220 973016806 745162187 832111067 191256298 851694789 24745066 192108882 833253168 965190599 52758182 497974409 882620479 897498774 557496572 764838387 951498750 961723492 191425107 745882118 850959494 935757438 138213614 890767168 857622929 956338169 441843280 805608881 950127477 980050678 13641624 849038252 384606896 965303724 595642055 941369769 374145100 510812237 412788506 973334824 575018836 790924392 310273723 514026098 745728871 830746607 2521136 634541560 934912038 977950298 908841341 979218354 223732861 359664683 77019163 347446470 70858419 935712722 528295580 944980065 675353649 910799735 179984435 540343068 952714837 975864452 844638921 882473954 287136206 548493249 698323174 913517296 74876810 928531139 537236656 899351686 793539584 988224611 375258162 378132867 549692818 960190624 134910679 350891350 171867477 238586007 365940889 792821771 759825911 998568332 938783069 947284028 844581285 938323083 635740948 766485301 137117828 327949603 689534358 973017925 727239 39389565 393076504 583314190 461180759 947199805 729180982 904680999 774442934 951188495 201801279 906563140 871451810 923962173 390850841 499533586 934863119 976142593 529142337 595395469 687418111 735307228 196757902 695447528 115727937 588772851 194598785 483740534 933285825 954208287 928492129 974093912 724193708 907533966 48130473 893516762 890033116 975661460 258990262 642581449 605667126 890892814 798101825 834592289 595343654 842255959 150318767 408573583 402638295 460533070 877332014 950709105 357213980 634389970 20910726 295660017 276473843 435771575 996383331 997944046 842229959 935473704 806791848 957891421 474174056 831763738 438916455 936253359 304646455 838296307 964788625 975775378 237183461 245579164 354818282 404685409 126059930 666002020 495938428 920496905 114990204 603014647 30499208 190264877 685436135 921854758 510281472 666088957 560568960 582071099 616990531 950412953 863721270 905694513 136622394 504987662 139784414 572521171 40119080 141109563 636913309 960706103 160667826 784873224 722337403 903306904 179926968 773074741 189863032 386945167 895914156 955239234 698712892 806781657 232772603 620010993 559353450 874377426 944268671 981404083 589812037 672999009 929940092 952903082 965211193 966879085 873438444 936521815 301279973 796069433 949611164 980762247 180151471 350172603 756960910 799061327 633380852 701540699 485161752 631149179 702482141 733824538 841501776 965725709 149325842 974702411 585460466 659446375 395854741 593046011 793984123 949584448 465971660 978933134 427193395 963354682 267054319 603144851 803516570 813417326 681438595 757126264 34227080 403274368 809858215 862752335 535241733 711352957 160011016 300172746 260668595 568558436 428455510 432906379 374511452 923106148 309659513 542341668 749977445 906769381 670786164 998526518 571611256 832086890 763231298 912834559 242399311 743736053 67501028 627469370 913954107 959799497 275265608 918246204 308748784 880461611 105559566 444289148 85345831 159248741 849478835 984668946 146285032 429760315 232560970 699057292 843181868 911447652 561424547 569017101 978642641 982223652 607027692 906171218 156112402 654633112 109936144 405599815 11030826 542176383 554448349 755781897 356860736 766851858 57893715 223796073 543247233 845183288 418537994 587169528 584955675 754225049 349596636 951893404 170133141 326735827 616894383 685686080 400940464 770922022 728726417 996453455 133246788 271748314 365383273 843729153 523147393 824344383 952592070 966845182 626067886 820026772 395606205 891406022 883731663 992931642 783234247 946631590 475483443 604157604 985099251 985520480 740364305 759642406 698664915 902683578 169558546 247674631 675602551 856203803 6541832 21361330 54700592 911050781 99918204 879338579 102864418 120703253 94337075 560096707 746512219 988245603 821240098 991197720 452743886 522379841 984108798 988155897 171995759 191251862 13072253 608231361 628078370 717195505 371258681 839745762 271302674 541877075 352549512 440964804 249374430 506742149 608587660 875884969 786842932 819830305 513919128 991783168 14386 922332194 517497563 818243871 61907698 799602322 139298293 306275405 907960916 923141186 382103680 942374579 258750673 779345765 543767005 674822763 415076208 855790243 38260610 198239688 84629181 252213221 923202015 963811596 688527031 933428347 349899040 758937975 972685991 973651413 139530390 623582361 877566295 985450646 463810914 469101605 843169493 906915931 850767804 925329537 658641990 927275940 143826302 153939973 359112455 775560126 281382978 690460925 939250143 981186399 532357761 911243068 323980908 429644359 769295990 906987591 258608663 987592449 725797349 784956740 139263327 621955782 67726794 453784066 696708263 744704216 757643422 860773520 900062867 949064216 532645673 805304541 112939831 128194944 87803964 451070054 182239426 400389490 57768138 178197322 116558596 139156276 957421500 975554984 216968753 259448830 12582127 135441053 228268279 552438713 845108408 973295121 518342976 932400852 578085416 720161263 163233111 353061047 692801410 799891528 371390693 392630670 400890617 977252492 899832051 902663957 368915347 837618346 897660056 988965863 563911406 580600527 354786489 718114582 748167331 981529133 681254151 914506039 407119382 808258833 589504216 636047392 639611389 720739291 823408660 945779921 468068734 757163476 270426700 966955388 462766660 884848292 813940269 843302741 147087144 242889649 480954337 915776119 175919503 645797013 864836763 908957017 358387141 825809992 998680342 999499406 88795563 450926490 748645379 986772696 454482770 660976185 169990391 364149552 791694916 861040946 436592462 659595237 880767754 907953563 188894095 293301656 834446798 963825596 40188736 740934282 998044976 998277672 560311940 865971150 840593733 898927213 316552191 517345406 324436554 568777763 232914426 611853378 414658542 485318565 524361711 589287974 939280395 975403126 834463643 998867101 510104383 616188328 65854441 554788498 384727126 645669820 46729361 662712533 279000588 711200133 734034561 841051380 436851748 823464952 953307360 984245965 129478519 380089403 139592562 259049279 580151195 756346161 668952416 855988819 910154648 935049085 1664785 737626796 3012563 210093398 703345637 983807930 786200456 954818330 371072942 418052483 182854235 684494485 21947926 652730268 251178538 337970369 833337522 949530721 576607095 590943717 704084425 946346390 927408629 932274631 217450406 398546156 657269843 995697690 216645708 219192007 894566661 899285364 58014802 684072920 167431318 612173501 456950478 523449265 280261626 918178606 455117008 581053977 192103876 505152276 736547703 784535382 364673649 956082098 235001578 802904557 196694495 850360365 744535853 923588181 515498620 955157635 697098481 734680249 692969352 940363891 931118061 931673246 925631581 943457014 675699453 839118306 184909981 734499011 830577570 860711587 798590284 961455714 751173208 822341882 584708360 966942077 232693816 272128225 941231119 946975894 974479579 987074576 450544674 923516747 470027831 831345670 71908183 387011858 775951662 990564874 435472340 805290784 309698893 904583840 934343128 966875352 884401523 897263489 584284080 680529884 513694386 733643908 184800998 881487939 483523406 814784999 424532147 641820720 439265216 804255477 120874131 206040302 4066951 640775061 26251864 730398734 646598667 797287361 388609868 575145246 909178243 947655239 520560678 574665738 809670339 875012323 695198643 758821156 823917954 967612492 456186861 536981539 928970941 968949141 164127145 876003004 794333695 811887731 9350281 524775579 952156648 999636233 468543709 645656355 392084714 598282000 674653921 931425234 702966430 735328080 759073606 854317810 535709750 711456457 178889901 718156223 275085499 929926316 587127574 973208924 301220686 493051908 200918711 875615081 888823684 896205397 449386781 755050905 527525483 668921845 359624198 592644978 707853300 767386459 639735564 770709210 27716423 787213998 492382142 497587805 601299884 871922202 493931798 526072756 676317789 796940115 922297502 949433031 765146447 824688411 537863463 697638131 515662963 842560443 178846430 422721018 128865941 491992054 686859525 987841079 886842976 943808068 514221476 756805920 644578103 887128225 568182745 749752497 885193129 888774522 218025791 232650676 942845478 990135454 931900295 943078848 642973504 991717231 767111190 874528466 579094451 886786722 905430657 905694682 639537209 908497235 533938086 793843156 978872644 994893846 143370845 969155887 845748406 870572734 929823182 943274428 152988708 187319107 735650405 812265527 440962574 732960250 982621350 985452934 866711136 990190751 700043579 888163510 524009029 768494427 227058359 777241702 690177439 772893919 81363673 660463058 517704076 743742462 312756794 719948304 395747664 961830062 240850695 315557416 663694805 765744024 478654261 609560540 604049851 854850163 158588124 869593808 885925062 988663142 684012796 820037031 614367410 976603136 541515089 598730845 4930865 510476495 147122550 638661673 135777178 420267256 285837185 921978810 943561847 981015841 364460036 693485212 951177960 973386433 490231258 830163784 434004016 737714111 78519919 892644045 930796018 995756756 205621036 490550763 432089086 751898162 159272982 747897237 867442138 876670104 631263696 705505156 818704652 949585074 848717148 917126707 917502091 949840988 401805402 807016215 423298495 771342092 721481073 766841991 682643257 912032213 387722324 751112448 642364591 990076223 836043402 994090881 171047990 917833093 563909681 904708758 720771638 864154909 973025744 993419255 194796436 800330637 64674035 362767314 67572408 669180740 141042300 407695731 354885759 635717623 433879048 673160236 362634763 987736055 28040601 388868731 558064579 682613146 346298839 636890749 262488811 809742343 845212111 909102806 635095929 718707285 960356008 960791713 532084547 994408301 795412588 951891643 920470864 965336147 150274368 773580185 964048508 974067723 529702007 596213586 168845313 603408377 597752891 706730276 501405845 978865243 759933804 907453663 22921314 819912298 864794087 873613157 596400297 646366645 505957415 759424481 928260150 961656893 710192915 847098946 555422634 869165015 31454368 732585244 836792717 860024588 908307611 914383317 912869680 934098274 167019417 300902164 878969376 953429486 334836886 973168763 404525650 557109146 331749926 695396282 535620590 755292125 191037040 417258799 666603989 838094351 84130246 970354096 366386415 395354033 79855466 658292346 89803427 637192436 792721029 907858263 628244553 914296504 154113984 758101905 249202117 661439400 458458992 722514391 140779870 845487317 146809107 481285514 515230271 843946948 126056665 539947708 135040721 394001847 836329912 899017656 717596514 869997432 677520381 705618027 46465951 902517571 617298872 626528401 624949795 710641897 458730999 597318604 553564693 756964981 922988035 964985513 416110604 942081356 728051129 798536872 364542278 403146120 839090490 977535608 407684037 568660177 733249692 992039274 584421651 677251169 294503241 300200138 614571318 668180279 299007456 482709720 533798362 795110853 658789126 911192457 307374826 460195032 521047704 532483081 38161602 310946923 4400707 978142020 608459561 953075021 424263077 834051612 696179438 911132392 899612787 982116274 917475128 951227043 762034536 860130065 241921360 630812227 593983662 967783947 459055157 530992532 190440309 656219703 79147680 351136272 701478537 807697891 565305631 947316472 216722106 600568995 949857353 977690824 202314536 524599199 74735416 194658627 271509359 671364957 538056576 757187334 973120890 975059144 532562319 959720299 404104220 617162972 480251163 649955078 846021579 903557729 925460570 947427115 593057289 687543635 894917242 896459514 195734331 588331996 688518181 844199533 796246192 847047876 336124111 377968035 551738755 822456992 482438 870303867 806028962 929964849 41539634 316398171 931403118 990671773 770381174 873865755 97141195 220214233 838848326 979750520 470943327 834572749 303301459 838937147 142130267 316092857 388581195 876156539 740348783 946787965 176075999 929093947 311562698 764922487 852616947 910675592 566304059 617859987 33686809 543828174 616495234 742898976 461539491 916664311 115290726 429407671 702338541 906042461 692406170 747064338 130355772 166125435 48576228 780397833 360811811 867697856 7375893 371268247 680575289 921228611 532835870 827695996 275302257 664527605 902538323 920206478 516966285 950666402 633434435 952071852 727693657 896418373 409207801 913964089 71071246 633624932 146927099 488667743 412337227 648689767 756571007 991768471 799806741 883409139 868723125 965770755 786731317 869925470 610660024 936919058 723602762 760814922 705367300 987739761 252307654 837517095 228831339 234920567 132975527 627705942 157455648 641310204 174624113 812248440 468961218 573475368 840882191 848197102 839680888 916880359 544855685 876817905 911368 22315054 851120234 980847647 215140411 740068408 671612482 748017586 774001448 917127749 670999764 809537030 857533417 998538564 128687325 312212298 245135206 307137076 482656304 741295788 216426839 839591525 526582843 662740462 471268136 627677622 985922693 997359736 998549322 999381372 864594944 927312905 286635361 696828546 881475219 911359244 76331476 710942493 932464388 984513363 497447592 580316518 602267108 865903582 670308324 832712651 84099537 753805012 945170978 975839854 667169781 964878574 779143519 819557194 586830983 628485942 522010704 677268790 176716099 528806392 571266750 798325714 735635096 794206898 592223225 725406584 52852806 469606707 203505242 311294366 183946631 222668957 583818064 595696837 816565282 870149942 385712293 617029746 825878301 973046923 994730016 999895867 667587586 966795862 661956725 751980036 984342748 998403707 367672856 397378021 960206580 967363777 118209089 242043485 22536597 502204111 572254654 676270869 284604337 393920605 244051473 988509746 215996873 782205592 173591922 382568475 657841106 896348795 102143988 688092954 211936954 242242558 726997989 785600333 898622450 929766102 909156496 924837240 739688067 841398900 836142409 932575964 121084500 138165934 321758991 783575764 521407474 997429737 385958123 745004030 34055350 583896320 297741051 607823500 45359794 864595350 353918121 733028186 605979085 870867229 732798925 927001161 658999768 957178684 200505347 212845687 770859344 926704365 716593737 835689592 416613961 486205254 727861888 980872863 729521989 971126895 309616370 541159858 393353920 606823209 109526957 425628940 537544486 727059395 287175843 422933671 31503922 272813783 846378081 896285039 542920747 599239180 363577451 637161250 192956839 541092039 45432906 879526514 412364005 695944886 865579857 977071578 309839070 354612814 116012441 345298894 795187824 914228861 102036735 911001487 515998891 961851211 109538895 775372322 63103453 873751071 105446631 342108188 49828127 356627662 976497151 978189803 880320161 962106001 653589084 814966097 85979401 803301565 390496047 583733190 833266666 969455127 491079363 907739713 407808835 955094900 469026538 591073167 68195334 374082876 764854171 930404253 153067394 271126604 743514741 772678646 37739194 952386589 337352300 364548240 676551847 951976659 714445974 956156964 210985443 898625945 264087300 773005032 370085358 587040334 244085974 433167278 698167668 903137163 164108621 774513602 757531864 827607415 583785830 583897918 481734326 648574772 264167583 662549414 745578358 974716931 280394371 367059414 294138995 388986205 710105814 999417875 168467477 530598621 725930335 916759615 382097586 795185145 244792574 719816134 25981934 995774007 866919520 969521083 94092052 725081056 702329301 882659262 809550391 942132306 218237389 960064564 228427942 731568546 39397961 288409973 798647849 921009750 92268486 349426858 945411140 967236596 156482145 642724044 605206951 754082014 819480756 898759108 537102734 620015586 27819355 508200790 20514070 139701350 824725313 927087006 309817089 908065781 473386113 937663335 782253355 832736896 610075185 901621058 552843348 883454138 412204735 891384553 437507792 443807658 654627739 690913249 848334463 879959509 306931244 483119557 856636538 887396465 440345012 481205385 979164082 997300892 563269525 994767282 845504713 851797915 588155407 951360882 863638519 951410354 900755428 904175982 684223677 855151031 309986618 519993875 738451912 818664397 333277961 914284854 490530976 569535941 716957565 774856582 94545015 733344165 168144515 334243054 968316510 998584611 667194835 884557825 54607274 228626483 626020438 727814904 899115526 946308892 132286562 920650295 611553751 775337428 924069913 937523082 931056671 993747842 962737817 963550615 335761841 920000588 267256775 760817824 308571978 468274692 500778413 667816957 836025303 917825534 8918235 440211183 530188484 876298010 950514961 973221358 996661107 997335233 428761434 944300869 959546847 984692325 540409486 927957481 135627295 721919596 509037340 963374351 1831002 857818028 202891490 740621890 943060227 959546243 900440552 940414849 104721124 515500424 965027152 973904695 379274644 966110568 229602969 894072494 426636103 967675383 689447732 720890474 117062096 866195158 700256424 976119552 522622967 719816194 156454455 596497918 85169793 655752489 141705503 787001299 801682940 919257956 343785433 767247125 36096633 567687705 668009152 937911550 272833332 385557865 351126213 741397517 902453813 966236901 315853915 363535392 945931868 956012723 259921095 561101557 531240050 951186136 858779014 867053800 925986315 932886248 241286663 797088982 844748820 918407581 656187488 664417521 606178036 869564992 686958317 771699324 940093329 988522052 812080344 941765868 115751975 557034495 187104005 297840866 872877213 876759358 451127238 904558035 510685884 931123187 838105351 986891371 809787483 987219534 969391523 984367636 99433387 468339138 546197086 614651697 312848503 399950173 660679016 779174814 63174751 399639119 241293722 424762662 997245359 999155596 752261098 799793870 109070502 220907286 444496815 680649302 76295716 855613204 245348229 976605108 200028202 693051934 854783565 920790562 602370402 765110462 194836765 250458908 50475005 727760305 529571072 603479687 921623759 996783902 618673500 996948472 462662839 785115753 514273202 699558692 517092376 751929931 279753897 544871256 761319948 916548695 322975129 869040822 293805685 913350087 349847877 468598449 664894582 897473203 212162269 418005081 818385436 925119303 385245662 582223465 545459335 614043301 250560212 607360509 362350124 469834835 659533464 904120125 847588535 969446004 672180077 934043674 139696656 317832390 480324662 970266983 5295115 894837761 325574643 837773360 113727310 347268474 652709802 936329715 388487196 527205556 413798506 452167854 666131583 787017960 257466915 735644767 683141115 915478027 990959159 995705600 967275110 969411261 498281348 913511433 784316879 785578991 105845917 770451282 658611424 984910676 861149257 920540926 835543738 889023716 674335322 693898960 417685896 663828865 740614578 842799626 675057109 729217228 810053877 934231170 288567105 294372246 751532164 914891883 828966630 910671744 62564938 163118165 653229681 943260121 714376325 952743244 59327059 242442937 593397013 869708032 796249485 887364393 995224569 999548973 395382871 651951887 627609091 640449798 885967862 968041500 928450744 991368617 392657068 783621839 836414733 971700083 680904923 787219581 262596932 323521419 969478961 985805479 200729988 574441846 13234719 784337271 670915047 858110368 288327250 660005585 109204464 744887349 24331762 716600633 626692363 990280745 307452299 578416495 735544555 810039815 970827754 996341847 37118039 842582131 793224334 828301781 27619710 335190197 713861889 898322745 909759042 949876460 313059798 543854105 875333113 879616940 552202842 876795116 386855426 593213271 312443124 655988858 504021306 538350681 828842234 941619665 497702754 817850922 332540038 452386535 751814721 929596042 283580972 488142450 28652580 209426521 565569250 843566824 685593059 771278099 792989304 947410993 746523574 933845340 826859868 850509294 568990927 578353474 777814427 923851268 615588827 811174928 751703186 934355850 357117677 885100854 641011310 745717941 603491405 666318483 115090435 152575487 114598737 402571972 167806877 848648763 383744157 596577582 777882619 958861472 966537764 979836066 995161046 997113846 691072579 744255235 839945160 886372404 935459689 979654285 564879956 648793481 213334892 958014232 237055822 621722801 614674130 799102885 186128176 405870171 439275009 980477344 749761684 791861475 577645087 655977204 521051087 697679151 837260461 869823015 108904611 406733840 954244803 989133993 658219850 925038271 412915112 773332893 685789798 783726678 606420843 783785304 938867675 967177563 703723964 829359066 811862032 825844796 662971714 810642764 400314127 405315874 625809344 944475544 604528366 890656208 115924407 887646757 829485546 942090920 264724907 710578180 809704363 991596049 804292444 908861934 992636239 998313206 289165359 381751348 813473343 952239232 932031415 975637290 223137087 452760506 676241794 708649651 389558261 445384332 317166933 977016095 843300966 997418701 676162537 813047679 619620932 736336772 516879306 522326553 633143844 761133575 963674205 992438561 481975037 987672898 285893329 369879124 171458083 347573461 212910871 937784221 852858150 983733488 916662470 933773589 745916036 848688611 872005244 880470756 125954544 819591032 574422506 689908232 89640638 414383178 624601482 716721273 261155586 324773011 251869832 489483111 302523819 722564287 968172332 969077229 133597879 821960840 674826808 920750898 256959711 406699255 281441193 335645916 468767249 764596638 32057615 582185310 979727355 984392921 395236186 398380092 461510683 889474174 8980584 948800262 408188517 899048172 330872630 532896369 16993085 774552673 352954527 362249922 749593931 920365071 650910585 902504942 604922686 998418840 46546337 360155139 850518300 904093775 127797255 624664975 792872406 851672081 1623074 38808417 19389268 988917338 51362104 831091997 15465053 173060146 605033063 793393003 201197001 337652160 18734952 896579680 849764287 856372595 534442735 740676207 66970111 650716378 938943603 962152680 292014405 499485191 16764459 434425837 596437469 742055458 494423614 724821424 36887339 399236093 664070427 891836313 259482881 770138759 908565405 910082127 319846140 640129593 616671073 916904291 663833008 672686587 365197086 463010416 634656958 976233658 833940044 875106642 508112884 818582193 241988504 927355981 95708510 412752205 440388107 949230119 420476912 665202650 935089935 977275452 695588825 931317969 784351664 962565701 44734399 918959817 514786511 920900559 280832931 581271598 724857314 757792296 798297305 834390232 912840348 967010878 152880069 834366516 325372849 427619551 314443645 441440744 910314693 959020206 428047080 540059515 767381632 871719793 149365930 686474182 119612937 322521798 913523973 949328570 992391554 995463707 836446996 948313711 9420130 218756046 302821310 354470410 741123040 902083451 358488253 489359579 647397020 907711245 958509406 967280783 839840859 908419496 412223920 679949438 96434492 342486324 995670191 997077613 164600104 515653690 964213007 987339514 470071898 546932096 68016533 643087448 941173696 979331678 449994176 869405893 185118413 222657286 715943447 778816153 707506879 993753950 344604172 861332080 236351891 669759542 902850486 998685480 676519407 790218120 752883404 818420984 452304558 464774350 604321012 999034704 410659643 770433593 892353480 907363042 321031180 778876536 493279943 948810384 59742545 90643734 321916974 419565555 473330127 570642945 628181948 988218452 981051689 994658334 977897288 992818355 631739893 765456961 845583901 933810883 922062045 995927150 708908955 762066639 873395869 920547160 891260282 952585835 110618339 922645094 589226916 974218213 219139246 672526913 857803222 897262889 476159228 913757619 459868481 870174807 11609677 446813526 604013510 679079509 601439431 779134869 80436665 136223194 400148045 674148446 537875664 865263336 181481302 331760167 253849631 607762711 442995327 862887643 835600183 888557313 251159742 603702470 844284751 998968438 246365378 713156327 254963634 985307337 802638814 885862200 383252059 975597626 868103567 886475677 352924829 842589533 162819044 790444459 588727601 992289137 861092816 995601339 62246348 78775503 614869681 928740248 903038009 944589069 406394433 628539096 226537180 230543572 330332467 465364393 170479 197610089 207222617 424801769 479212112 942809760 873480119 945161855 821307264 874645190 122257179 164035361 709440528 949458833 324179032 952780038 579542361 837671629 175385665 872232632 10331973 179463694 410433249 821149609 767548251 781347179 922518251 941264120 608065092 624155510 605678831 626413243 694855134 772100213 503267 690351610 762987264 783896419 699781451 998585002 538724589 605721457 222457008 587399957 559833184 846300795 294759212 707587566 808925161 872660433 652974112 952594605 683969625 935306719 874278661 906434897 211113705 496722141 705261216 732692144 421616478 804700065 621527249 991366115 928364631 984285559 787011889 869970089 938648049 947292505 441206356 517548704 906205779 913638661 321342795 702221373 630857731 853777595 156575981 236609110 301916505 520028738 525051117 868989961 648629728 713567552 993630098 998188615 910685607 968950774 496376334 680325326 397182903 522206617 789511406 865371912 392182455 641340186 813461630 825097402 372275568 597608524 410529874 600185071 895853953 968441837 711395561 910962609 546212105 682725204 528270492 549033676 914672790 973693745 920596642 955145749 777539601 870580784 733016415 761635659 960908260 970055499 930597039 970477092 576846659 953818593 978407843 997235473 88410568 385777898 328775578 569676316 758400589 917422532 451971985 992726067 390181811 982471920 269514352 653688212 577350031 841824279 55855447 975482422 504740318 661552617 260851504 372739753 963591339 972134758 819503475 954682058 699207120 807982921 365884802 745598959 987974444 994741739 429038187 821521657 67263487 767664095 733429370 857957136 999945511 999974929 116907742 985239512 484270298 759855682 46645798 192297108 445055696 958475405 313236452 802440151 798566246 879995389 402800807 654561059 72791506 111950838 85624160 655101469 377524438 439759795 614306780 847682511 898157726 975707323 28755548 150480826 471287451 655352256 994598203 996064380 556191312 660139640 148605298 902220470 64537522 730324269 438044881 595742111 25834046 274001546 107087037 489561481 127089705 996133757 676206294 677303539 473483977 596396001 277741030 526544835 782817453 862444490 356653626 812381293 172765048 472169809 970129507 979132039 989933449 995165067 470575559 976609080 724816902 952728133 140103578 442612303 350398999 568336781 616831589 952923750 639622074 836682074 543134817 949872762 761977668 921866082 68005115 537381512 303269252 967887431 495743971 931611531 616861283 709111637 65448002 641550505 665807782 787375335 142703688 185258960 913189463 933608412 727851251 783154039 280243743 324077671 80846383 456185277 399449359 472450348 655247090 768826120 444186880 947454308 751812618 869291727 161340746 600863962 634391661 970530871 843576508 995346246 113113419 568175179 793259795 832982835 688244523 766078779 353572806 978377526 694475937 719169835 446823021 573263616 603317506 853567300 781418796 875827906 196128713 861430610 63795277 977476050 985086513 997691328 56351475 637369541 855979546 984689094 663621094 682728128 258990335 713122837 851745535 996672593 319418592 941936276 356925657 911939204 656318005 791788803 455269776 951488875 762038559 872206696 985104788 996554018 187589082 996286819 199852252 925091475 233178227 512536225 396383348 795591039 661667352 920429091 547684521 833741566 1628133 457949454 851988739 874370764 913307894 967583690 695103624 919371330 637957716 868934433 2787535 357092186 167315161 388659250 678879209 946073405 658112833 728176085 587543776 708518005 191644806 966981663 56556638 156927140 622197865 773953407 621579107 949318107 614339330 999932680 603954219 975132705 415376229 872916674 522238107 790739835 782673037 830107089 210090278 415057436 697951720 824901088 376940817 744854411 891734338 892844467 130295946 179715539 114078373 447223807 356965794 652786541 508283206 992362840 24404235 99989225 759456664 919769176 326476225 669840154 713260159 725982095 711391153 875449490 211506878 785826201 858386058 989800838 102801615 394025338 787043262 970846371 417729714 840439566 904944355 945621516 862298202 942052724 758610794 860959092 24799597 660918719 753048993 939688948 888857193 908915379 131827545 604284443 685831067 736187281 63873410 437136904 665846950 754170529 986055171 991053019 355428133 671966283 209677704 871248051 5527191 730221086 828296667 885998929 115847418 979643848 826870667 853922938 615248747 711266281 386973821 683816674 141563791 998155820 365149093 521500189 774225735 876911977 727944274 982409720 966365595 980973738 748269050 972238885 844867956 981054187 999026624 999255242 699142315 729824632 906810330 961573276 319590683 412661312 961759244 976638285 640931545 651598331 216981328 782498710 341984993 649662367 984612209 987069613 845378076 873665288 271896425 992600491 576444746 662290604 912711318 999482658 246143737 422771001 577445715 811049790 956534217 972893774 20620575 307539133 678628326 841890523 525777438 638528722 308869601 599104862 796818725 813655540 922852381 922943198 871787611 896685788 168475031 343705812 294890963 436872696 252963174 976121708 369560695 911712530 141526299 209408885 190665041 518141021 804800437 824190601 944914546 982406353 424833329 768381052 715687830 805548356 71409748 893666128 159404122 220394987 162762010 206463963 985834881 993443006 687168383 733884997 171734754 856382729 723068652 869852239 111904771 782934397 952097902 991595219 97251502 640997057 436488198 713404986 934961968 957870383 52414457 244318146 543717802 549537628 443352269 774885118 300490456 498998996 28257746 955564470 911238265 978795850 290939490 659379332 653660456 862331317 883043504 975026535 276752712 905174777 959612136 999293550 19353462 476376766 976719817 979176824 293406122 461810830 130546222 213124960 847254738 994074160 316866412 400517109 927435617 951467740 495160211 618628110 731212055 953871193 472286000 701231197 57480136 650518473 666276879 826485999 741937188 745879332 412894901 924691909 545588238 747802116 281098581 321863282 715961401 775167890 979440807 995328809 81286840 314613465 792223809 820708554 470536470 650375817 577110716 682563760 576298338 772976887 247027260 776136894 642169196 737898629 816305711 962817380 48858254 241876196 695985134 807525858 822678822 832869176 905717784 995091314 812642572 891943448 694531458 904828060 327939225 402398737 164128781 364575028 424377722 831953231 128754466 656978805 813665406 921533333 246317922 706062925 47203692 428098317 795208644 868152559 303243760 990770361 786612524 889101033 841601306 937190752 446207203 509953028 216441382 489365987 543290165 845885601 558718696 810821234 85306601 414900035 801037373 851424085 613013885 749676398 226828929 252344955 864653936 897062486 504872943 929221217 713619465 787295807 53179306 967165891 296927374 366222205 65410491 496493018 561843605 933431023 542492123 882997003 67696686 331187840 278913268 286432112 961375100 982643425 779682411 875337003 522418521 824118830 547107011 642563673 657715929 925632252 223357079 893090280 727774774 743837266 222055699 630116516 755757582 803992790 333434880 399504564 844079555 892007996 239104146 706301471 659865869 706697659 267570795 317310913 591420876 841654159 410092586 808524782 701145048 841064775 105791607 621991843 993745540 996110973 986946617 998358744 927394064 972831944 207820344 668054371 859256539 928913500 287534709 953713440 422979974 660582929 955101876 993087274 349152688 980470008 962375197 991091645 962885482 979313621 970517881 987318492 680996485 943882151 938148399 973732637 982955538 992708418 595398388 840036948 499104033 559153869 753089978 982276484 742582411 774864475 717501510 798396600 691904752 893343293 16875233 648328379 905321391 918494769 198027043 452386830 970394579 996271039 766356697 995884962 934120574 937789904 380303930 483778017 158396278 865214939 149241168 625142606 817729544 978310887 267322348 849026452 811042423 880847211 75800109 552379178 952727556 959695075 210760688 380336723 658954568 779617904 385650918 941511897 212526781 818315790 955875293 975733733 819473210 900497998 959685674 994335574 464118186 466909212 939315163 996485192 569934385 813802079 875991234 968588129 680926798 768109465 869817788 965999181 117290114 949968496 772162251 976254892 722068783 884079491 927047630 944576326 914235004 933967421 133631224 518077951 128833641 495907833 531794149 947110288 46485703 770708211 881163854 920269308 450238819 705477396 560749116 637066209 932378659 947991397 951516581 969813892 911652415 999502123 699228922 873247049 82397914 523401593 65980315 829470045 365173275 905858375 272766624 934472215 198522910 721739510 767516299 827805874 15335487 890379379 861604896 868701189 743345615 826680538 218587413 362902303 190300829 653746236 662348769 864654094 249167618 389640450 820394329 887996394 152203317 771492378 138150861 950606469 895543652 966893417 511148630 982490362 692319776 823951138 207982578 348232797 213873867 286887502 432270974 527041434 308695277 454111224 670827578 839058506 430470811 779897251 961997224 988347283 554034381 955805117 986617618 994066529 829979529 850508901 76243055 382724195 309826051 802316817 557173193 838774803 734794197 925986912 596373319 802629904 686328326 687921241 893498038 915271795 16394688 734473308 982838759 996051586 562112823 614048997 368641005 430484718 520418822 863772646 797602509 840210094 185081534 898448671 583758934 908354083 324313362 958136357 233959984 418857151 111339436 557654637 181047902 525616252 156494122 640448823 667144079 958985929 445498067 526917036 257412492 916043269 272114200 633559728 620068775 967383724 111054569 128113754 115043903 790034530 625457445 917510385 200263877 242788772 542564392 849544246 490039548 978096045 663842105 824339483 664881023 788564773 346154331 548217885 784482101 817690173 183567153 863657854 21496535 324744640 625235705 810418513 383049705 951491940 634425537 887540219 671909016 872544496 54222809 721197492 28324092 820450266 529587941 893283180 878767141 942267700 288979412 965021798 695571287 734029156 195361814 648323749 434958219 828844571 211857473 976692118 837006685 969450444 879458096 898999230 243043127 836097863 636964164 911589864 641088825 818760452 151843884 927693510 525018749 597374477 518911311 887495775 685679828 990733463 477044006 748958802 734856527 874426348 736460213 918593962 697711138 802763163 864206349 946793822 587141902 943979899 557186136 739821573 264278622 844267734 774236060 930380435 915748304 944121851 530446953 605290815 369668112 386103775 1117981 964108622 530185470 575434805 208678369 331416903 337414153 675086418 885188922 943101729 706701985 852625089 896992556 964186410 713090495 830045739 563523224 914458754 228123487 670544244 284903310 672425069 744053538 826483148 844099138 976513399 763226449 993038073 391392677 795300371 173330248 708574761 729772090 972441970 399969161 836397126 880139665 963606074 27620322 755412268 722231825 825858591 963493198 980606574 921198498 985256268 751658896 850231747 805394464 913518462 949250053 955265836 854280219 954629986 6263991 114908659 832703528 955896694 962654377 985433204 208089780 351586597 285087000 978164402 804659559 892100458 920704274 984176606 739120091 819268153 23707861 815434743 3434090 24565155 276116573 292031190 295518793 980344605 118472851 804149342 43927287 520786506 920927058 985851146 200099511 941031601 417617570 863728754 185311845 929414395 982667875 991684174 453342301 695836949 282400019 612037271 636829671 914215089 953910422 990296803 760334321 877955789 691394153 755324379 262320808 448929203 116020953 513147327 76699306 201530517 884025841 914288986 980353962 999912779 551070802 768458942 444102205 937491291 14522087 555860417 607124229 984324728 243925888 817935263 977699504 991909906 48451562 365893832 416698144 954502389 922293416 926515517 141130818 529168285 578377868 896054705 880138109 907105110 585920750 797092368 161240077 482878591 565362952 866579290 628677367 636358058 702481745 811985491 369937947 554572311 115977793 926633803 580941995 597401456 938954523 953593834 877524708 894832870 79059588 869311888 158703912 523958874 65662719 890876671 504689900 929153060 868979018 917031948 279810616 689407008 679534758 974800732 824899998 977446430 606118282 832547389 15559162 977693092 405568016 882659046 63035444 709236848 117931976 577199727 462519706 981096917 340509827 988305608 390118441 994251386 642081595 935513356 450780508 624821223 243043690 478806907 66473759 960566980 294238040 642575229 988839717 990782326 891312925 892564274 429022594 883258300 116743008 782691637 656603637 727291563 652965851 683628358 404483591 541052167 500179280 674042442 441552052 695268333 710505636 929535980 284204000 729962315 18855699 792222206 332403323 873150064 258008309 883386714 560286710 627192828 233977058 699117392 547406177 921565397 130138307 629869972 573799012 985376990 780788963 996574691 624451302 692233301 833022189 870147383 436295587 455608930 352379100 358241362 665781733 952774641 299691397 961390560 677405385 834737750 521372944 713234726 353738856 614804959 249851257 858001985 173592585 299990289 515929172 832787010 778649313 914082419 438336843 939966194 28226979 436925246 449514297 844309893 856144546 858655060 412348323 973015187 638055037 694436809 75711987 153430100 89538157 722254313 203162224 931208378 487710459 539275605 502790371 514692938 47886620 406168530 660101079 956567000 872842986 989788554 380656778 408217723 768750478 879164545 193482625 682336514 164246071 392632121 280948062 618465825 952518481 996568100 24514198 341202554 581697540 629837484 935191147 997651227 243030872 942314577 505330280 654635834 368820921 530475498 960191174 977047937 421855043 960477634 570567058 900596425 618134413 919850795 455285195 811934441 989830325 998846974 905095289 941402831 424951447 494959280 603983067 849841188 770538623 796193031 720856064 812983015 373654135 492304273 405465751 995010410 341205652 866005282 883770419 985173514 629442671 875213088 831284482 832801694 389803282 538932382 967947996 969299841 922615493 996234090 461233283 873497030 330669264 854614705 961465604 985074554 204563204 349263088 718169939 930148344 47297841 401287955 561180396 669569739 594193853 911971825 366219177 422939208 259961294 472594457 696276204 767249082 427297444 848427783 185004992 467368272 961131544 982138724 217526412 875101560 84444015 974406295 958540523 976117124 519193245 593914686 384512500 489746644 291022697 831584339 293052436 309600789 462999114 841650586 384178363 430211978 626787909 953449885 755677588 828178271 614183594 902482516 878514659 890049997 426613145 614214928 169488031 644139358 243681527 802644022 225315955 744408599 500202326 680380806 375207940 607566235 469476793 955894440 573464285 595222032 852067515 883585197 397127743 810725011 365574073 482805499 9294031 548964960 451854894 869992484 655033455 770704024 177019705 654327461 874418494 952790197 675148423 918160364 161375066 216780781 665346695 680393619 42789692 567580901 690198300 741190276 666075602 714719266 325865868 625266503 878327582 990835775 72731139 466875674 546175125 772044345 10023348 435052118 70665440 223440956 635116910 975461436 331511149 380360746 491251137 666680844 845648178 901239342 422569636 805811186 730829504 945094832 844050601 910332262 559243723 949827666 150673214 846648351 235242884 629166857 825017221 960081147 148856780 641804693 612856982 738009759 552416355 656528241 777478799 983119602 342543869 558267802 664592158 687115502 179808139 577126110 411785696 911774049 142914534 212252593 88293297 397302841 467542873 910644574 992001121 995126398 322705374 472581434 917486514 934994751 533967794 993026379 317971173 714656357 27972290 517557492 253328812 630709792 967437731 977347059 206653085 923313154 125994359 302936347 886440292 907428020 602631057 607619195 272016618 646046668 123749647 270437786 434218630 684545039 712640725 893276437 80653660 391233194 182200076 570678761 672323245 743642466 466335734 510323951 43581274 148075970 704934692 876703607 2089083 397937165 696479390 830520794 657556618 981899238 519499888 813149561 754151386 901695274 298031302 470096749 922885663 945634153 496842555 657652531 753448727 802604254 275175527 605326115 579461402 944848456 398837449 758814605 846805300 974136921 481539890 847570081 202019767 830319871 419754152 776221975 81929635 957197703 636177240 717116657 268985371 914236941 289090149 441547985 911986030 994588971 328478276 514293182 560969071 790871507 208020829 782293080 304151497 736879662 27384908 324799251 925691203 943469445 861658030 953224093 181178995 560618300 158979856 392966679 219429151 311451349 235457291 267462335 149663399 417623670 846244413 974667285 922264391 939880158 162143006 855057825 765971889 813040644 146103903 429281959 329567985 682168366 382651142 672107575 548158486 803357773 26908707 566049867 991459535 995169647 383810085 564670498 682470874 970633247 932227406 982062508 439931853 740749694 559801003 609173457 487957735 889300306 413351353 573498713 329425869 728239926 872929503 976912156 403331769 995247255 142946221 726925114 571828594 822358083 753920723 959477246 76110870 150221021 421340952 526626827 661267760 728104249 462554996 722039990 870095856 961009546 432397705 711233179 184547083 249106115 306146180 974924773 958650755 965403214 849285038 964877400 799435679 909035586 35168013 763712198 493727869 819213197 319400712 904046819 721253501 975017609 348239337 823452883 769703524 888806453 778411918 927725085 737253181 774837270 57687804 735068762 864240766 956684470 61062996 286430231 412663002 727329824 254219487 887042572 565998942 578832597 647342547 802705418 477297552 719857977 817332091 863735370 37693843 480880770 788982066 916850593 254359450 868150707 73322909 354354620 910700928 982113377 853256218 854138382 387664197 489141759 136066358 399461458 726276499 905621643 984992880 999295027 823810127 992922358 779731509 975446256 550352826 818200547 310690382 496237163 742887255 778635181 400785467 668979915 463749675 872269877 452060773 682213734 986419661 993675440 463310262 526475602 917162845 990448031 132599116 510724314 322941166 591036641 857882017 928512015 91611903 112751262 177258674 417410566 410349826 748849555 670400058 911923711 191327295 310838976 577868962 930928775 262983975 933412051 308128760 571772750 377891768 976811200 43875299 909778024 360401646 486898257 433359403 693081006 683772809 745232785 433710196 959533942 525731336 766616713 574064970 999871785 639746503 925615174 173378195 430727910 833257779 964851857 99396914 198699878 674999287 761632724 432639780 692289786 583362495 622038925 353934088 792845141 811339939 960985057 854043927 994001432 931181204 995151214 44188487 488266414 134461534 701629800 760734622 834812458 555889272 763983542 726170006 779513491 889418321 937975471 941420945 955567419 77477624 477940214 118237957 896100159 954471463 995704555 3043956 111162416 885445688 887788205 501279548 883714931 253659942 331966734 752816433 911384683 139493242 860820312 764263337 771458429 887039452 894046256 291441721 491017177 410903721 818306795 534296207 599323504 681056290 939543113 904755915 995888697 842500426 996475806 306784683 930099731 269961369 854235884 851198860 951251273 485807514 834119780 398947962 589444699 791933066 902732643 524553688 746988513 278527923 487013782 675208238 747925675 961384732 978672562 810457012 915892652 970657236 980889607 885740873 932061483 7165084 144464186 335039824 828493341 773226110 909693181 485201255 697144712 900626097 914760891 439248490 812316904 456691255 477259339 956365319 968944382 86575675 404122438 316586836 748338749 363602285 399474678 659733249 918103506 800468617 811021055 63998723 919616190 569624356 955302601 684273147 725746150 237386863 646856696 349485357 422311390 956943569 985860413 639227111 976105495 841728085 977816552 960249090 989015343 172643466 303946275 777451377 874231074 986211663 999641128 438361031 752273357 570784627 911823289 225953462 505231911 628784636 628786815 599780423 786597646 248926749 823602091 604965560 980854025 561398908 589988427 296844149 538520959 565328003 700274023 971294270 999696564 761870897 805512116 194286062 705911739 312195926 572220959 203151714 775658046 158473203 698938467 993793995 996528838 567552373 833962777 653296570 920608486 577332801 653222063 182145554 841564647 782855272 844068799 348799908 676339187 973740203 994522958 873356813 874901454 420136774 532869328 699607855 763914638 93388651 868538683 973140566 993928022 102083641 531958437 33394760 716155387 951626471 985933806 807733462 993041295 602020312 745500817 886890356 957273619 366117982 799900038 641964058 865651554 978098096 998241431 639836232 992613105 88830536 364357495 275699444 984665177 970477968 990008896 650511213 819781403 26661929 60925240 422166470 431868411 190608907 963292350 637940770 938972251 942625957 970141244 835238686 837554528 26441787 30241962 616773538 814164964 550875935 862113141 196880045 822551678 336697016 746198648 827965637 899761160 322565010 680292283 877413556 903115636 971059864 987706669 248867474 674733033 698334642 908735557 84382387 128119391 615338881 739496856 403763660 440221102 629572032 850227962 373149278 995940634 746226432 966906662 439606645 888941068 246857781 775365487 415283379 594719596 670174286 693109433 615729718 659135139 391043220 790033114 34370001 191957255 253622605 719166343 174811697 961147919 940525857 991604168 528449355 685600528 421643606 422957666 793425406 951858732 811567272 947131871 307604920 685206211 340875295 887901764 572021054 875116600 678707403 885231116 662772472 988421848 903899857 998292034 450994798 967792435 105168087 239328337 141020574 993535182 611111161 650447057 906705852 981207214 35691580 749586627 494379060 513895693 456014291 749051659 774852625 785219672 681671388 902678328 432602363 826688505 694946551 845032162 287222209 338065891 199531130 964969449 505042451 684516690 691930457 919237336 413384145 614244739 711901629 883808505 301038533 645536956 491111582 502570981 63554312 393017011 699906225 955956387 152559227 380888604 678094214 911432715 872967144 878373863 254451795 958735504 438660118 666976330 526105578 623542434 524986801 592185625 632359504 863127175 85363274 90402247 742834139 770484441 127396668 473033557 322321479 388100796 225094212 282485440 83578857 226593175 296628986 891569032 833919754 854541600 555915687 876614562 940811056 973575652 883334470 963000230 51530698 656252296 539552922 894035047 610716932 793860959 475278983 891095114 240906808 907830298 325518953 719210995 146453060 370476258 617927760 960891531 796854141 840864531 748976238 863681132 519121513 703154720 410933501 797805143 374335805 945766197 101516134 134608968 853299635 916892115 753190741 994311989 445895716 746669090 936699948 970507442 355329757 971993891 934716204 946902558 170552624 431102940 472706289 885007635 406467313 566483457 705232365 724335104 236872111 517609281 456143874 586557831 89184585 153757540 257812443 967431449 91846191 172594096 116160008 761259997 469608813 529031341 393182911 924314592 519842426 953694016 765776129 914420015 357630630 740060599 218882373 701547527 915657514 942636398 809626756 891921607 604782049 992071842 173606036 860893731 275063896 814053969 185190341 730380755 531663145 807857246 987691379 988171025 657664390 945263619 126852545 570206345 463702255 637416880 13434663 698735640 650184283 914794803 948270668 990236549 603392821 762490235 427407221 448315849 867367260 906926202 843587406 907647705 929033832 935410663 184224728 606254750 341147397 980206582 798018526 994745472 743508345 829768028 561305259 615226429 590165526 648396500 194474382 452015757 875303523 889533234 523548765 761279969 948911767 967269417 645640695 911756625 782793959 834754976 387216707 929409041 38714204 525267885 536293385 928528015 903308825 925424489 979521034 987877811 748141523 913117807 135242295 305756487 238609002 683066901 990573521 991052511 65237478 614382644 557286341 966433696 547177104 568741112 906397770 941728606 109174291 632042486 995998460 997771985 559913971 581824546 995634595 995903155 463873205 889118338 497875211 913264005 496230102 742215150 303930686 731194773 540137250 768376495 638448663 682226866 86357961 264747166 168080646 606773660 724154052 900027983 510554960 995213712 722110756 815871732 48179399 310941725 115706905 585672952 308773251 430392768 588369373 967937111 276350333 958552842 699015104 951954278 913744571 974789905 352934260 851170269 4369218 263116444 514802346 945916902 967630789 978867475 513106894 613104161 928645477 988556858 993909613 995315791 208206599 706433815 143024221 616976217 743310361 778282603 901086220 956869834 770311630 947407214 798921840 959163327 342578900 937080718 496915704 534558253 492713826 843121619 715063381 871173078 388043507 548363584 228759331 388554971 531817095 561244480 982320823 989976534 915860076 965597211 290474283 575076175 478622123 680833474 725441113 967278528 321901811 557759028 322077154 478874205 313383209 415723166 124707758 511065264 249690873 327029154 290686752 993233807 49830419 300482946 834597025 860849194 15390072 825480628 3001090 876583800 727837447 761325604 459933745 880645252 612022819 660434661 560994025 762481215 481838709 739435703 107440948 218078389 426806034 536499248 387998435 457069683 13426491 401137227 271431044 948704466 333625645 578133531 469382521 796711458 570923445 902829529 43031356 357209754 891995130 942521640 257369006 578637873 10705203 124584190 713891250 977053052 293784302 648514038 640660964 906295819 947771570 952432475 217731207 560535019 212640034 390405876 595715396 994496017 680509514 907729801 797850834 849138943 780428459 782849151 478911068 679167033 586322636 701071103 399111769 466508757 671362099 901975642 226546614 571727407 762300133 899218058 431168135 754572480 517791489 644029871 239288334 925090615 383744898 574534378 130010581 611477775 400584728 585195197 424703669 636955592 886924361 920735319 464663573 653156459 578376978 661898329 52525451 405270650 215791922 403356198 626187280 996760439 477470801 724081399 486304724 747170907 362067668 411233321 878665181 935088585 14428303 298436218 691240041 934855127 32589470 383323457 77218378 562463075 164178121 916047900 799128907 981166340 985275638 992145114 876085052 987757032 606323695 729281645 21854291 870373710 145311246 449049824 725500676 768566281 722835068 972126334 393625755 882659405 615708668 735309054 457017934 640567066 264348705 696763613 350552180 912676728 724129386 798349800 891961428 935200037 669385727 886525497 282621286 679394112 925204330 994936458 554117483 716710275 629965647 647154752 305206703 653981324 177942996 424895424 194330938 815008003 885569441 886013521 497329396 662936625 460222977 611775514 656272034 815227187 518662990 826437850 272577629 388453600 322701875 325606256 393854625 773227050 957059925 997565974 701237292 875356004 25201254 162612582 899082050 950146380 142476004 165395241 942868976 948694052 906945540 915243704 560142269 632697008 490959692 888321600 975523208 978432986 512996214 835081209 640274906 865727640 291514215 463408736 320133454 567239137 645344150 775498597 537442928 977318751 241333958 300758314 888042646 908347898 400042057 740771061 243119752 685209510 61866336 331171365 323323722 664950975 507612793 839646447 2410239 972969718 20681663 839106729 203104174 261374993 341314662 735704523 223083038 276796392 334026679 501226176 790211517 905031989 288478670 741478869 198212034 418005997 597218129 845363570 63733408 879932350 503583100 564741521 756328786 931593941 803022646 959775337 186406282 452752162 841112961 975684107 783255987 905918354 162999552 242038506 174319687 360256635 887870306 892344971 108829470 569196402 894999405 959103784 979502739 991726728 563230767 812486735 894470312 976345642 502666604 800890261 237425197 553245101 829670060 899150654 699064336 918473484 601167579 857514768 50757930 270585436 488013515 860013615 131393280 540317476 664975094 713014078 267830702 682175597 184310190 450348604 129976052 290044471 154142156 156337025 580471230 915970043 451777545 718364989 958349459 964596448 120246284 219256392 569806763 815602136 413668569 841693407 518743403 971393496 764476361 814058283 971420774 983958522 937790393 953693008 156673388 239122949 598981833 884494950 769278324 982092479 707375837 977254679 908330088 969364399 529968581 782587675 775869712 880706981 106466458 179378066 97516907 877982861 341207673 434228629 633731947 811297431 848062420 998812350 595529359 895628216 497388124 670343104 659408366 731785792 945750064 990344446 64989667 984002911 965795796 980755871 333603038 379800915 985139219 997505761 23894271 785324738 966135955 988316367 88268496 386576321 320702052 627507642 110774837 223174412 114119198 299187220 563021540 619041463 268627766 888489408 524832519 938554312 529396885 666558772 398832452 431596278 569230592 975563876 791158376 943444583 610729424 825126635 305771608 583492503 406748544 669001024 765638924 873935960 72150704 753060456 625530305 775786901 763457584 917637535 190879159 708980232 164251301 509469278 644370582 806026140 268632220 298095122 982648254 998721058 637384104 825251443 567959225 659264020 850521249 879874691 399567929 602854675 816933542 832096228 941359887 953607784 90351887 523723821 418130452 602570480 896950957 995860921 156432760 650245626 45925509 529897753 618971132 830275304 594978799 706017885 926105159 994426280 443276399 533001216 137077941 615925259 790820710 928449190 126126746 578725795 791275217 876309448 889496261 900681827 980727444 987640709 493418892 544963879 278219058 471646663 539942536 577638220 174931197 791548469 559287518 885892628 445592542 955046565 904860621 989715845 1785678 906583778 136021907 738238998 823571586 907109998 563272287 616907128 998545857 998773153 4917749 695159464 798731353 799771501 447311840 569688256 726250698 751795145 634859313 768775241 912163410 980222589 284946913 543456221 610358197 929991098 8127212 120237048 921903272 947230061 730952231 879143884 660640034 964099548 927492956 993162729 911870412 938492979 786756046 937708425 383260173 794952036 374165912 380790739 459316605 612933307 712672127 884231666 117069243 150485569 803254104 894121104 96133870 989618701 901647172 979048693 787741282 985292212 282208181 360907919 602008150 660158164 231964151 247004928 587497938 855116612 924014052 944654056 612879251 702317246 805409047 975562701 284772553 331184228 791110382 999425036 868682893 922596437 788010195 857414559 970422315 989559681 459788016 516160071 545609659 621446734 957744320 981796334 504256248 726564756 352945491 438200272 245162077 427631029 386001736 969966674 198364567 572302875 686585 524359201 586106503 629391799 743365957 798953637 94618302 323092130 360009057 676989808 966564729 970263584 465069872 949667022 934250111 947048539 503652531 758496138 977861331 991403927 14149513 901901859 440882269 693142680 711411642 910123262 116772759 265041313 353877926 512857216 863365907 988221411 405284704 415770213 601648367 849456766 619039953 789181579 757412066 818995273 478859315 624394904 490896669 640274093 743690224 773986544 230958855 281850178 494968705 878247684 842229247 990904997 164186423 514724056 778555686 872395960 332926784 875814083 479253325 538209705 65457929 249609564 575477334 582708564 515051232 741707850 235140731 927659939 258678873 713894390 307993856 613755636 719587873 917657552 675818137 889954102 269318062 682816092 928728976 942029355 90957661 730754742 910900793 944912737 747039316 994070209 709193290 989505435 727536060 814669048 784384485 886737347 605073823 681516120 198929740 970353443 561166595 938920119 774948243 875459023 664133538 951820192 164791319 439858892 946434960 955280279 893929286 981538447 654045121 828542783 4590110 906030088 752498693 922098314 700450152 983789241 123697161 997612367 404719711 623598004 349921016 957795230 464475752 831314368 2951519 492470994 656189990 686712979 591955284 634848238 17367114 243711026 38638743 874830854 738241521 909791173 447167842 874775940 985374064 996776839 506317613 754562331 312843203 827654213 406419233 531348125 92955163 804458017 581521730 957406898 208735996 429105820 691678449 874200511 465088486 926577971 709562090 932799167 668673661 682277598 733430871 856454335 270226446 598319624 992602922 992949496 781704064 876117329 799360326 831414854 474221129 563134717 881722210 926198998 203960642 361288551 950195250 979054202 984084491 985596713 446853188 948571323 813379107 953390651 363751351 420692073 482945906 566613348 661369121 865300339 197621814 379749864 502563862 765888107 179360172 968012456 64468537 415543743 44573084 150556708 161452877 743697266 290241805 897309991 309432842 799054266 390512260 544208072 60144801 648132314 422010268 496504577 310054672 850612707 678667679 850111965 575131241 735730599 975868852 983868732 840195064 987123181 940849321 974994021 105491230 985179962 971076039 997913485 668617289 895592527 396170649 951174395 529836209 957295517 20902128 529742363 846587439 980919902 803370437 946542029 114508321 667254366 428659270 445869998 695139286 731356966 289324830 826656459 75736558 594160924 58865009 618274927 91142148 772633384 36945568 619585316 466362692 764507369 205810192 981538498 33287991 81123778 369045040 576501671 45041458 283506492 598726598 699277518 128463974 683581170 144060054 888655924 925647287 994470801 656443862 731948638 217972900 807042011 819677144 960949849 309039053 929937646 331456127 824136662 226403337 660287194 812500113 992726058 914166674 973707158 329066987 495407540 609750841 714066518 973971109 983217030 187581216 679464950 781647756 796136208 834914187 842264269 709664462 951460196 369862773 594807973 647945492 845279630 760667801 990771330 105625590 553080771 822791853 837792281 10319145 544081194 540569272 650484726 155072746 792971512 297865899 419381823 603817503 756774493 294251515 664637348 346432455 509180443 441370315 989164042 964927187 973372390 960390814 975450241 189283104 450537877 222651115 840582074 764350526 906245011 657522622 969142535 887059070 887327975 384481547 419031581 570346886 733301610 937709273 972599290 705968869 774115763 163947711 915126062 6250087 305182196 731776688 854113674 61283928 585784093 823726015 894291577 711199584 732682828 400219336 718193727 232127533 982165829 219768822 224077957 917255733 989501277 511151022 742430956 497402952 563477002 696853937 711389869 696442674 776641060 644542392 809017799 355073313 915493257 556772936 587784798 96580146 942615849 465714172 783379803 641958288 676520700 514932340 830903221 264825752 553317269 396303815 892913174 232839337 907903769 847288831 856411887 579722158 937052664 786513840 865003328 474603600 798462490 105065349 321214463 520991601 620653024 564721071 981815504 853021281 980650264 89351308 944434229 794290433 871577607 475850323 892214774 947165889 990746022 547440741 561526883 646625050 886917324 833757555 925993872 272451974 416842425 956936516 964114784 979756171 988760173 600506495 964557946 943773941 977193493 804587105 846379792 482644311 834579036 660650541 828589972 591093495 769277083 595244258 755589404 949961445 991367359 384977383 399488566 455592822 508646243 609895404 725681380 254430020 637227169 905066595 986213512 197998245 285350500 858146008 897882838 897819495 903814897 732906766 784244035 442305483 709730332 733381508 746268946 720386585 876075657 745860593 806259044 554353293 612311261 569589200 679105344 825838569 871387163 277825259 708789331 584509814 963833324 454514240 607175631 526903838 743063455 780170002 859953801 968467769 985235346 969291167 977022936 502289744 753459640 6532745 25864655 891192644 957348685 561052663 931386119 116170221 573514167 264878701 966324526 229207258 947007478 725353075 947651206 273881741 469546888 246306227 755483226 174925516 852710577 119720092 946999723 310880539 781067482 939225424 995036160 979465671 999814586 967298803 984003768 59405623 889236422 656196082 664116874 781458370 959315994 772417482 966038598 776204688 834757424 371742358 955567428 645172324 877564835 917868720 965725705 198945710 576483463 865785358 988504983 369359759 873735144 232442393 981563193 176733897 555146972 154600410 589997898 821309204 850445764 599891015 671350722 655699856 673337858 841136148 876146532 371965242 672732560 40763855 217755887 306682478 713583558 252006886 615727184 790534272 977834928 907211871 945451229 562032800 605086264 78641298 200531714 857343086 965820573 120071671 612797977 550680273 749550051 153078443 361669755 988789655 990579046 179825918 581958129 454217853 628706023 358746346 775644831 934311147 938046827 660745321 723794447 79406315 798308258 672020374 868396836 102273855 206656726 917665578 924215472 711351995 959788923 90414784 398745378 485983559 744245355 757793968 955907944 855604715 989200585 534211190 747013935 252141015 803967471 781773036 953928593 374279098 577266972 195936439 506140402 478700956 947849699 29756677 588102716 501372332 956586477 801374361 829619869 403266605 620996790 58409194 942832344 292114344 844640470 991226588 997136206 521959702 712848375 657846491 714659159 905665109 925087554 399079997 878380552 162693734 623039268 393061340 416483637 884901721 892865011 765629809 966555273 115426597 935808012 949489247 999825784 134102655 204933330 490548422 649497928 677351184 897394927 898496603 957111126 153010072 741692744 517068735 695679570 50696292 749186779 125691076 696832418 989510685 996435494 886708021 887321440 393923247 644134830 649245614 790398206 48696967 778803664 198979746 266160433 208101430 927359699 2982261 141928069 690007730 985525665 922693699 991329729 123500765 269733832 130267463 295549470 81020171 226265500 445745633 504527727 661444491 689116810 635123087 775559874 907958206 917218870 645450474 801382880 143177743 614852452 235843646 737619606 383892427 812942783 721232540 744012260 672439340 781300955 81566854 732981249 35724194 788595607 970283152 996002702 927083841 953572893 3703718 720560164 376524189 620410776 598149263 699072919 278654707 824902997 456873079 852773285 744728304 800605618 833179426 988623527 34408022 900389149 880443601 908905612 740789090 833761405 273484414 381262636 106389041 318429240 251157130 319271196 571580181 765912551 505638158 976488069 819416755 916931547 270224332 289885319 203845357 571311476 936109624 976226112 720726482 739556489 12870450 378150159 335972901 427542811 98116210 269261307 230753066 237635853 537384815 862538888 373115 20630276 996498468 997732009 832420040 913787646 533992545 821459216 806179528 986232074 476076376 533826336 569349836 973457617 536545300 853934842 816907498 934726749 215837818 907965858 580911555 671798941 508074960 701581762 561598949 635538123 292344510 994219286 691814647 984927259 960372350 993479649 413677887 798504549 193416311 353452088 82491050 606576956 370287592 471144642 366388816 783493835 923432255 963862343 513192595 959132389 332727127 961699186 352878620 675582048 228058318 712470942 508843405 871186452 977545795 991575713 268823865 492332074 738477222 987359037 168916106 553949238 429551424 805329082 4586822 679504653 684693124 696739636 71684654 257251327 494638991 595496089 416793139 468842071 564023451 913385361 490776116 666159619 144143430 800373781 1909746 820128923 181233369 304715845 571642346 929272049 938338025 954891050 320211780 360466665 672357533 688739872 114874628 218261634 549763147 811633029 217193736 709797739 952423612 979607202 810108263 912739699 661288716 784083084 334899673 406004560 300975514 770290706 320098165 468344651 705981676 830729404 904636275 968157741 593693615 941053451 540989047 607009839 9515936 514158695 615839728 941346887 204918385 832876078 859204198 983862451 3706591 705155563 227447320 437385178 393078836 775259898 18906095 55648431 377699992 572519533 153715522 699598077 386856219 411457906 920885649 924592095 947395316 965511932 39890776 958562853 814804489 964749794 449721150 753411131 65308702 522874976 824761722 996839530 468017626 762249854 702436570 986032587 540357624 646897288 995853072 995900735 779839783 820864269 369201602 908756417 943783078 947382079 420678308 860750856 810874241 907473576 825707340 829290165 702796419 769216153 217903858 949427647 496612217 777602634 530793722 700287390 488221250 923328835 314964461 364613552 580262198 764577196 130873167 334257208 946888027 999719536 327113443 921088598 343845247 868406147 207694243 716985724 743096331 960503263 640625707 993369381 295745273 528237370 933407084 999664102 470368491 809815793 858865356 994710350 992837044 997276320 336834960 857137833 260024721 903408545 751161725 931122571 947039638 951027133 844211196 996947723 833786428 869666690 472403538 615011242 706178819 889626645 975765079 977876713 310994325 618081634 771604101 968448722 192699598 516910933 809690207 861694851 724601100 965136256 693764540 900656235 710093520 824439022 58605008 845098184 662509876 891781220 991780402 992312865 373320844 661202262 977293684 986343241 135490630 841161702 765711158 923759218 711443205 970412475 92706427 566344914 277908065 746853293 8541805 726486000 870693606 993215866 588946934 651635759 208893230 811771895 679169936 752912759 320271838 984798810 141073254 244255068 964235715 978858581 608492795 695619779 529594745 867229537 183927205 343587497 573178699 765669975 726626640 946770843 780116813 920322884 961082737 991908967 878784295 920268560 347143685 785423949 180224198 956713595 820106276 923328533 779180215 822678924 689775429 791967624 981570196 988924866 592865542 775457909 88770822 412911612 146863003 818261279 639284009 664785160 216893058 942487406 297883306 975515643 560599918 748017103 202265365 793252419 543780361 788801517 996372627 998764304 925480001 981655960 447731272 539290142 331758138 481810491 34138167 162198828 267924119 400947200 651902888 746409044 544475258 610439479 883468457 954987574 699158875 823509860 319168284 682755437 882961643 966818392 800558308 805183652 333171387 969121186 837918508 963886624 600687833 990615922 54984998 344061180 564395187 639259190 15414114 718815135 885126456 923714529 621218826 764032164 874120439 993356045 955532740 990964901 425794191 902660334 607956177 983248906 214603960 777430995 487473928 806904058 672799924 949794550 72939813 788165480 764816503 945799820 570691800 999510282 913283948 960557096 775729113 962913192 153604270 164824222 476940410 725414981 920291015 956607409 422106953 515518680 599586889 619495013 647307976 713255142 581888007 694285195 55636258 103963899 924618407 956156788 364579453 453434527 898814661 917298092 252802899 441513459 852740949 986839909 826273949 903858003 128788452 396468162 989435390 993577944 665051744 759911335 951353743 955076030 508337465 636530152 651828544 718627593 697482475 923507450 703857080 704112980 253051245 943449800 765157124 839292511 218471145 426143155 323424889 804485261 285793678 558667189 112571132 261702837 168916042 719656920 623533011 922704946 360916196 842221643 652551692 742565580 511140212 751643277 112640368 319588114 379411345 787076862 786381247 809540449 98724915 374703838 844467173 868017209 287310244 542009586 486348433 567196426 441803294 469039566 704132391 768308213 201051821 572052341 492977119 773486727 632938069 868022010 880405587 888008655 746743397 885289739 27255519 118070450 799542238 831293295 235239698 428192734 773740557 778983486 184698178 961683919 127644870 685937295 20298789 228446469 753884627 865175604 532067894 726892364 148875532 514543537 18903343 909362090 924843886 967612528 111379845 551405161 629526506 672953126 47504287 542671053 654422530 767854015 159086727 510563073 451372447 679866671 679782687 873377439 691729221 948571708 899464762 943526912 595976648 606678407 359311079 817655501 736755940 866224451 371320222 982286727 736861977 971511946 353698366 407611864 399373118 573659938 584693988 754566690 28637114 931685117 429365496 995976986 74916295 233141474 460076391 869175751 86078676 89456819 979745687 990092126 742716363 863893340 535252611 937001705 385521559 904022947 967610943 993397936 138131586 615347369 196665619 981325062 511010087 844897780 545847278 906981576 70335777 400443544 873269784 907723933 141426872 553823944 641128793 786593208 432060955 548481092 765683528 803172335 94355133 919024393 101383582 258530470 321269857 510627497 986353870 991745817 47372968 550188120 142869523 518579593 307119618 715345199 757451581 865308290 510892385 957545197 546887256 762207038 884553483 913447455 128269869 502061762 608554391 755481049 723749068 780221081 697445102 825245586 499336671 806448686 328729867 525542364 294028124 948902098 823928272 978711046 881757589 992412973 640632594 921064737 524180135 798126041 781962569 999915537 676120035 968933232 378608706 582091576 704743725 871573938 791670188 808798156 375866943 380594267 863685652 982735615 756268539 882760783 357054272 966187068 477508482 598031493 966415943 994407951 877306413 916744516 301228218 698228252 440842988 789616599 971179635 982648882 995481928 998845902 670091637 902257210 811508908 940526005 869772547 964864927 258557439 878874314 490879686 586590675 599637549 675613236 872705967 912363913 892760585 908702092 862634600 901499458 563183744 965909342 980766872 998732709 954284755 976219999 337685273 854690360 403289559 972389842 695063411 857227409 531114352 954883493 727367530 743575063 494716075 968979816 773117613 867436310 560596268 931170730 957192548 965097967 965921645 990439811 870886743 991690304 905870381 983972279 486390949 651075632 273676585 850339020 656333583 687901384 545187720 732659460 59259358 576917471 558803893 935991411 447598743 636147764 191749415 671284195 798434534 900014618 433365353 983755451 655292944 726554436 774331066 800562307 115384868 357042460 999045476 999762882 567848036 720445431 44615876 403010004 315945708 946309195 666114378 762931026 192116200 361321301 359924298 929740151 240256151 720266729 111258411 157921806 764312238 875299081 371025185 869649470 529386448 579762281 649130282 773406812 898530562 932176719 814227905 823206908 89580630 636283622 752419756 887016144 834158726 854313739 121930313 194461432 440006697 570216590 706865372 861647034 183383021 819327393 243758665 630243710 117085058 979204166 62902943 977903407 502566155 761950978 599481916 894479372 32401023 872847415 274584099 456812300 480870289 515503906 323172530 736387955 873106251 935146645 222663300 256541551 562730200 632533959 312921087 546035942 76361353 439668855 148172579 333442578 807827031 931232119 364337391 762978589 84413675 735679117 322454258 591413795 521308724 805425695 377040521 468139243 830790080 980950029 743881877 988850640 829179566 849079132 322549525 351783562 584655342 960458365 618409007 833783105 83204777 959830206 858540714 901442466 861038663 867033650 704871089 707801260 576785616 857079979 787291298 998331934 92866960 960894409 350592 683222668 744983623 853299193 914478787 952470116 415397753 654668359 400263860 547013105 595847823 760319828 65152934 520525722 993330296 994881899 445986163 459862052 580433171 825519716 15777934 513681702 924801226 968027445 18214963 678598484 905494322 981031365 929510954 937889507 52090448 750848702 99577093 116444174 654932489 999139859 327155564 422207025 732259546 733186627 969788496 971823285 765415984 908100456 623585447 628730879 435861069 593194118 974547609 982474441 357133863 865411887 94980218 529621410 150174912 967924836 368836025 921191413 363052664 440132281 942961029 956139229 42383077 967753434 985389201 986583477 814342659 983810373 635682038 662672600 661188296 869732811 180725230 285303115 844332595 852581365 328963269 789300205 168562580 485626476 48015757 642281224 182773941 680969052 325925921 382023440 127529638 518381641 897571270 947925997 632804347 655449899 33701214 698016884 124201531 263414010 710054597 931324909 698974674 919108304 915578329 940657208 75422941 975435577 36230807 864918054 784994648 944503319 629984002 850135664 761986088 799126682 336515368 385048806 885114963 980503301 844096329 974560121 409651811 938603329 210493622 797631704 155497842 904330282 547126869 982042097 221187371 716267012 357188375 600734765 84036381 118775974 512317069 788079404 638844588 982093835 123966871 746428708 947814989 984264427 261839726 943777405 856805227 901077876 326112314 623596397 553416701 898670353 329026022 668429390 954243334 989372281 939425203 989459995 997520917 998324967 880378102 910850012 945261467 962579552 196052741 281087113 433570295 947453791 330549181 713286146 566754736 920727629 441343100 921958127 853501522 923251979 459865215 618702246 954250720 959668075 412464881 746333892 623568786 756979175 222452553 425581564 54031545 843732763 983440964 998448069 611225462 672307438 228552647 518293602 540558904 725544086 746574446 887057670 855226884 985743337 109323756 368322250 432779891 864274897 837225778 893276596 389826991 990109206 539068435 919049025 389313538 778894172 932420672 975965709 499224510 848149277 340663467 608301080 808110044 996101379 190295655 299891807 306661636 352004284 886602641 891640853 738600788 998913749 359476373 665062116 565961415 661356570 290218695 484817508 387320565 983019225 675374967 715456667 358859354 535008803 770078208 851128905 57026350 575923535 565065171 887964458 42049722 401389742 86725708 741800333 717304963 950841908 664580197 696220015 640646179 902175615 596410111 974250008 910278186 976137338 534855541 950157083 863286016 864070867 370596955 579793908 579131456 610263415 729252770 815321103 189757625 999152120 706536239 777190998 933373557 945965880 500071937 605409270 967263188 984289174 446109356 621625219 829695083 905471481 418992349 657779179 837489271 986768535 718554144 815635997 794299314 962066635 622899131 636963129 571021495 822947035 126205095 380712167 736068253 879232567 206694407 824957090 120633457 266853995 589454743 637689980 979002965 995702017 735514514 842281009 317644722 390029922 580806756 940169451 163958088 438865649 970422380 986788556 272860733 613930904 708556876 954383673 211327736 827649367 473381841 785446396 619785979 889133186 485803922 987447613 390987633 473434324 371324741 833806930 859135913 929993848 945813165 957727422 159607100 197347023 290365786 693156551 417032090 700099564 611981558 743136039 176080415 471054118 648633043 828798087 24195820 883814953 747256638 955114306 235574982 442168998 510547663 993341704 970991942 989982606 405430343 730904972 279224434 402699696 259662082 505571989 201423756 877527224 456337313 727864787 631063101 937403435 887351382 962591064 319225398 783255318 663143763 809922238 749860115 896401587 931078365 968130425 813433511 871220697 594078221 935904663 645213446 959059036 142746082 239079207 588903706 745514183 146848446 256754359 80186856 719752281 381212808 387407442 355406928 951236437 261156813 888063929 269232687 883101872 109283435 568532120 423755751 538410457 178950887 863277942 139566516 884207271 939903352 955860920 532258910 547268116 941179477 999557463 424197086 943863669 756095220 829105557 565751913 572585436 90147387 927439343 216097952 355886178 254258532 375357609 464675090 513908798 804835471 866316922 10966039 800878159 338428381 901608312 609591454 784305064 835147588 985396668 576811627 654131264 236072080 388860448 759482513 762866385 724053460 731530069 188696256 765838525 622153315 801792284 285322097 915643191 884488173 979772240 226627734 369558005 667032532 910452574 978306066 992482091 54930414 70241778 449649271 742356090 602657638 944545265 213015696 971198556 165399219 178591559 683037987 974116032 799288676 849229566 278962472 844035149 323023415 811413731 127113549 343081653 723629852 734023127 773090888 887240020 592660164 755429712 965814893 986012908 573113869 734557958 27539058 247342124 378191742 496786216 893741238 921700434 311669196 601828584 625168886 759348326 795942645 838947026 166264245 214155107 699349481 839483943 341087267 526486407 225888464 735222143 422442902 520843019 405719778 750192024 718389710 810681697 199715271 504559114 410415831 617821151 518604833 663610575 389100190 691458817 294948635 307401972 223182981 934200839 674707139 958370702 977662561 997675412 509524159 868078115 497614020 517102100 291921852 401054118 914447153 942263579 872211237 883855757 363627376 791110641 751631385 889087223 614319259 911782532 413770398 992475485 646585285 662668353 177781178 193888189 793703131 989333178 258310123 699037698 971305136 977193762 339047491 460899427 37450541 453768248 858074238 881250225 133558493 926393628 339557764 860845665 759663042 972796584 321352546 709702864 462829148 627443941 110211791 875512551 496618413 828519237 545988944 693072071 821521817 997476310 751010973 832063407 668157198 963339370 902678314 992230285 237351932 761317096 736063017 945569468 921580095 923062871 764058909 795935640 504807102 935127805 99873156 544885103 422472069 651794214 623343162 782833965 702163303 847718353 543953749 649495853 558518427 635163052 384737136 448701209 383857210 843138680 309138648 581087190 719785540 879826107 493423734 769407059 376193634 821100524 928840422 933479800 919968993 963117144 681473685 730860135 845932042 982033029 642744746 706328283 835533542 997840971 13677828 760762858 566306914 898615433 49306492 736716400 154530634 820358530 814869005 955087804 106418545 566240014 629354581 643784754 56826332 821762080 752147359 957393367 638072758 745930794 774150804 930405804 201151183 368590704 234678036 915942329 575043956 924820572 761932231 914817619 481644916 704926722 511531604 778981744 119285870 999296518 969025753 985198436 481686435 935656644 725105613 782048331 119774634 801622473 457795915 901761554 471428652 529430296 37877129 142050083 413294105 786047088 915398034 961099811 923327271 940877333 495756195 512759300 53631401 818475977 129267031 466114635 492049893 505465420 111383764 243545117 390170095 976154454 298052847 586729993 888833942 958916519 241266192 676466472 847374618 969712524 154255499 326111882 502064077 704240747 254584163 375663965 305701393 345007198 347366539 726506420 193860649 494804034 26763600 421837647 160403509 355545220 444120718 747256006 535240884 940819423 132620977 594354500 848614155 956186334 233785469 836764982 468476839 882071293 890150218 910330936 801881819 958234633 127884610 371449228 78828488 562820447 357536270 797250698 234895084 241612361 445629993 746216063 863204661 896863847 926620355 959405744 319085148 473147328 13314452 60332975 64480489 296945096 965053570 967459663 677465137 799139529 710476127 913374779 141767023 210657625 571648824 767645697 137960652 236436426 677680119 837623030 152165858 594080276 689661461 966492789 928034323 947493521 19173240 35689157 573533656 778354414 524135402 844004689 627153128 954534245 996285929 997302440 476350395 555040292 50301847 844261184 10783217 609282880 200143740 776285933 587437641 821665491 336865392 838650966 326547666 574069249 438926218 878034066 262798438 717461064 876546289 952499265 74445462 232984498 27794731 296933671 200307282 521642739 67911984 404142314 699959625 995354302 292533190 896345381 509604802 661396382 350394022 520528319 389427578 935842836 973561253 994134793 554791983 940263884 454363420 689507423 819661252 896879985 459299708 599805985 576844614 779083922 635867226 671227574 2931762 983311873 723726045 753658156 385867397 891051540 433823095 767025807 304146401 778970405 609488538 877063993 595472250 915815070 488981881 954564672 49915163 793796720 117677048 917124641 426945490 916322017 58670264 316316934 348009697 362082687 162874623 554311830 299601669 803514798 31842329 421907184 691316121 751811368 663085934 869566142 684315395 916554344 329490849 729078279 617629708 622072833 486606661 831033184 951178630 964518675 411697129 754496427 724109833 867525862 51537266 928612650 33737455 775360554 880084479 982687354 216382876 677163788 381342887 419510469 632580014 913949804 231665437 399832680 978429114 990754925 9851157 543358711 826245477 935060754 959276919 971328937 400461115 916808167 760187681 946768234 556987198 873446670 58091930 800482509 977860294 993911538 523023164 536318122 498539115 921959939 29077154 788111782 371410188 928221983 824622138 874923699 41017546 526809802 145134538 742428410 99255679 226354045 876153751 917213071 27708662 379379940 800761949 910795882 593982465 706314194 648883782 684993699 708807091 760787962 461893877 693252980 755823138 961602461 108960711 585410244 634215256 962003299 699829754 908096931 914224983 961103895 155575527 554423237 766242277 857571870 324168572 347737250 581570801 745384910 83922107 681087487 876069990 914421904 962763530 966218808 93530502 389317887 774041603 905730870 169941458 681945969 774735046 876977721 572377913 945527748 984956494 987706873 908585251 926465502 614414018 647886841 630496601 664653635 534587080 684317558 607416207 631861260 410269995 472062183 10648576 16815958 391511643 622382757 605833031 903346843 316214402 426873709 107953387 831998880 226355989 497807515 304822334 485948893 294081494 536081341 382190194 511875414 201686945 696357155 623373444 628050858 263012457 936416664 673407753 892335002 14943022 920856217 379464414 916321543 277162031 462369915 529955938 547303923 738798353 780350462 150961379 395994632 619473912 917143124 178959191 917133426 95400401 200749417 974247972 983508715 785148063 977537583 653835961 732868293 626693851 887267328 582724590 705159239 884323120 962805520 783662438 889675364 212200023 511762669 772996035 990470700 358727991 962289538 259067756 993792579 133220168 268386896 773843392 996003812 773938826 910624858 875216455 993387400 854227523 935389737 189019248 707255857 594355306 993705171 410912495 925615569 252072341 589183920 716292005 922220378 356933853 389502590 424014575 883683010 428958771 999434135 536573533 968689127 43374454 357570894 275416207 590978764 865207958 899033868 25537860 469982158 958730272 960861815 532100040 971140557 247395018 262914090 832672239 945769459 157242206 487913751 373156580 385897606 525196992 881123569 355596670 497057845 167197717 415236765 741397956 966585687 891771648 948862366 726908776 938541968 757897108 892129625 518029367 569022101 758553603 873519960 933047819 943945066 420883293 923475325 86820008 820961444 432240665 914970933 559615077 815640792 452244277 647277878 126074639 460899694 326966902 823282702 878872120 991592269 584342788 624860903 997157175 999438438 641158139 685844808 660096728 765323876 522796205 550841515 666122388 761426418 318193778 944873243 881749864 988443492 302002967 684304885 570955086 647020232 281948742 423517445 60011795 990523035 521560234 931309762 801865642 805434151 314855664 337427126 419322565 473423919 896991732 968627023 822226977 866689047 624545417 875343913 274584284 826733375 181688937 457257302 347485882 899395621 279222656 946217351 644137773 715674660 619396862 861079930 739363208 940523634 916786426 966155983 242426782 982679475 639361337 911470331 32591727 376251553 943242197 947416215 320143827 669924597 49073455 490266344 175048692 434048490 306578506 565294745 379826518 968917691 582032843 780681239 538172329 946060357 205060514 522780270 963414670 991532742 890177054 995905033 921768831 935749666 768189198 799479405 583909281 646282154 97942530 411811046 914039981 934216540 601346917 773538798 332968449 335223604 126136608 185654191 197596576 433711902 474558558 778298224 418465738 642737711 717772284 764314466 248939905 891971560 251506071 797171477 940938611 943340580 766825065 798710499 945754141 948487269 177415512 704841488 529419492 989928645 841910078 984725365 242303164 904063653 364233324 867282252 235964104 687974585 403887001 531686082 888261838 982283015 682012338 794433965 54311103 706629241 889601524 990503710 966283353 982749549 585398431 803688480 531402161 720677937 543952013 574793755 59559602 274575406 493679550 755702262 648125663 813631005 427309606 841760584 733697345 870772272 320090114 895111783 816159709 974814737 216507614 220953470 769253513 876546046 334950802 994676405 334803079 371727447 925399277 972707659 118358926 640571688 13392840 990860353 753196028 942973145 539617818 924041784 320859364 431005334 545431782 586343793 269661830 814392438 720749335 804573995 371266183 794643734 26631499 675385091 847745520 925350310 503625887 983362591 545579264 657986985 408504506 881105957 592070667 640939993 53168125 612161904 156158311 749855414 501076295 982994609 859836385 892544494 446968428 865849328 268885815 975224946 154107572 646298183 306218320 364703040 1694275 785995939 752300825 873143431 169630912 783885326 345954389 381701694 398621560 898280046 537667947 680617490 444447116 618855528 92433444 383092626 324500159 374280983 407215924 715292071 793766048 984458624 23045159 396924826 15742815 807143144 451494876 737202950 115244202 600604853 977270953 981968405 682882615 850242905 561160042 662298134 954724089 995377143 844210640 912483387 854978596 902747876 668228855 762386459 386830539 830146068 803288715 817964136 983067012 987806042 631154943 748656619 138884641 828718099 411317100 898478746 392486019 893321832 663294802 934810293 105313320 527014587 703422852 783582486 630530586 631163485 437327524 956739021 186281843 226087127 916089842 950675159 351580467 605589195 145712436 552250534 348885064 642319355 722277750 883287534 838858046 983009532 598385747 704040538 114852567 497356233 198492237 320325382 249929681 360188752 785680769 801468634 265886960 536459645 50132151 742308326 503606033 805875141 134447735 225374308 291398335 579648503 660002568 953688608 382450970 611322858 801176864 802482680 115852320 657391344 387257058 657052481 885392385 934933454 854640804 888947341 587267867 724497033 47090480 771133876 878204547 996526727 697679102 911696706 548860374 858805885 143277196 442413050 922496192 948941991 355300117 686378634 388249944 623656743 592653876 883056321 261614912 356372720 182635252 354473990 665079037 807246564 342815733 781610708 2237654 762296750 371684424 540305666 700534299 710231401 385250448 499524714 661435799 956674929 281987695 859596704 942259579 989218396 145823778 790747104 47278115 816444150 157732688 642842192 573568799 663335964 588223628 674129207 762117656 845083204 741925973 865767698 353718077 555596068 682318692 996350983 34055973 541267058 852160802 890391113 172366285 555966222 528477273 811343091 110068550 716770857 965561369 981162047 659439622 932261706 280098998 487035628 953415889 958661286 210809065 264526184 906678648 949034150 352545021 802027819 679023750 725865087 67218173 89311892 680109984 998888733 905758854 957221248 335530254 852615175 299371164 997236310 658044889 996156966 878998217 882867645 957847581 985152057 681133742 772283705 214212690 226852231 577380042 921324994 77552963 197709619 45376048 984877600 823585485 907967545 755149999 798031403 158616403 880687536 554526862 640530538 801774059 869378546 540721296 821662559 688515067 821680061 368378448 590950615 937704365 980385752 840175081 998402791 517201846 564832976 912673672 965484031 781550367 796908538 719307889 973585567 373620377 833112421 24143232 64779303 383971658 664494841 654500752 721644748 976850836 988767366 894793362 986760060 204010376 668208348 747736090 992034065 955678728 967540952 47311191 956966787 917922887 979298965 283606792 575311700 225748736 840700365 901015390 946683361 711794354 753794039 261217113 545515913 902591305 919687155 447033888 904387519 848599209 976175604 351959235 647939642 48984946 511805779 267718911 818696259 425587288 428834320 24000171 291106463 880100341 923062567 122717067 735352773 232100059 686520999 753322677 995753648 171368464 520245544 758736422 992064600 742356856 812146414 335004014 936899961 877430821 880908040 838522600 912140614 982413954 984976913 549180360 664988555 52776540 716905052 728935432 905902747 410376760 959158865 747731120 773363835 541357061 613072491 910160633 939001812 694848432 705239462 20218771 510949768 701072033 977498665 912396379 951672215 265975403 401181083 826678823 961489586 642969271 965880140 411409865 588185025 41251214 490997868 162031996 514067759 948391264 976953107 642994166 698486158 650663393 853420602 46784144 454506337 338009187 930261277 901125532 937384208 350814333 594886893 616614206 731308416 564319930 679025412 246453582 763086091 134383855 150744586 672334270 725510343 468829708 944946668 481211705 678394074 466478540 992700596 322943663 445819289 294762284 932831356 853838824 928517199 28583788 677021009 922716496 946713169 618928236 911511440 962426068 972723799 545097813 644992318 801144455 924011525 383893558 584730602 414540039 716180498 981664600 986905558 566182727 629320216 599365377 673664683 600970872 737141417 343516143 489866776 217728598 672689720 929724106 973447220 582048491 594190269 841476288 885504856 103882361 482173023 253551620 634985951 256270457 634790981 216075740 444131565 749302163 957749591 951130894 960006575 333969658 852221738 427222626 477847562 966616736 970412824 736947448 783183094 906306002 989464130 950896644 955794609 276160927 557048489 982624338 993985334 671799020 719972904 769044462 787863090 317681008 607141704 444879622 556701523 757333269 885258706 777472315 944787674 264326021 329151474 891303465 907709256 706568787 874362401 444186763 824855928 857451505 866922639 959094283 995319423 720275157 948711494 850533134 988562843 826093924 926511888 756974735 855092354 891381063 964024046 89235781 92745907 588998788 779823850 755102371 897530362 211899278 532302892 721706843 950860017 990056110 999826176 384110398 577051106 420321755 512484209 565562034 783374820 81087779 725075104 622786728 860207216 707153979 728285103 123414699 956511763 845769277 905119123 175651763 694383125 507867174 816697913 822167727 975485759 133334136 998190696 189458326 667386841 748435743 984216061 923112098 934492865 250044870 804446894 552993865 745638944 1652289 816635466 382313469 683147340 365151101 826924037 455627676 476130477 450407529 464626703 975086503 982138239 375009354 826605431 183452906 852483189 79373147 699613121 314335735 875344469 878312237 995434582 206547123 689560344 299048182 448780827 311623111 509704726 733825837 903163893 602388765 919400633 692998519 931613403 326145971 685999327 691458298 959148785 685990787 801410370 947074200 954971343 496629556 634614863 53459226 951399662 136262854 736931246 509503638 693731029 799888829 947966525 400277077 743239473 697723559 860479898 570086990 812823111 967256531 975059558 458302853 978270827 26396951 59132834 537696279 808580892 12331505 546649230 541031465 845743889 678353894 705467109 62550978 114862112 245594199 492870403 655691170 875862958 655937065 840339808 796060610 818278334 870671481 897012439 647175244 909636044 267830278 401137128 225789485 710357858 850733946 953181857 984193820 984879744 570056559 890526233 374580205 744295312 757098695 955815393 166757747 650715210 446282374 816871248 996441471 999045758 857457107 862310253 731227619 898984462 221141714 787749137 598941359 974043500 679889380 717742075 522833990 793993222 316680805 389683058 206532751 566840366 826696638 882179904 732978264 910561916 851471333 929427013 676489159 843341740 652178721 821861074 511587408 738984120 639250517 821566703 754603426 903491238 554978169 884326766 846336602 973415181 106457610 869331112 887118402 997767588 100203293 827481297 197253487 778968772 668092708 713533557 602540449 804527582 854075747 904240619 211146673 679182072 265626799 455496585 78092254 837053539 14455093 508948916 758470100 993307264 145779001 587364488 97953575 325880236 496456937 953281982 443692838 697078705 709599723 786133947 280593432 313856235 883571057 932306491 273796058 455991222 605538627 872305724 932185944 981904310 640592083 707572044 262841381 865880393 128153305 682037127 59292002 230357274 340693317 707200727 341293467 520667930 806562324 861135035 467768493 623986358 334621234 786096888 607916773 833931102 633166776 911182034 879175066 972098735 373502964 543820072 207186104 964571560 538423193 949843745 864604821 883289005 491130110 788426118 393389833 589911092 514564779 879245304 479999972 749022628 746657364 869740843 807109975 948685013 732131717 798907211 454817693 761733616 431176708 912889216 310913714 758249201 885363643 936204115 128149442 347794257 653429543 878545154 59440089 817240341 165545469 448409824 388787970 926074294 339758865 914049012 549983111 995631933 519840772 536071457 237236432 258193417 918797281 983591953 213539586 467672374 67985178 917084882 185853719 953384117 424875926 692649252 595431184 662082599 592245172 660278203 64576974 436343456 315164647 320999290 980755178 994980843 822203768 956253184 229849431 945661141 90670456 865076306 702478824 916410477 403469682 527753963 81395740 548301459 314850096 400328429 388829290 685445241 42313029 738142185 777661455 909377713 171349930 173762012 760197789 961790815 199675236 330865101 593048856 865726192 36900827 145147365 454479868 705627639 793053253 934087304 315046716 830364723 910262403 911869917 170237831 248374558 564052425 945730981 268852137 388795395 822948573 989411560 353558388 887408481 682825538 801122065 503672837 888588125 89735170 350922651 467750123 750625977 938562247 965393638 774762819 955642856 857293707 893016902 977338831 985563079 77237369 516291345 123177277 931761305 554850110 645709777 123312621 553696361 994333038 997664953 770755598 940037571 840632382 999062056 765902317 887312319 805273261 977717556 61344758 223720377 867780401 903440981 57167302 857421960 489541805 677854853 584212856 974666355 252233104 897114754 275489576 954857482 334127463 766652834 398432514 498938770 960590398 966491518 261892509 761160581 897663182 908504855 882972460 947169909 672591693 999556679 530944562 570169789 449088411 867203106 255883710 789803317 698486968 875170723 591716177 974593042 377435639 708602971 808910729 969284417 759047777 882304835 154223349 514994658 121321622 278064827 940465770 973449902 144053544 651369705 323369778 396068860 979038387 999311062 268372263 562296689 549417064 563163237 432312984 622450291 935437375 986684431 279271803 684048820 158590465 311931387 163701434 518654461 169580288 510017045 485124215 793713067 690412968 810266920 400409776 778874075 873449394 889508542 989162467 995912295 67815907 225346054 548267237 970052021 841531013 870685935 700061429 941708457 442815735 494381073 457069023 655427597 206529176 715842592 208275683 893696684 5255302 645041974 320230989 614677262 648775633 739799605 481325972 973564404 476024040 756711665 494584382 772753022 762066401 858007272 550700829 573504636 794991599 905462338 408729355 691486624 525428139 879604109 278275565 847436604 933951926 962043026 811343494 945476091 558756703 584857533 239958691 703417976 507102093 563112296 587172446 610113318 48360659 110847690 715716321 992721723 727521121 839654529 851962391 943317152 915271921 917464792 465471776 671646761 700943639 849181395 841396685 850208103 668192984 734119828 126592739 335364013 480592002 488957646 577188317 645342659 254402574 709408917 627457437 642257989 819217604 826880727 225495214 466090243 261737131 467525769 402194158 795065351 622052510 851019707 25737728 139996848 262297083 977582780 393235787 765822626 307450444 877990917 322322882 566047302 436380708 924343148 583826793 700072786 494117706 501656055 761182995 815290281 878543528 967153623 855755580 885938057 655295809 768674984 149017059 175917113 189298485 334004937 351639448 881502500 11754500 950259156 390324313 540121065 447927675 968638379 886222591 930189717 422185226 716436075 765167061 839661747 602064919 770163965 209001322 684960282 23508147 438884854 364583500 783778109 46758450 85821627 587834334 715389057 519006958 636312959 950394311 966891440 335550404 683443835 64512365 686159553 986713612 994558239 552807325 570130433 820912471 851551544 569548554 608948565 431732146 506879245 505613552 942459729 404861320 505262365 302078448 917194171 289010025 998613331 552192669 776421916 242885790 356602772 662227479 778456023 654099191 924809246 856685677 862515069 127914271 749492005 852558558 904608555 58024186 277305308 821819498 868546002 827486533 904010357 830292372 854756194 41702582 243815501 226307701 831519032 353113160 506286500 707639027 734273332 979516296 981893526 368446318 815919978 720974183 963254636 25981717 844587152 448777193 475316694 368510473 922714260 552337698 747690218 465224970 504846285 591006078 644831700 948718880 958741594 291160875 740590440 923627325 929062569 198003346 389824557 210253004 627191823 928618536 942490986 491686830 628996369 805688171 898640173 870492545 895287073 688283139 813719387 192715211 996424278 82649861 809959286 299254703 302201451 222611336 872288503 539626618 629469773 889583830 892765533 261322268 445318988 563302760 754361737 705012375 808669083 185566057 378093481 949678664 987496485 352853635 652982164 414735847 971803459 101921447 914200184 435469648 527210836 305013566 780865141 713737567 893628347 630387930 976308688 729814309 924826483 749621732 767189526 563701224 660455547 177641996 791130559 14324679 117824503 666191383 817415210 387182604 488332867 172240392 481208685 271381691 998201251 35921887 809140703 854228798 935924141 577060817 799717776 172304681 253664050 40621837 851701541 978992772 980616675 896680530 934843421 851005308 983692229 93339080 583516681 46961900 493861781 173731766 447655847 807750821 907516389 628435576 705850672 306376826 793176488 482524706 582612767 955106232 961252584 596982503 880925382 628765963 689608344 346840014 985876445 433229280 940126560 676684673 702370491 850301818 937538923 265945821 390334534 410840140 415546515 690403127 753153581 611304074 684281033 466035684 509756197 862671950 963554870 902660981 952821268 25664638 195107204 950271541 996639117 294478630 374872938 284238101 586810942 178319315 467158801 695994062 966484519 843644339 900868307 374809986 575571578 324837080 906073094 221753838 306121108 350442887 773003707 94519930 135099639 421036928 851797733 292775143 859742847 82674182 725098993 935054605 983508720 886476786 997495550 6882674 276142744 43811951 445160603 150218835 756420090 95233988 276526887 973021514 991456075 452485666 954014475 257006858 960479293 518460775 847563312 449030266 694441568 458582587 767763535 61414496 876677440 269451112 814026258 921841141 984709196 655127313 729818352 862501245 923368222 995024226 998670037 664375380 951795237 434217514 584518618 96621204 545444054 446122419 816815672 14501868 848392939 413803496 878008538 418213571 947491767 217722173 958461226 280091685 937373701 813726146 986599051 455079382 832287766 276078274 992068864 13396301 610113952 937226915 992190454 513279146 662190005 843876731 900054922 868425577 915127860 823410969 861944208 468259831 672315389 776157954 879497136 990052331 992202325 800480339 892539375 783071524 842342199 367783703 573056451 652835278 981755242 690291478 868872985 994303009 998682311 259114304 920428621 784748371 942878630 75780744 403178786 55225412 434152759 919112152 966046248 965932618 994473022 714556341 977515793 346601830 492551354 836781189 916066435 805794742 867535153 912206214 948037113 342604844 803387662 265365188 932680758 456954877 515170633 992729747 992987762 170487985 910952974 869571178 901825010 785103843 968365679 601586315 629002902 389309627 416104515 809716119 958144330 228066047 302598854 687240382 745344983 882548864 912997969 390685787 736485916 957115969 992969452 137838 74644592 585835420 712546221 776064757 911581250 525904075 977625659 21418460 850092837 768979545 849357155 83992324 514638298 202335396 924723945 474736251 961268287 959552199 970879798 546864871 623607677 521825093 609947770 74854289 760507968 399452466 960274912 704008733 754823466 843056619 900462559 9222269 520937274 265955201 303885468 280775735 790543193 224522187 355648530 693716866 960618285 323499932 658702981 99883250 417436998 434322447 968313616 718106335 775187946 491931424 511166285 219121691 658348497 145538653 482530277 509407082 891137158 406631345 425484877 648874161 902000223 639233423 671160663 748077281 895872024 814240928 889567359 528407843 930788570 720224971 760394866 495261411 947345280 24467985 384360618 768365162 994336771 233372808 703439710 870578017 997667243 611651819 698223426 311439554 430924226 189325050 439061948 183767748 443491208 135740879 335816428 344707550 442383552 992044851 997936519 662793349 849964788 800284998 962670790 320367605 971578158 321599271 913291191 236876090 889856116 437084876 469249596 925981763 994474764 497821562 538605257 505601883 990432956 187340869 303787037 852205097 867079125 521680090 762333316 156146998 208084961 94012167 411012576 87805854 475842828 869511830 930433864 329194083 500419983 927740381 929981599 620473513 875750387 64403358 821196719 34318118 757662193 283824434 849022172 508432305 806555879 828758213 883371566 380354131 883175462 645145682 828468718 441089605 956540294 646178393 892980466 72374260 123391276 226049810 260896355 459030623 489069752 216402791 572456037 640783340 705753338 527613563 873972804 433450376 748879483 73264095 375859989 646452835 666871564 300916769 704857428 335470541 695505304 379086149 669826328 786801016 835319653 344527050 408978242 45471355 777508569 143189968 194861994 945005703 954911386 602719301 838121219 726214805 926844159 534314066 897123447 598999119 732650410 610894975 743589291 688198065 762346638 913008066 970387845 739492467 994118901 502178294 780107425 523994518 780022824 248825265 862839885 247041861 628557250 265096255 394702683 323848995 660678769 942943174 948780910 345911625 961081572 691374143 721883483 425840149 607582421 233305104 544589201 623225376 767197429 181746596 562796731 289376256 350200466 5898705 514266484 846402344 989025748 587749901 977893926 76583919 792957123 836345005 940740550 361876084 652611352 142887944 830112917 973951864 994872963 815151855 957575331 957137827 986868284 791029971 987669293 880315219 920043986 113237121 561629406 49694249 202957309 43715368 505151367 187110856 434621593 730123488 968771003 345120492 675056211 513731420 741347736 870317902 914370474 128402857 140032346 552689792 782962981 510998753 667925616 685778164 697406036 756583820 830734561 307907563 322092848 332244070 676913468 269375926 657248237 185006032 519744358 939748196 986032052 989750163 991876582 953965074 981777103 320722581 745527438 463861367 882131367 788266723 895496751 486596159 884135292 659994416 894074160 467553550 512225468 311875460 781887346 263510868 933636422 263414913 361646665 172254427 678723306 506631461 695313454 355538702 827893935 277976237 595189547 350614557 889120389 795470879 913638413 922785998 925211988 448147396 700563580 380969919 474388616 913430975 981736406 796416924 969599178 108694206 192790687 253979133 993594263 265900116 726102531 422200756 777398733 909065871 959110782 973824742 985696859 548185688 842915267 757452880 893679171 746864715 759012023 692541668 779462822 193254961 499968891 446211798 674856473 416914752 458179133 950727353 985006701 776770685 843236048 79817071 467296595 537860252 603737260 762415704 972442445 599793097 988826182 46008973 754515096 587260216 710646615 387619228 444986502 684600461 966034089 953569758 995553916 492994171 561893088 914039745 937994190 686992964 905834914 109725563 612842831 944559198 961576579 773054409 909458751 246647556 563378927 327115925 521759851 400626750 996819945 895566196 981361142 417992696 991368069 165734407 190567977 948724615 979578542 223582479 925005860 463410192 621052157 293651562 689096941 778780347 973643049 125164624 157078152 894175555 964698259 998338027 998536614 405258388 775345316 530819169 892355579 237823058 995467778 345378320 362127159 286074251 977175466 20281720 568670361 222035229 441498940 617829297 714841633 910081903 964613102 836777748 847346634 479999778 490088024 130619024 162699379 348740217 542417028 908253988 995106496 990844174 997179009 393133503 571142667 643197650 979133160 634849466 686588704 697723304 862100497 241091103 371453838 987802506 991561472 751894655 991512669 101337026 841431746 270083789 828655911 444334511 494388585 816797503 863676999 507256905 898078213 248325489 597189739 922341757 944134816 757868045 778436579 772182318 870299071 532101968 572415216 129183848 712188498 105056131 507966635 301464006 554846176 652365240 848009891 850395012 989080635 722588672 911162415 567772917 775805928 786638523 865692805 316259776 356157610 419342343 557395749 905366611 990594259 151567407 614103615 378060464 463400677 25340005 118587709 456723420 955120750 199065373 522955422 572547870 855081674 265095145 387856966 885780187 943730991 891660056 943470066 592844446 927767947 529779470 958470538 48594308 263983163 834054105 962741312 205547790 230410497 443554546 886187232 404599208 984270639 917856928 988983103 547210274 783423948 631468061 973493398 184787467 219905326 111768144 669300647 964058965 980492750 679074079 756752990 798679276 922007500 424869118 544410701 915119184 975487361 123872284 788021402 286315676 815869482 498261421 655334356 473137110 850920287 787997619 827691005 368253836 676845708 861783139 970908495 154832881 778645806 568750353 605859829 847903381 896216639 671789490 785232446 715704345 791981368 339294355 580503851 31728735 837941243 780461506 795143103 358806533 488040849 740670455 754462682 275985119 450223770 672051642 701885157 963539757 974041494 786662664 886835661 523489254 850704651 361321879 692178434 372905860 559109903 609944423 985297870 907048214 988539854 60163326 997707541 962356924 975887660 707505033 868248113 936800201 961881525 829751870 927547403 324498366 496559572 581034636 644325901 153594203 461050305 171701827 307236984 983036392 983059279 96339067 889126368 135047905 684269596 434691427 708564828 989838611 990570056 953905099 974616239 133206697 620939630 707375686 861296217 250310970 770968689 111952247 781226722 399647814 777194586 258569437 318635580 276011342 932055400 839093563 935338635 469316651 491605508 991106709 996190638 766433672 964962206 882594820 885084339 227448499 516828806 108974342 166182167 435325076 762634834 501775497 544645361 549032867 656172830 768017844 916405499 93464011 444489453 691025781 755403403 632359457 804939170 830474166 931604819 667292435 930548901 308516102 665248598 381042837 899655288 656882571 667658900 383806717 608973510 628411213 802664730 309900617 592619730 584372011 724707223 794570336 798488901 990696815 990883332 841797030 883781057 8936919 349848398 717589208 987976202 675130778 682963534 503623949 844728817 773731552 854467860 100765121 880132174 790706324 865188633 304610585 711894287 939073943 986338065 965447583 999116118 674641268 852406236 114116981 332272660 512126065 556650523 498465369 957109487 319017548 653642255 522217572 734716756 525584228 994339723 191053834 797857193 782993785 845554257 491644743 918716833 115596285 434162520 812197844 821364068 234377832 985095947 204081352 490986223 841386072 856632658 374965405 965234583 210367641 323976034 973252270 983202323 767424031 830993686 488125377 664856543 602569082 824073963 698384789 819995832 410265201 450015151 743141526 817386240 461713396 475080508 610826451 792047234 175746847 829092518 735528415 845101344 817592729 902621081 657129163 873249829 553525880 561071977 603016580 833525833 3955543 841599472 663645908 903793829 200133801 960718241 689135831 843483414 539718336 634356442 890764649 996869039 188612140 479112134 940369277 949862401 165178633 176571727 911999504 938801611 213644430 475919713 669270098 728618416 950454471 995288345 538151914 890617825 546552853 616062362 337234354 896124562 88855787 813528675 329709273 444685348 885839237 937391702 514988771 688829277 944333657 988006855 382889456 764507786 595643795 960455825 21534931 521121905 868409964 933279855 306830071 778915471 95375329 246001669 996515077 997920902 560104414 735482192 194485775 299309861 16809590 406146522 996883959 997029311 287437879 705560332 69946951 461868905 40537611 341218812 705501086 886881122 785630147 879366249 554543710 826812275 833641348 855165311 148176502 741414487 542129526 863119054 510526004 619183457 816425543 993301554 128201691 665148132 192971295 391167338 595108355 715974243 772591347 837943723 194428799 300825080 895368397 896987606 63904785 738183616 938152918 950519809 862983252 969691229 214863150 830759725 978868773 981811789 222042388 832233407 732702660 757719665 672355276 859126729 70370721 877714103 632180801 652166115 569082122 839551496 471553202 511185375 431492871 492027186 354106595 472850410 298723072 769517184 321732982 552657346 982939633 987101994 816189747 833142551 241669309 529146897 45675461 988520680 11700880 232131365 659358140 844453817 503711605 769079372 120132366 345579012 139716625 898886607 650373485 990586468 311862747 406842753 380470686 433291790 42573404 605184214 621497660 949023778 251768029 688209212 912576347 963267783 500041905 670291066 786529898 989372808 507266185 650766254 29407026 277283097 479523309 700647997 828590153 911750901 523224721 772732264 937063659 983028511 746612250 987753454 405555837 959479116 449675479 950843161 251169290 585742495 564714668 887265883 680941301 891047569 320712912 391042850 191402432 848848399 66638440 544981931 877509973 991475734 10051403 524285603 480862747 653551598 720113306 834948077 507036498 628965186 922906804 951097399 802055029 989936568 972792837 989647631 277086624 698172128 589972222 842731202 90742732 736771483 950612508 976348994 750387502 973415288 250457303 746967819 446093768 461456503 557163868 761557718 827224790 848057272 376824082 529836741 671241336 731443586 318223412 767143061 129405487 589724220 187165278 642412191 961563435 972522477 709839098 966811024 405136652 876241949 985934971 990212924 194378887 950241043 206868954 849280704 418268407 985967298 565907947 733103696 964708450 989816270 402282123 590776517 167407512 328131861 36091345 49471781 878322344 890973533 315352229 717145495 226906735 956800232 653150386 952523815 390524696 724800554 568212090 787254484 95106029 705789088 395029702 411062750 238624391 344564081 844903494 987032964 617559000 973923853 749283464 962688073 521099909 851910858 964063959 969465669 637241695 942896246 641967405 694716702 219121707 615899347 8194557 554777232 927722398 985852034 565550620 853766552 58178059 633935906 735606375 850237487 570890436 663085679 180029646 504444367 640246977 859835758 15727651 152348372 67044461 391999811 418319713 834158372 970919036 986648662 330725675 671584766 636626262 965043309 20671266 836900097 408006815 802575448 101506275 481429970 749000381 836845249 250227759 468203418 321408862 516972470 857711802 902503089 721048810 957425146 599786499 817311168 944787779 985284059 664561084 790208656 510806343 885427044 876069729 992021384 422563636 705433656 970620649 980204131 981520793 986535968 190964469 385359743 506022504 867768210 378280825 591826282 246200072 340832893 657630879 885474001 564581787 993334595 525932488 766045641 727757425 982301251 126660403 510551045 329545025 736275649 420486570 903540722 323265658 780775970 411736428 575921795 954766646 983804762 965770201 992754477 447363075 859698518 803807264 900460624 728425079 907479370 312336677 658424523 140825019 759033093 907575531 972951747 175888573 528565793 738562388 822914108 854354736 940269852 89783536 210952086 272309732 291412565 352591237 940605423 43868630 378062200 799663516 978600241 847028675 892164709 40651043 721745771 321351847 608517038 855874550 944774333 816171602 986998624 567499571 912204655 917763319 996582347 486484310 682629278 344358547 872728505 311676841 924743941 941753915 997200010 251021346 829992504 569572810 592929691 589550210 751830002 947153092 973314619 569519770 653865873 256235746 480140698 591101632 916201378 770335617 970183167 217415847 238866595 820678232 865378388 545289072 917833386 23057352 833690370 909043439 981741572 890793856 931050656 40000207 702269425 410854076 578429189 396400653 887457656 269294564 671009392 807029142 969181697 578924152 661687613 744172601 884295391 925206064 992224958 762377896 775075498 990522865 997311264 647192013 762320740 25939297 168464308 509833198 709863037 38347301 726248223 826048363 925164575 971272461 987601498 117946076 359035733 804887512 967539265 308836873 454432528 416693645 656945523 622308700 977571298 612239321 893977759 792109396 997509899 658650355 749637186 193384452 673865894 573602316 654151900 89659049 364644122 284352786 764685928 331336131 483210792 614383255 761516991 972526155 986608731 520569699 693700319 856483816 931859358 277964619 894770297 60885867 824729016 744476975 877021994 485770564 938244500 695767296 699776054 695246092 700006785 824632537 923876788 911213023 941882600 549699171 654916294 210063759 247263497 522346881 603942976 440204094 454557870 493781221 624182078 78893918 739122175 701237041 714020976 83136953 613849669 198490117 699141392 412449241 689551518 588464325 871010649 527943755 686934724 954814794 978451803 101619298 335947346 565630098 867577004 800983517 826207105 836676570 853184182 22973780 35087408 623830332 751419557 455332938 915356480 807516840 877736055 306770309 922182996 754253197 771280388 630997309 811461134 34578106 221521163 943068925 976420394 306058894 573305171 204539249 839969122 464767436 953357222 93366796 143496503 274053684 362706660 18794497 70187592 58236555 169859956 640808317 965852398 324898469 546157012 637036234 728667605 309320417 324265230 196633385 523743015 326866581 595913101 214441383 514946670 462921540 831754329 705136298 937898288 279579103 884780972 56627119 382677194 501300600 790387998 228967771 990718011 3972326 756764728 605785737 782673927 730477140 909314844 694374787 776999436 268450899 424201394 630801561 956896397 290330478 908517424 787818685 904470838 461760324 648916471 390132347 821086846 737097589 899910108 942572938 968351694 148909378 358038971 30444303 450232943 372051043 562053857 191225575 442795485 491778716 972047821 172997403 670639389 615429632 977512284 189484507 916478911 194058421 427176344 615367670 761804171 611850273 863888479 884170706 898078453 478350836 944584675 433802704 808354603 30778531 938952525 673572532 897376595 20911254 774326353 341400928 709947827 455047326 749117472 967790440 979557879 304087958 742350060 95372428 316023878 394817779 511767377 957971190 977741249 689015851 958672336 758875348 797821416 93799173 169461316 427966293 994144592 215691061 391648905 440982191 473136704 139035565 252264708 406025646 506335806 907017812 920866548 745715235 751575271 430102428 636510914 112148110 249875869 626248276 711371204 932301733 937211349 781111486 993677682 993286099 998794670 281260086 517136742 436295045 858884998 169129380 685663954 756864322 806121696 999496781 999992149 223948021 439699260 398963759 545272296 810985485 870362244 676962098 774108932 96578202 886788163 389764524 788207447 664948156 760894483 194580711 341078212 652026163 834858736 219877092 573991786 495863646 622836222 871068290 893388092 412755659 714041642 940492485 957611039 350213410 902781270 521740631 669168662 112361401 180551859 653083627 761556798 581780469 947555335 293958192 373735185 777821821 979886320 495483273 899392967 206965850 896320494 898416466 944508973 90109193 686583848 300628906 367556902 588614991 615884849 977620781 981794025 957913130 970623054 733859557 920200878 876563834 945720500 209459609 505639949 356276504 403785770 534483422 753785448 158016090 834891825 228668964 969016003 684056464 848529342 304583477 437362009 509898313 623850949 391375430 690933878 24832979 829064827 805291210 819371505 938792347 978289173 716660377 877946011 382953454 725769892 983481768 985667291 956012156 996022731 954800917 964158241 802743096 971374926 483495671 731252840 309605412 761525813 575406833 837023600 210878062 910021951 526539438 929966158 894084784 900383309 9366108 929507483 763880510 885047572 99317548 760077241 194590314 269317476 702102223 768065964 90762473 482255279 635166488 722858501 272108670 316191412 249155005 413971903 271216208 946820470 379406896 849878502 268269559 582064593 736913193 996086459 720966822 786760236 384324372 948128219 588130119 637616320 488135341 981413311 206442262 389877759 468948154 519923094 267977778 687018492 99820158 553629436 927051842 989405094 938974432 985321136 335350317 524054841 993136551 998288973 669553298 885600231 852961315 938143362 397903896 738895740 139949287 247223679 785398786 826415039 759718114 868490308 633984546 954108287 870791753 966059547 971679226 998197531 854885910 932938690 1329227 243968331 665185520 943052277 430466599 524696805 710107232 735859585 132595343 810490543 333430572 733570081 145753681 582637168 509977498 802110702 112092278 855323239 134234324 969386328 587848514 599246709 538518595 679887866 741575084 991178567 234727211 681282099 307157149 875281893 885218433 963966367 205337706 327692875 172370585 269619847 284173217 304275354 632861272 740427246 830572838 992732074 482669192 603204411 943130909 967635414 718044524 940273690 664138163 683436323 63905429 406383022 52577129 951889246 836714070 966843057 112757499 462129256 291684866 457684056 938339664 938912988 424499873 788025432 184171303 719741640 669128748 788752462 370151218 704923660 201659223 408266704 487971347 747485467 112097248 892664541 454730927 747550913 16162858 741559144 668700567 803047589 265491327 838772795 941231893 946139800 543721467 904160742 35244395 468022110 563302325 728446236 131744119 764860761 81074833 262682146 661435892 682409309 199940579 865391748 866004186 906583187 945413267 961836529 828272536 836399487 369734830 548082290 867030906 872555729 906620827 980117899 104298204 650933356 292524781 657033097 751807938 770159131 187485771 847344282 14563710 51006204 801641696 808887050 742960147 933478723 161933426 793964340 9387554 33361413 5514294 194851837 939137939 985381134 253459658 829521417 122767047 496295101 973178183 987110474 171353601 422606420 325942733 463534759 626555771 939967349 824423445 956525601 187792855 496865601 168857304 605537615 613265682 954854248 164718475 823768850 859452848 976935716 394857008 911162105 979508511 983135271 338213159 362172675 837047963 873019107 686428410 903720965 594079041 823098721 194886698 735321951 962384618 975040497 223172387 842587534 495404151 721900102 799671411 920363848 97097860 953162314 965815183 969816839 442050775 464170222 283271959 428599646 90584180 503141509 343633127 907855739 197994804 835432544 353257058 481972148 594876252 650175960 39260259 138218717 206384118 228829861 750726259 824588628 813905206 977387032 566225499 706158922 922920928 993513034 150740833 160111500 724970375 782119771 73481964 639297951 773145996 916031328 480367979 745309285 155057961 166002859 521466117 988978880 145029638 182372509 521985083 707842203 458853487 466813605 943115455 960454576 197493212 831391714 832358661 950583050 721604035 839640518 483871300 551001377 695549410 708727599 13147329 42437040 721084553 905034845 406416011 916264404 692537394 906558116 151178409 428081712 384817664 395908462 101527241 803074754 374695474 415884769 887410942 938080854 914531530 949139330 44919366 147405931 555241832 723997952 419691361 435356351 302841933 862775757 960252494 987055606 315782817 914765329 888485399 993195885 436364646 527460130 291190788 951544003 158435705 178480804 422533533 988490622 809257750 887494830 574106867 884166763 312306428 846538339 142167245 547980641 614432062 796966097 436302603 733263521 389194104 483893451 369627815 972204203 866761060 980844802 689139155 947897856 779631481 876932190 790064384 891942481 85970424 265678536 545773862 948630761 110980638 342870321 88865011 983829276 41268167 315514483 348170318 986870806 248700457 523695069 595819609 970537649 708145215 736345388 26044426 611948808 444958430 446440542 846684642 975909430 833777082 996564875 578994311 901434634 656815207 755792569 979611529 991781728 748759197 828123729 559358258 563436975 117179084 730066319 513554196 729016825 590224420 975298721 792808719 880935306 478153228 547674087 945532190 983949180 579150124 858792300 513995019 907292789 127622593 720644011 401756360 661330058 760501118 901176306 316432789 747977711 281130754 551571213 77176274 687522757 60807835 239357737 905397346 955525181 735777106 739097153 274388089 703294442 447016780 538555946 868888117 978581732 861316162 908774103 487799218 971927281 418538937 612020132 525355377 535217397 38759452 247201530 701592955 869937882 672010374 760658550 447132931 607903790 147827322 591836974 87838917 439398047 651180510 834802804 868038729 878454371 316645500 631639574 691757746 800781233 710405080 772962743 640605156 665350391 719404906 769651053 688538365 767922559 734153977 755572672 983072590 995580484 715966075 952192491 281905496 908670613 436255926 804913764 571228226 671455117 358229690 938772386 61263232 149526338 9567446 452163647 631766449 684098140 53492693 629035902 604138818 922683379 843804283 948705465 844912733 862959859 789249889 945309925 584019924 741486372 726608577 936145945 713223192 997294073 871366587 924810716 767601610 773833552 977323691 983798875 276634461 536043207 911672443 935888461 809197837 939639539 574780866 885167791 494299392 723789352 571509664 654358037 290547473 553357734 785674607 866385602 877086213 947633221 629724048 946276822 739604031 993429622 617135856 917035019 583853482 758694561 912530388 986906214 270481089 538520351 815212879 900403700 595162712 934146235 479945534 730283411 253464616 256028859 130828597 779183390 791236721 880248684 242355456 389361421 953213794 992784350 293991392 755426890 889392178 983835969 188823476 264095957 59314749 351180355 47543287 327750681 944748213 947856621 959774876 975717553 786047288 822144226 970368545 997785155 909392256 990992432 410171131 723930767 132224772 133648380 55455334 189233179 542499965 557991831 632472211 749404344 652241324 824969400 605397175 619816896 244288464 987049514 533766037 601133911 731832380 910825838 177261829 998178699 853434828 949724796 465833593 680248172 610621679 833852664 676690082 952970607 725257086 840065610 44386102 862675236 568988671 648131156 948574389 962139910 375619104 516920778 497085439 875383518 254084491 822072735 394735112 550291401 925210251 951362156 5379264 738774861 429584545 555629144 436973301 451761680 143546090 329673068 459023537 971296084 8323542 142854439 261821686 852902099 54609497 508437646 432277989 614473625 700127825 791345920 165514809 269124688 435004821 526235271 470991266 728289074 9333459 161633020 658583009 877114785 601208182 953566388 560167428 661443881 5886043 213252487 433882314 593457252 287360936 346680569 874020104 984203344 398014876 891364557 813942724 997028860 572486155 601454514 588549610 593804199 588464871 922230894 778246386 993276694 136806741 211897447 907164773 968446277 533841646 980195988 742491609 856603662 222887310 255708408 676186685 867058589 738854580 901056933 419205549 421332475 139616001 553887619 971204154 979833007 348868299 669960777 338870622 691293131 158226982 193820553 18905300 22402828 442050239 443751377 433820819 742249622 813168122 987261571 904654159 958191845 685061324 695734264 417262425 782415683 2729172 873275158 833297673 901003565 428247630 569020470 319765590 339036503 970055005 990844594 382030776 719830716 422398813 454599381 83530027 868968843 491152372 493617088 964682012 983839547 467197269 904971371 345110225 611781372 620747591 914429483 792431257 968182940 798942412 852712742 145313749 795322520 418077100 703885912 781050412 955928195 255999208 733531720 966804292 997382758 418678393 425236308 429026138 902004089 395045490 684627963 328354344 718176762 602519084 765129898 965914434 990667798 516888349 575076112 391221261 943543163 215998391 524079925 491984607 597636250 519494643 820703694 867090620 870305856 633646887 988636467 328421467 494998446 461520863 898801315 271597863 688589865 968076846 973290386 29302896 949222165 851771974 985410922 342976089 718867763 852517253 950405600 412862545 863730298 365291794 381825555 521258318 916486997 967879525 991039922 286850986 473647517 939410504 989548122 752726209 945906568 167826100 419409055 90353611 685811488 911099042 985817572 485289467 591347127 255952518 554871831 601849776 804758853 928918604 995240055 869881823 952914081 250631559 338604490 460102744 709102373 478432466 747697288 646281234 699982697 340505481 406607564 380954115 740523233 638325608 792770104 862340383 868687714 464519422 683228207 292143483 373658399 926488121 990471638 301543338 670467122 55946808 752164185 277256015 717023611 589737202 648890210 133565828 892595922 252712103 724800060 575817821 623992186 111797440 202621695 660308943 977804823 104342094 166289869 908350987 964901246 547183797 587955783 510764295 670902592 3392229 477021796 806562054 840443815 847737750 951448816 182817259 941293836 553613495 922435526 779510091 816446008 882354837 953836093 175925494 837350996 51009445 385892409 723304356 853503567 794229120 940083638 214010504 922364522 331067845 601948180 727350620 954899926 77899971 990731143 712808624 861615330 873518979 924383602 178824436 529826427 6834094 567848937 726282390 962273740 852108993 982640768 791129541 814035232 931346629 993930460 135398558 832427548 812341464 876432313 97160300 953452378 377294847 819761332 745238722 837538118 27082057 310412662 296517853 603691131 39746401 893847391 59398851 780564252 265231635 380590734 470444515 933226334 305664091 762916674 113080927 410461606 932382476 978371029 842794121 935276523 944482767 979213298 656737667 948406938 101549187 197616769 479037073 737864852 633849560 643239229 310107661 933359180 484109092 538540466 262129211 951109641 678153893 862868362 797105531 964743294 808621954 941861381 918416078 991664986 614289144 765506930 474178889 580992903 343834787 614091994 509859176 941582579 53886204 257784971 647727208 802612701 741474362 986206096 974791794 999220635 683656604 826369839 471911657 633906248 579687772 767587385 791221081 932710733 202541893 858404603 348946093 538476251 295952726 748245232 3352925 267824712 873675000 978861112 37943414 944605806 787268478 943481888 773373066 870665801 202684213 316479617 342306799 999085405 274877481 578346960 447889795 819393168 44781000 297612593 127654747 595845224 553664350 971370753 903447867 994932704 793620976 996691835 316557616 401087895 272633434 382356863 868550542 901477126 682453678 807330982 615188648 897855247 625682551 780190751 84335097 469726779 349154283 739729912 836051567 868435820 483319380 671019652 491439354 544850951 245491012 614373306 8236888 933018741 298770865 814527070 384420715 754441318 69164012 670842161 993245088 998462016 16237568 170265580 728602401 842946252 70872963 780502665 385312614 603234030 370417156 396115918 425568312 448881455 577005980 816606167 296740993 789537812 378447807 980007957 395978251 642716014 692807360 728532712 461660684 598577571 453687725 574238040 502744749 837075134 653584520 922703968 874600068 925659743 920595140 923450932 834402553 937582684 980525897 987634274 218560981 783488036 954410240 998976618 914506610 917787232 415864912 530321369 621881421 794393133 716100736 906465577 950596350 959336848 134086936 836626301 45875372 526933250 478880706 739739845 740585998 854471384 350073078 454955176 222945735 371541953 632163851 765250808 345162381 558526765 754447348 839339692 410064494 892616616 629463683 795170940 739497745 917734616 453060229 920456027 220882665 593958069 658160869 776049035 890403256 984702788 329864477 674214180 284610385 469304864 346875689 405040951 958210303 995174179 167575470 720520190 672625240 991556903 467231777 896505486 822259419 981950387 644127651 795807437 965683027 998586920 586781368 675718565 979902325 993583689 938647475 957634506 43829211 854385700 923217376 973005910 985455180 993092585 576872289 626758042 84255178 346815712 855064410 999753833 459462143 866156327 637243711 950184597 801576723 979708519 466595118 944883187 539001585 934892827 857000552 885154775 205767825 310705975 322082749 970222559 525895109 603813864 13973859 640474165 201005675 486416290 894016701 930629451 860394323 941069975 444986938 765095374 221898786 868079965 638867902 746939073 551535243 828459671 629298353 808279529 746877870 809266468 354649522 775419161 502233772 861280276 518601252 961644315 878066406 967252888 546098838 913874651 853300552 939871383 991188067 999332916 112863200 306307494 507341650 628061472 390728108 919577731 427568208 643618591 498725367 931798439 977286044 982399607 996845847 999258096 788206196 869313682 842666569 964948595 185811871 581471394 6721073 684778512 503263758 531885542 151984820 484728239 567334374 901311751 372467041 831653532 310039624 716135958 385214753 418839147 987581651 989268965 471929884 900967043 871723707 996805427 260512119 830031568 46559657 700846279 995037455 996357386 700004199 918794579 724034192 877300045 843742694 889085210 300950859 555180456 787892335 930509559 876352825 939847499 556402692 664093541 759466099 953721736 670070672 886771964 523529989 781948961 285442020 291322073 762792916 977125298 977431922 982376906 735797182 856703402 604366216 819977935 968559795 971610550 834775547 909561608 1139375 217336757 367585440 828421519 813692052 943326698 998842423 999991872 731572262 752789796 536718412 886095106 313155632 422453401 110002197 589867747 762536955 984337058 828297210 968234078 310592033 627044697 62554725 507607198 389114401 929941509 772274045 783546428 748562743 989645361 477820637 976611137 736710545 857675795 179792692 249305557 179702915 331450255 847651645 878004239 755307424 976481238 692628865 932496350 237646741 406266251 168138737 711305387 904192477 999044474 802164975 967419742 607419075 683756961 332605403 786147649 318029405 868405144 499004927 981836157 643487282 768106806 366705239 583600609 602396314 998701181 183051575 331520529 465872148 950011986 293182089 629638545 13666218 200033706 413725390 734545361 103839933 163752022 461013260 807218790 134563619 518180224 277293863 323968180 195830902 305286089 223302039 777620112 540923280 758629880 908080384 945427117 390688065 823149151 751827857 910522029 220731950 272943568 740735033 995495791 26207968 496687148 547778521 937439699 315518823 696106050 522247236 866698326 386997753 900354650 662929013 901462168 580130148 854105340 313044007 857198517 74960005 296199637 241703106 527627801 909128492 953615004 792977073 924747700 601271136 901789617 886145037 964767019 201968277 363564615 842970184 977080687 342752448 850889361 589365234 992177805 964012201 988396219 174665550 785394905 601449898 727759493 184970463 532707621 359494812 673568921 946270870 969902557 839823335 902913040 714465641 883910461 554552585 923914824 848500678 968001048 605645825 763447023 809881409 896197602 267442165 735189639 465581184 600628727 274228872 890420280 974772074 986144278 40871177 155793887 890907033 924200137 991747706 996305260 66265044 641494388 579614414 964255846 332821415 635447470 368936059 838449359 37745714 541286806 869811675 967355872 337021614 751695802 956368900 987646486 119327715 684591299 670521425 937646106 603021174 847544103 324921833 774330154 94641297 788433639 776841 424611941 144574357 854311960 397717372 889212680 464099491 750705659 208687614 856173484 145084208 248638250 919557456 999837591 505230654 914909135 23342990 503925508 659248221 783787361 419195986 861477897 237705298 283370766 331721042 862329997 601252444 728994067 90577317 429557345 28909786 779759647 5501177 290943334 845971140 870043561 133346096 712022697 169987537 337542672 229265490 250952949 874506558 950604000 254432411 404458656 802845502 995003546 395657887 422630466 517317236 523156019 51154479 521773637 799257440 875419168 181271938 329004822 268736235 711301634 848489977 887271485 711778972 792689895 294994788 430533072 29357788 461531171 255816446 742439892 584474082 907956256 56421087 628378449 803879918 978874017 183738454 425546450 126006850 254337605 539116237 850962847 906880620 969107489 981570135 994230391 402885064 895692359 17982657 270888993 424048193 918446843 873426063 989742569 813152422 982612888 267025168 284147473 445198938 779499653 174671156 837823659 703130308 714844424 67177072 371972714 340091023 916329324 137486886 902648849 233157542 524644126 873859837 912674286 950262915 991163278 547351856 766899134 241200863 679323868 221133048 256182650 780943279 873316981 396435087 729601076 137615936 480093463 266509679 532144300 639111065 739515922 608015128 700475117 629838799 797501285 797264431 862730739 383076551 810617954 300699287 369352697 780788276 868849085 287304646 421010026 838204754 921816348 736001272 964575506 406813780 809542281 214567116 562475475 637733291 979668803 820644984 976106004 478925949 560349429 596213103 825521167 114396201 131523371 398009464 452772942 549285753 937384224 988148809 994552912 312930798 562432453 759872363 906204585 41134010 820688854 428318424 774703346 90827362 729106801 735156354 812447503 251746040 543655448 838912692 873805189 186301280 987221672 367493817 468409978 544566649 636461736 894651429 911297632 750904413 753216180 82581898 493877516 644353296 872630730 438557976 763185388 570006598 633418143 825277516 847575661 628400448 641892047 184181322 907680084 355436270 577165171 643352909 822176866 440495577 554958496 314819096 607469325 484317343 582521947 463047356 498381552 131762807 350943405 569231718 719678685 332568743 993460451 156757234 357075556 559249020 816217403 483436699 590073222 63334644 79905097 310166013 698203053 168161570 232858233 249773187 989690377 437666964 688762748 44444560 652493336 543399812 837859589 994583703 996116149 872807371 987184476 542583584 780587697 282628638 980203306 525307725 580204772 846426291 955280545 867190631 949574958 835178574 966865331 407983007 897974752 152913221 801883505 531705083 895259776 798834380 832276962 589653398 664658283 791986663 835726997 319067417 571176649 583484852 938537969 345503851 539908860 445627229 806857468 158947657 450418499 201439770 684045756 9942949 140720507 936784188 986355941 957298947 965737693 539667251 776087220 498562993 689680182 150294861 635474666 228196031 277919464 244299011 366680997 662248249 895853474 779005451 893456047 1353121 278620149 201559725 360633733 981746047 988573592 685049726 896537069 451715489 790353782 506341485 528283729 250390793 550047116 818841717 971503651 676919153 865658743 955622906 998524236 142568159 283504372 703067413 923165789 282730696 340419756 163520523 229778605 921158137 964812061 829609186 913385903 533847221 710866047 105671088 809078776 684043471 722128175 796034862 870154169 100802322 976313349 671967948 872948431 566840040 999746457 112910346 796458756 466506971 670191778 583609405 844984610 329979181 992057435 171291981 615144070 685071805 923195317 561960676 781328249 471605007 792010257 911259003 977941768 281326726 735590326 752454557 986121780 541169816 847110219 364185308 722140511 364196877 989922304 993775880 998776274 937164831 990632411 778035584 784908057 424289792 726331038 789307227 868619837 67940226 654215257 340098052 650284545 324923975 432858609 746720284 800851465 772312787 824060142 130229986 836641123 204648101 648240857 288031238 989162938 918299046 938694439 371791697 526239646 544204777 924738876 862871188 971888748 809738975 939357721 236804827 885380434 861298743 878259817 250931310 294712978 116792780 587290707 885326136 970366027 677890559 856764586 815790729 888016039 940625053 964542251 420974895 450698655 71670983 672280214 180547127 594480118 437573307 989812160 904062395 953336935 724780856 735889668 164602551 966948248 940592875 942174687 848006589 930133811 480827573 889344485 569701456 573349835 352183908 592852892 526062403 882265572 800188076 904468959 188753101 908887640 604511176 916314640 160915577 519976112 431237321 677397872 304214601 801025167 151270182 584909559 945090009 992008406 33495861 528183628 176630048 925281440 938410894 991615592 40452959 489806373 887751567 991241099 663126078 862106734 113172198 314177546 681087795 963523471 487821235 736863162 843703547 973548257 499488701 801742258 814263421 971380495 309317787 854409427 707630043 784791300 898679046 965019016 463897401 468540162 778020365 870149697 265395925 661575755 151641329 377507216 964802083 980932943 561028266 899741565 516917606 771470437 103199866 370996552 936863966 986528107 597907467 607297041 479891705 953865635 363415076 536719075 487936914 908110294 705642565 749327089 966001465 993166724 746072287 874131327 861767771 931225226 714904807 926262470 75706114 878627004 686708545 944262980 562537187 687515285 641080500 986528749 670716275 857068195 937029360 984973528 855185814 896925645 8371182 628927021 382819781 669782639 55550708 337847232 173086208 829149791 346544200 912732568 919501188 988252497 316934242 956168047 794621507 892055039 373543767 774377001 333928037 372347346 913650014 959567748 481772062 605336296 722303839 802209674 534855781 688894134 180018097 665154395 671474143 957504527 445048598 626561871 58685013 381285396 356945602 855766992 447233418 849512558 19122005 674420926 812098941 928186181 590489862 642143308 814280955 908950988 333775949 599689952 708943079 733991887 321550255 505067368 470594601 889816132 618386242 618816762 475293303 568052299 365548224 433293538 954917174 975683112 873131319 987975608 164797400 824913968 118049473 346293652 740290646 797944380 333980327 689936318 722307835 827910567 616729196 903498541 312001220 969019719 897088230 951501627 880896513 994709935 259778156 417373931 429344582 966863929 141403537 615583180 356121500 646997255 64263213 808323224 330296563 465649749 524293659 759344709 557405382 742839959 474733192 568955905 734141280 927573889 75834952 999399094 262303524 767305496 465466421 922984451 560229456 884421633 445732170 968757971 55482725 328784659 947426621 957819232 72577665 549626310 612220599 701360043 708423933 903501576 174659440 584669124 490655324 632555019 709583464 941053804 866482065 963291274 64492977 923810269 965960991 978451176 14921638 944392132 352610858 615560374 254740959 604568081 297587033 977837926 288365634 291972549 133554672 715177744 289269474 580148239 966953721 997186531 140192960 937630411 19202814 117235358 478041258 764460892 873245565 990523533 396574560 528028506 596115780 613136825 899627419 954810994 123002494 711002284 616055396 817407716 644034475 907408480 520477284 862108179 198157437 562959327 607272288 709789101 724108528 770429428 350016457 758826060 277488040 391212701 322540520 524862467 930360138 974149485 940585307 977937104 188905781 468733611 142296302 333270503 876504551 958906156 988357410 998843619 997257264 997525735 166302735 511728087 983581591 998340846 312836478 586268736 930427189 982657439 997719093 998536040 680880800 960637822 113280707 987784488 704374379 714324261 121217119 921647124 797235532 814507010 778276385 936870938 547114559 610939154 214591059 276870020 464569952 835302491 467532899 733506089 495993214 797824335 924442531 961932278 619485945 875928991 48369119 886484084 837187075 919401843 598954064 692209157 943022054 997258717 803147618 851399856 986592850 999809524 649836116 991224305 234849014 549821446 689648063 773780542 243658306 365496872 163487161 175172497 860820753 942775523 60328528 172018873 222398380 866604554 960047553 967475788 677145854 782744911 693807925 998057932 318937163 355155634 340795734 564529961 138131953 208417076 247614821 969099630 146182050 466203070 129844962 411114948 339902 419360579 825464012 873971284 243607768 777604202 836163195 919220237 514689241 813058831 616357827 724581845 692723674 985584052 764581675 808829306 33963226 189915051 61221607 426365724 248111586 825152302 462777016 842801916 177884811 586560947 157605490 798396452 365295797 477121523 807233349 851944982 799356577 834393345 977608799 981096445 317656300 802617272 513049208 615392066 1688496 959452723 133991157 335586468 828348158 870542286 777817143 825386681 524805170 945380338 441058515 771473066 551654276 705336191 871510489 957416834 654123231 697950236 794800845 971407177 523428312 881381157 341649976 598126161 459500166 602022917 708231545 986045029 277411232 418371562 874729022 912734975 50881973 922850906 193451548 961372479 921353907 998658706 109282852 526520054 115280465 505862475 674956359 789536090 6310624 808263944 721908546 890910252 466716083 703804374 288785824 364608971 819438377 836255509 431352604 479662411 924969542 962614088 920956441 954741865 902763619 943636256 738612066 938173349 683996680 688512694 531409029 972818498 303714594 336384373 98486036 252596526 700305770 895483976 875966208 894827535 880483610 929017088 353282746 409592700 711800111 889154161 624175559 915240681 833317308 906155753 265461070 538707548 433833183 596087885 808859042 987222193 188913740 358551431 307977027 842232832 189111628 811686121 91445429 582005895 812305132 988589493 908526169 996955208 256380167 745686572 193148390 409995708 905024136 926301171 40718075 648880281 590933761 647706261 930498974 950175064 820351257 891337205 810736927 875696253 643027779 892732867 658627617 773211322 302687746 388239072 306148079 596757414 710791623 962175489 414933851 886586152 389321449 479448684 833498086 979442727 723073 535538025 709984419 958039574 978877374 983125891 689116529 775357179 383266246 410537819 393701664 581703304 788908660 809429128 457833869 743589187 76973506 568635107 25850891 519153671 184351929 711438682 486278967 990987563 21670912 719771377 577303302 879811380 488950810 890908276 749707085 912723951 985930864 991545446 645645918 821662956 3581587 523372824 821168848 843523273 399899463 476474033 381172548 537805745 526863163 951929700 502569656 971797466 177080477 640856337 477315085 479117253 816700298 882547650 464933237 898123648 399926532 937882253 703177833 815655380 147417614 797751223 535094095 883898793 645423359 856475200 300367430 938700728 71780317 119000298 320183647 493495978 746423471 797503967 590201662 786042814 202352652 237843583 23072845 975316594 898405096 968968458 80379675 310099871 216483458 593482312 456829878 741722782 602789393 822881004 284043637 748106190 725356131 813859691 579561084 680607067 835773385 983299349 415687772 551494314 771070627 979891352 681632327 916925530 415985668 782926352 728672819 958013611 123284645 396397419 215989359 694819513 291919066 832024273 476491635 639130852 888690706 928412007 854123772 941159892 23311838 455582281 40675842 994367654 157862696 652723865 360078770 604859312 225695984 826575755 932043741 987527509 130102122 549343417 71400857 310101635 156422902 561809098 262233775 312111661 577030571 933770707 40846821 308071463 688836753 857152779 770278830 979028629 369745975 671860218 672308686 802684116 328198436 610085825 339220949 785727017 600556386 946101879 991713664 993819541 819162812 905812109 854509289 890570850 970887819 973456108 509220044 957855760 100399983 356299100 122402476 299474699 472222899 642720630 930572890 977137771 862645771 935537224 210396843 847357071 374095043 385758131 717792735 920309756 765860070 881102593 580305784 667933697 689344516 776882580 336570583 991171975 810367325 850721658 993209225 996811869 674259072 795431824 28852072 403466843 947975658 998611142 740569529 806758782 793481552 943493836 551422486 664989228 253170217 316203223 8857164 153370741 813908493 993824273 410326893 877706148 342238335 608637545 850069087 865356960 624165023 833529323 263347186 834462487 304233635 327249593 763213656 915128329 60353254 108457246 438775069 803783370 497629371 931260681 39430558 68097569 243234300 816419827 3277659 948220240 340871739 431270832 182239433 709548567 957915308 968148692 973590949 995357220 513615760 754599109 614703940 689316899 677488212 825330434 659797873 880857766 572521763 935927922 42590596 519539159 513476813 927292301 683410206 910719226 381655133 711210291 825518552 930377879 119820863 545784518 961776037 991728362 91042455 798395902 969393223 991337213 467562732 777088673 497621254 529717134 103419252 282453975 859362449 882351034 336796190 598838708 336876292 840118606 776355542 791848687 325895638 442291512 270335257 410439041 317913632 936971829 307580053 377386000 64881568 697281738 77056024 917538031 766061344 947386365 476944299 659765126 428680371 539391897 553890153 908957931 349023176 574115341 887884616 888240700 803890644 824200034 23292082 244133750 688462284 944673622 207902251 856980934 438276120 652945213 639380094 656922119 829417317 892300681 974121430 985541623 991064580 995154179 886946353 934260931 677797513 805282097 992714349 998855651 398400375 758563914 834238270 998505785 740315767 825242559 458470138 619548909 144462622 482775634 281223007 351772240 122498180 448434790 377304389 557471479 126816402 851211534 58583210 930298283 487538588 615275828 918400393 972870602 336252898 873789347 125310167 632939975 328539011 542751934 965313738 970833619 27863511 219163768 320432492 342625171 309614380 899781740 693203966 893544207 761422589 883816773 130347468 404451916 220866825 628003698 983377021 996022743 981585904 986011691 740146049 841822869 211974356 702555406 979295903 985659956 472146665 571325503 412971635 475478644 658364489 881366986 438095372 893197108 189440690 854075975 986450464 989921897 70509604 567304442 938852581 971632495 541966335 565105917 491520384 763508486 746528754 809356326 802087193 869044713 922150765 967493178 880524323 894729591 562015310 924309315 536395337 556497462 990996307 994640215 376927366 901304625 803520085 878574449 566527868 993813143 953898195 984465921 893821668 900889476 718565652 732580398 399142204 794898979 807504028 902325756 844572779 896521406 387868724 669396803 350687487 598455012 151696134 612612194 268350503 842442007 440733820 852783323 170802805 963462985 307755585 944466542 269977961 324228812 479022129 684728587 437846216 624377430 17619558 299367982 710860595 913768674 959182449 962254167 900756490 922774584 626398226 642880301 962822367 993341514 927983507 985698762 226475675 407366894 698448574 970929587 757385239 880679157 327174197 328736754 940354286 960233263 427327487 755005870 986346924 992848641 708432691 817503238 126978397 181746430 850511313 931673190 820642434 949543788 757691234 802531130 805931885 998779704 111869353 397390687 663720762 899679370 264081300 836601667 932388471 935486775 197715746 666160443 926683291 944100975 205244010 703330572 5825479 823113728 7206670 666670085 388277063 873487558 254967513 994188267 621485128 769558008 963048692 970808825 176664301 922851769 769296793 999402707 170193164 264871868 892532945 969736480 378327023 624625511 23826266 994178046 394513498 632575338 520337209 925441216 525650381 775910059 694611843 946442686 899913510 959175602 877363731 903694329 728052729 945819484 730686118 837946738 539539928 621360534 310256129 789983944 998745807 999801507 437124298 598668772 43303692 685724825 42116321 743709250 402858942 915295327 252887842 441231309 546045966 606212868 454087784 921516022 34750091 357091189 405893519 946716350 455973152 600672399 778080088 904754115 378079170 448482830 904567983 970574995 638726764 709725857 786019082 791988685 233426974 243940824 826115076 943110247 507184140 588915839 201390992 277477183 700511035 906917384 320154661 696540657 148448979 406166153 921226739 991669288 135646954 857631627 7969002 83792146 738058558 913567075 531652971 630443054 415581229 425330437 214999977 894807493 867276922 903508840 615940975 983046925 719243358 764451505 319028754 977074550 675846122 770850535 108720518 667380039 837496450 985039182 499564423 862109103 922107117 939082773 627039512 645276273 378550725 480050487 585044768 908429809 628218159 714096741 294561167 803356063 940555647 970503695 911998079 931359939 573793916 589028837 192767515 262143755 627057837 954803076 100683876 224712893 718020758 778647313 55007985 146774118 728680943 992926937 761998577 913489298 581826693 933559622 615950706 800507772 57909447 655966742 907178153 975068448 717684028 916066926 481046992 706441555 139455305 381975435 519205790 966784617 282066275 825628517 163571678 729293349 111835434 892904861 646425219 973715433 373239534 442642671 1883592 645412543 829506680 923032565 657998515 981173704 771378449 957189168 5892466 348671709 380706805 428102463 49547889 378939021 591241097 653947712 816107875 909770945 164702633 605468437 178622039 226411609 476926329 657395735 651522353 945865051 536696027 744316839 917567929 979257216 482771095 691929671 872346052 923103013 793606308 866357050 489578474 843969265 227024190 353325413 127643209 317442069 261338401 608753554 347724042 799417970 445659183 564285893 839846335 981171791 413195822 972425795 781694713 791005523 249595956 629780770 689844181 897181829 911634297 939230685 525551024 670877414 861603563 985468669 328779058 852949646 446455962 957936457 771543596 795725372 601948193 922331146 350319637 796053674 743241392 992708067 300456258 947109073 196149752 942762987 388679519 827900269 358464234 994981323 838314836 862683568 657738903 757020390 791821523 837339829 22116618 124931407 190688199 481232979 252811327 364431971 182224188 302349456 679324493 987044384 394612123 708676696 853725905 888625868 48632457 272574049 670307110 965617579 521288497 548433248 739048159 996659197 331282964 845636522 926293858 970784596 960341795 971325355 624048077 991535601 698547006 830059917 167417313 368596075 642337713 752642814 901198912 974125921 427617818 638482046 406878365 849338314 363016658 453078098 686024925 812945573 491393560 970312639 687063643 952833511 216512533 547906543 99080999 712733289 319703178 351203265 468118409 664710224 143320197 464936039 27575960 477728172 575565405 860976997 446373057 595971626 865537201 871891645 789830239 854564051 766143883 918505741 637192165 877860528 195903181 302022867 687631779 813531342 548373097 739905511 707834565 744759111 634587389 976023170 501672839 753782909 98151296 458474594 862136814 962032280 605784915 829879599 400218772 855126354 853754739 929378145 886987840 903566257 296515006 466270188 758631744 843643016 714430487 812441387 102160836 319246548 187604128 823210586 386267146 638758048 396526762 884126544 268882067 886409438 774718254 816382037 754263721 997448654 493226942 732273280 533734678 989610321 513124046 654612067 951911941 971152728 65295434 916824195 438227094 705080684 3099803 118206968 319520954 355826003 311730413 365387072 828378005 912968334 944089082 984407562 143419226 730728994 145426268 819076481 227524538 732315911 24267831 164012906 526263520 844406319 190149155 299986443 709913051 896834148 862270329 963864859 507232987 533001412 315110875 608487446 40492415 248733620 233396101 349833531 132415974 676459064 346248646 860315533 855605150 855667928 325612187 613670559 120425403 394114315 705984356 774006827 667152310 821829733 754783413 981828107 131713478 484118665 890508509 995717267 358183040 672050940 449370735 546076621 792607550 836125132 111893296 277719246 327274056 586503563 18203718 263107893 824066704 987271134 818271075 943985600 622224174 975824093 116615189 484216298 464367714 880249066 31405105 852864793 293203020 307535493 140576964 466681403 44452938 94548319 627436413 800151926 740353268 856707172 289359348 548488639 681895786 961833165 950252958 957210594 224590709 900984523 997693777 999499054 174412371 866314305 507535541 705933831 379316082 509728315 646634710 907657676 813016588 874238658 396711984 652303398 511871285 621716266 478055270 670514564 368487650 611963522 986067804 997714054 495990006 656094652 641444650 939940189 90312903 263229333 34948525 852771496 687530110 895031689 711338051 967619099 6010496 155140557 918598216 982653537 788007909 952412701 477035713 484926389 83270412 516065898 724588624 738084465 316377863 936506909 696911790 704017743 955635470 958169953 896069242 909337695 909014367 934527811 725137607 778527029 995166090 997223900 41024085 980211400 59017716 523916851 439614715 471168887 850688558 951297756 826539379 977012714 624457409 717475954 133075504 798566860 955084669 980774579 890194524 930782093 235389726 760943716 529909577 672198045 70425994 147325782 724949610 986238552 28948078 985146930 249909199 978860166 870120364 970167952 717727242 861291499 513909901 547308589 654925290 692618405 212987599 868762693 848240815 897674991 958545468 987123315 367741143 632587832 16588628 82997263 600219633 761068843 95886778 679611718 35301621 859804690 676918726 998438172 838558613 865329310 416566328 450274769 396860341 966195459 76591501 120565198 33255518 729922581 64382900 990191985 497724288 866026606 689505467 770687121 921339339 997266487 771400808 840609620 412958230 858914162 531604717 714002589 476646039 535926228 95654135 939082101 384866325 897536326 128460243 982848812 961415312 985484658 964460922 984702136 198893901 457191940 550273858 820335488 938988299 979395255 166168153 411463981 70773787 79657601 571881435 872425508 449126680 936169839 170803096 644703177 202740067 450479461 899961109 949271840 213734366 980473683 348323681 367878721 583189356 778834755 511088 371542125 424641051 487176624 355821914 669260340 242216516 646907092 703089679 974922020 282058265 426389188 990244951 993903092 753135171 975980344 424172498 946232230 562586845 727109120 846658241 915783196 327800930 379416584 149891437 239951692 834906373 986883618 668447466 683018532 897905121 900979489 878637822 882891111 148043765 385293541 715946197 996402963 457622562 616936625 550381484 576080004 169521021 300591075 425763844 582887814 239165857 918831500 14711002 172152959 188595098 772908208 534091313 653265740 519283461 930622661 703240321 950776454 183651049 636927887 216811877 955291957 497227416 754978931 18310081 192019703 593502751 775167568 99499378 649986827 432539067 833143420 46347927 650831466 568752296 807676390 748593853 781299928 687697252 705302820 797296805 927413620 496176541 663645582 637918212 944638163 631128060 918844534 361143673 910481460 651176227 888374711 43058971 964983634 802507169 811445808 873739846 938310532 181065132 759638988 52266738 911603697 101621876 507498500 736620274 886045197 798297737 911944270 280223115 282474298 810629373 892572768 852740462 942924526 770189450 806948656 36593430 67762756 187758639 485889604 845762806 928903261 423999444 943024735 396803297 590878938 458227245 982715144 905426600 990452546 206955918 899949464 44408162 770896160 194990284 413677641 989703812 999778315 860397610 905346430 878306520 889690771 839789070 918305008 888187137 950859945 248355815 818913742 825716188 873629099 857230536 937585398 689720809 731002338 766295933 984040846 594926173 683149488 615952890 799069908 342752967 447529974 875597802 996250875 254811430 674167932 911263652 925506148 443553453 452338586 809176951 948957165 543196036 810311097 181744637 756782645 526331981 775565905 182805581 746461788 395339673 731502799 458976388 901013695 181867722 443382766 945937377 957551081 933321594 963369198 719578199 866404098 61294347 975633523 847366386 954298146 367189151 710477948 23104369 583305790 126038994 798235440 366315494 595320177 139572278 687090401 652080293 986076230 426699832 562685513 308549512 530066368 410987446 503417162 798202696 845421171 473085195 948634190 660093904 856328685 992372451 993353210 725811711 857481129 540633372 934757609 620391106 945967641 408482385 427951472 111655285 805300674 49750020 454467594 698030793 876464004 90574757 492959999 757260004 978391979 945303811 976398007 527294580 603973144 770656688 932242733 576806230 586584907 236419161 341888671 249201076 389946027 771817724 813111134 336731534 421422160 688114409 967115765 101743999 332232671 83307725 627950342 329006637 449023243 807977394 916711158 229620521 362642249 731154781 877618980 574432308 660926155 326045647 991734725 285792355 863057718 132722992 304510647 715158865 797314458 824358159 943526315 902976501 996281762 916850671 980143744 779163805 864061290 562260934 755226665 371901249 727527105 487072259 947128382 150744850 938784199 334852041 443307508 286550792 424424106 174016852 773623409 899357562 913592235 179491675 463541781 725899302 879772803 322460068 678063270 55671265 93028185 635435876 854426862 317497153 424169775 852384536 947941136 932287434 962957824 232789614 818170095 253975399 397092072 80033441 215625184 808794773 872852845 180210901 979581025 533578123 969463758 705345872 829153918 405984155 766341225 268352539 933096331 620903976 771148780 488046160 913112545 681888127 880856781 731297277 765616718 66663708 90951182 712364861 772570058 714076554 725175370 249205402 367187405 58832826 621158429 353523097 806183385 87662652 502838225 686927305 996244868 35059412 125549840 95317220 376732687 929927167 955250291 103451415 511494785 294594124 414190412 871773176 955048861 982215571 995411070 151377044 526094463 751978077 997472650 734549581 881575992 56080964 987906368 967569095 982415057 92864146 571170501 164647692 640290784 163972388 553782377 52268747 669131753 323053171 619427986 659738271 962442114 171299701 312350993 743982371 811137823 852741391 978596347 285515202 677893901 903839982 989144301 593667051 670235707 780071405 790613649 179530215 276723853 12722897 352800561 812658444 991696469 93814120 503619042 357442320 787624764 793748281 876647051 613806711 768818744 277046054 898235048 163337574 516986980 760497128 991545836 589014030 727422671 714257905 970929838 329515318 605723724 480246022 698601804 986783119 992827946 53177233 983833523 4531644 717553660 38021788 335732663 424698636 715431753 59530781 789269312 800666885 922343869 398042246 612466520 38210941 390551313 365406648 763583723 124398131 509212840 610755892 949588167 226775562 617543702 173275070 875093796 817586128 841829311 735538601 899637458 132345839 989326141 107684681 517894234 239131073 754385959 866323381 877284637 659778361 727567782 844436189 878241155 122453614 214433346 542991986 642214427 868730623 904628013 501322550 860658761 869076524 933699909 407215831 639102043 87434641 854157718 941305070 954626873 124834735 355237702 511748727 631624186 869498970 981463753 394430616 903047272 124683444 836156512 542028970 984649208 981376576 996616249 413878252 554321651 32709641 265274120 195148112 719210784 138653420 435021868 196245911 526108757 757748066 833279610 847866959 866371964 698943041 737070868 997069281 997158459 868816520 888397441 946734590 997824683 650255657 674234891 797437591 818181752 686722481 805561245 144004578 829590683 838829242 951182618 83357013 195294958 193589390 576267451 520186928 732170211 973369203 985318801 607955084 628333911 599784662 779662557 971609068 984029037 441291703 843545732 218298842 749059276 74941559 351555452 928153608 970297749 849903374 953390582 345537046 556173027 373994155 954919177 141379059 949766954 31225023 758654357 117184250 787468345 761351954 856713280 73369488 460777538 586223875 834521641 617327561 795847879 339551181 552953150 393861872 574581777 738156613 910082186 384524434 544365800 426723942 715958223 222767683 684218659 665302795 785648161 31449666 587542568 828311895 831678477 826932819 854264894 954781032 972743241 372615368 426675234 189318962 886557668 433142284 608026813 858067771 971263993 723963045 732893915 548110332 898215480 312341614 727813492 608580883 953535704 603963297 672208963 159734872 964377861 708787307 876370506 321660519 567023239 469999063 707871341 982623623 985099166 401960435 943018662 487847543 736129522 386766707 833199716 381710429 615834155 410071900 744795345 640039671 750174678 707348439 888068626 822994814 857206091 321453597 563996168 854911701 967945336 92237135 499468980 390665868 689543485 842060047 918486195 11889716 305446435 823318305 980820059 819098948 947223298 592021950 815465523 142801435 503378169 823521100 965244619 793204071 895876457 109143903 918699796 385042174 509318774 556456478 897151016 754395256 827280124 634453971 695613840 220920842 371321983 163172823 439720542 992462357 993191860 83922088 491038264 825145891 828367851 13270807 31971399 263978209 384016190 793334599 896155003 980686293 981449040 650781513 988278479 370966228 801567974 111203190 159723808 74433830 966236917 626488747 864293642 972662143 991881114 608650294 617332627 664880123 906314931 893816243 929651485 506962352 723550625 475273081 687414180 710617989 941856958 161456332 956670042 757133439 848672556 729009008 796414661 111823255 802556973 149270042 715287151 308704374 404802403 500204289 717128902 919437169 954074777 1638296 235050260 337614418 347746827 152242913 773962120 272805072 908299415 281764229 662704604 142803472 663203302 62296043 328116531 193433465 429422986 285457343 612098744 168833571 941286993 627916389 709965263 247123944 296451887 655030239 713171684 679281054 950265752 815903654 845039272 722780260 978012379 582254282 696268475 77856393 348056046 413933489 630108855 582856368 652799210 625889773 848653326 394157768 933962039 439940469 906684422 345911273 748610237 826507217 899843252 949416989 982083193 940811538 981515413 325714723 894864759 299018656 858234525 159405774 577692900 280052194 611800171 496062022 663824559 107261579 834376157 62983918 645719011 80582282 135292334 731201417 906277826 571222961 970654757 388326048 789425071 77507404 550453952 952312881 959791255 564407785 568774308 72289941 967892806 42751608 675162747 856508785 895102501 280641915 569906131 799149130 818407006 116245250 621179485 26574826 556380179 974561312 995080059 740650919 833998627 525526349 548579464 1409895 974116258 198522418 210771820 426839039 541420290 510306765 634571022 22751535 96884651 423582297 866787094 161655733 943380098 791697303 941819005 717060076 931384449 76731892 741262278 198053446 510714661 757463071 892211810 113271351 270993073 410275033 438032367 954549935 965279709 843509601 905825208 912941916 991347512 347399631 371266006 390454886 568855177 230257381 549323377 957060877 969060581 8836781 539938950 326164826 849972377 648453825 675403031 89045490 508616285 108344374 931211369 661481162 910664546 900038255 975046397 652239102 692204481 70862532 475370441 80495229 668265116 976653603 981503411 800004043 952639073 171163857 825431074 353184227 765115531 861735522 970822686 104959154 546130776 302842038 456698224 411524747 693823125 182877197 220585383 595940720 947207290 110185323 787079806 757503548 992821918 435463065 949638926 644544966 683176158 500455634 854162640 621298838 731774915 748428277 799665278 361387964 854420304 159765502 332232165 613758066 844831901 460511668 476528831 915399547 984914815 627546081 648348193 860055335 897204895 381418305 964836079 100092069 510437799 929629520 947219010 385116774 608122680 795140257 811659113 521613235 928002809 115579078 943662475 134588394 940894991 29968451 399177928 383645930 624297111 888855624 983582427 503738426 594699031 343717381 891329382 560046367 765864011 99973548 616930220 701634381 952634798 869117337 944417292 813084189 850650677 738294466 889579298 844351597 877572531 41287219 525795179 336451123 642549621 587548960 964702191 61432859 980725179 118111975 821007574 293345764 304545781 11092912 545454664 976565200 981030540 786130512 920868980 364724834 612521355 599492272 726049076 913614554 930034283 292189091 582164196 3239237 959988759 867468204 971642688 491040756 782668120 813826292 836576561 364625910 739048482 730534407 994350085 708381912 882935734 511820021 868998468 885596555 949306320 340304511 997677865 866605642 927690784 894892241 898836477 489738252 982304409 61637839 179326451 217296497 798676973 573373934 840008792 666934091 744885565 346557488 475056557 753633694 789768271 594191248 945343209 726868200 994164555 581875317 961384846 631644042 813593548 759833037 828370116 346225697 556000066 211550663 387231531 348981756 969592634 380111511 699597171 716381405 767731953 25066555 931461589 852216244 915435598 742326658 783090247 887289033 960170510 696494696 771514357 774315975 796916433 769878644 904062682 782773092 872063629 978552872 981981752 449278234 796117687 986396156 987890312 216501797 837107218 442092643 882516891 552575441 561883403 133767847 856161060 391876259 750922033 740334425 850613603 872672774 922026677 53508911 74198736 27540883 877522646 919328115 950698973 371966073 893989072 994030414 998771494 568048521 869608869 116218294 723039180 79840795 231657684 898872419 906687820 557588506 902031220 637627080 777694495 883298675 982642953 779294949 862603096 771077712 975958832 904628081 933664030 120212553 871686100 682376176 728366598 473469720 699051451 659442850 810902857 64055720 709800985 340357777 907618163 424003318 531907258 830066601 831299090 926779106 945566411 62483752 665201967 56064710 618677289 118043651 486612747 413749311 605998812 896454458 964097834 940574795 969705444 61543000 253604812 387814712 907438902 447436438 803123711 318062120 487032273 812526657 830998247 675381891 780460788 552625474 563958093 31895966 576052279 22146362 80264755 766535052 986625493 974612543 997649219 964342065 988293402 772251699 898175483 733226871 883321683 488267488 686553278 720743198 919233594 654513423 895778807 392641458 954737071 828784801 988121196 630581859 938099794 755113373 888689702 940363329 997643214 516430144 529527771 551141147 642843192 183061224 746049999 742397009 806396895 208887634 691090500 165108629 702502861 885600819 982808738 318064610 398857211 2087723 807686499 744957203 897657296 956560687 972105387 638578243 667396384 236239059 325485557 881175135 983021492 189486229 638878243 564463710 855893308 823409774 965846933 599064279 663276567 164009968 194704947 714938289 992869432 662430379 769973706 749199907 755060243 132422973 467573394 968024282 996613445 475888639 499702874 592763209 884098320 475377935 994526383 414800755 595240115 346255347 722973165 549962336 758078914 249048781 582298309 287989237 699072714 35641326 72153174 437697469 662305712 805634329 882827651 727520743 804340742 615970703 631441368 580854578 711877962 794502909 924602320 532347954 718489061 269551298 471381718 77587752 606096434 516036631 691320877 930914023 969551717 692533808 791994878 626059753 675405888 249448737 399954591 126190917 623326108 140757406 695289882 57713252 155309023 292910270 317174646 980183305 988741199 501532815 871335194 785658297 929219594 94388422 980497622 570325266 992152016 229774836 324371034 428707595 484102884 474003057 519553636 86386143 460410996 807432781 999302931 175068941 178137679 739447980 975666756 952692217 968303071 7232247 940684245 621947165 852369930 94457172 258750947 649142048 762079959 269627134 830502640 651045476 734115183 364487602 583244477 72681055 154020581 467915173 788507663 246914255 685515629 860107187 976934054 562113434 686308780 792145863 914036743 380264991 462948653 616702913 837542442 240365000 258608838 317144277 690962881 317869358 822308355 969713773 975035683 239800563 695460586 146722568 471817388 717482387 913609287 874851937 922730631 600507505 686548200 839171371 969054600 370107161 616152550 415714844 544241881 870108473 982657776 56601070 275731272 69898804 877050513 193450018 646806422 751572918 766295630 25951509 273120813 541541467 632984091 719530785 872634391 265283257 731139085 167127238 734125423 467538881 860467789 307802823 398111621 63791421 923755073 349465346 402460844 813150363 825947158 951993198 970737958 803232414 849692111 250180322 534562672 209963511 609386186 489763750 800022134 688107119 891947512 21816448 733255986 39244266 884582287 217413932 590189715 864362537 913764332 232995632 995252831 497004197 866948541 275554674 648314157 859846966 923478493 544167702 956700263 144678974 368910481 512995716 528265743 364918606 755843704 129503472 718763190 148683041 298866816 430794516 738919221 647080290 815893975 758460240 808001388 520869953 764802325 862086948 923226693 35370610 657612649 963458345 984348644 363650489 662197324 184167592 533414621 724470813 850319469 473584440 678149964 481591766 675585085 368846646 712011025 185575329 909364291 852269631 915997859 712437342 962670419 653411845 675586885 859702023 927080649 958043356 989289755 512416057 645613812 920784430 973504408 808523811 933497391 539039180 770655501 71336865 220771820 624214333 766621819 567170504 644066409 673497230 681948447 483367872 630880428 986607875 990618466 729567254 970220409 918565831 987539642 319591409 408183947 764257458 961945351 960830413 977507583 510247380 886488920 950620535 978905280 941900844 952074781 332760239 396955089 669942757 830622705 828503319 916299315 778138327 993195737 422866134 982152347 561147271 893038962 888321082 968120074 991936706 992926999 799172695 923430332 411853405 683975812 964168196 990694281 484058823 680359263 472888838 700828329 689013668 913011082 160685716 340730119 831837207 844922725 898770851 929850722 831540447 857474502 676432868 714370986 957573327 960905069 431425864 740774091 901420850 944270073 860908458 970496592 614457774 865950218 567002063 935951187 624613535 626998719 265987949 534619530 99697280 655832383 436548445 979563991 431245938 656149425 742392330 991316248 695580746 922189354 894648096 943429920 153997177 658408914 411171762 676447807 334573692 460992111 902548107 985818095 648820991 757296144 286195232 404051456 470340639 717336256 354817272 693069571 882927804 957090282 890375246 895761211 233354965 355107399 792237470 923424396 870449028 939577893 612774711 805975852 250289683 299859876 501232709 873521982 586878855 808331875 463595886 778671726 444677430 888502460 971897080 991759921 164903208 688458191 536227676 986748635 25579946 844671712 805130852 972423976 746382640 848580790 946868707 970195543 867485895 947128380 540202456 816025794 448164551 825669564 723386767 921772863 258612193 459211634 294337032 861482200 833510783 977869773 387141848 877982274 421748557 508201624 562676166 733999139 164780956 739693603 492667538 964164918 279101318 318263950 524509116 530694402 479731756 845739426 834545211 851431744 866137698 957147824 677122385 949822990 154420987 206944392 682772831 732771438 994289576 998937073 282218682 544512394 757895933 940217069 431231440 486578329 347911956 502501901 72821749 971510800 385270050 401907863 440261554 737968146 409068315 613539875 946355878 963525416 885007075 917563561 836079007 988618700 65234190 504564747 847306426 854190517 578178852 662600203 541299422 602649733 450385785 946416353 447558648 613921277 747490760 986739078 188444658 640249960 957345588 960997197 904020788 922583445 759782157 761378622 161864026 863715611 774405355 859581625 128183494 476755456 893410753 947378307 755540892 868940750 732553209 931259025 878757620 885265404 606997227 832636552 321655000 807040880 480459986 896802001 926093974 980409576 762192263 841253634 661105999 843895956 467440022 530465210 215586443 502868802 47008539 672111442 835896615 909900884 183209421 636827754 552506266 669794967 532329076 598809960 120170582 738190194 362260026 634887905 956973974 979014821 921417366 961982651 919940877 966979641 969646828 979700260 905780293 921182859 876941367 920089657 165542466 704444797 415029709 722171264 144036898 304494137 383293173 961346128 852052475 964779730 784394274 853236454 588233946 893000365 508854105 642587157 352345376 800384686 408061533 636252322 751638665 869598928 408075991 625601571 391202428 926018612 979906091 988596089 636247955 665505269 78401674 696262014 548653290 827816198 404145327 990020075 623361378 829658104 797651736 901634272 156967800 500241967 727086400 935559366 987755129 991960869 737164905 978731273 867583292 895355009 10773444 729445014 384767123 998087100 124560147 583952488 262911184 894689512 315169076 860940119 433500584 887852285 794734896 920071925 682948727 887459682 312282379 782626875 331733554 982195249 725035810 939688987 609631323 891398828 699983231 920406005 51707479 970890978 199553172 621947739 215255871 421010272 833337320 887261944 207990202 638464231 589527730 795702981 590711766 642491889 447329296 679596441 588851615 979258486 807076039 845352585 500439107 938467941 327503641 538177522 487473715 873206771 873029183 946903356 152256698 438581866 922775873 923453473 698713028 780167421 72031069 210433831 122186129 182521339 404318375 686896532 542418050 700993133 406413599 513926646 364232153 766007664 210758630 687667573 477485394 944983757 898837646 917226685 524005140 552178058 748158232 795750084 662203162 706735314 776313073 908038678 800975459 934367679 552980669 757798775 420260579 433085210 50029944 747900119 474243657 547160083 102552186 721464253 160659141 918961335 288073532 788075943 273800004 658768378 24250658 367141301 247550240 542957288 5251312 887389986 782601128 938002540 936255844 975179354 322698619 865478550 55728855 327290431 622957601 719247484 963064766 981952849 767456371 950954850 583646588 795485332 402954506 711872037 618798015 703046990 945965434 965826217 770615291 906869954 861613858 900751249 57278870 651978002 795708972 998392675 736902289 941376156 481726786 708294951 287190224 513717058 320896151 394148644 10034620 713217872 393712780 618880522 483637887 967669287 452953616 970189877 617986838 983895079 932408409 998753823 766867541 916868063 397961749 814821735 282684789 967031769 119319997 746471149 536819331 787452839 123943373 856873518 485541649 796404650 672721041 754046327 247764695 728383309 820079826 858062946 467410224 921804645 726780122 857904794 754463315 788267936 247094782 701780012 90383631 194750883 501401438 782917189 842866739 843727380 59543010 434748748 16740545 59416297 514696437 986732873 583308884 955889107 879220193 992640383 543579967 682031560 111902978 305896195 661770817 691432212 825101161 980916736 381603710 619348735 80831597 240796284 103721262 348346074 885928546 889002078 957344710 999149254 159239939 210491860 374587130 868682999 558416507 566193703 19012541 957320738 288348148 852741463 947631856 990645248 477293691 859633408 758794160 897763861 233637870 528443185 794756291 816950462 608600028 906946287 950463123 995172401 317818651 952968700 624452910 810343656 908976320 972012467 989129152 995951140 953147145 975787551 345090843 785288827 258399727 558040198 551524042 924533814 69660586 759925660 745122862 883612827 902643322 970122014 525828151 931674734 775172633 886648313 983872785 986710289 974594067 988276424 290381614 784316716 88876485 411471380 827694212 981554953 250530546 989630477 506343078 535557548 143563502 422449443 86288000 453758090 15351710 162467508 435955804 622611663 695998981 732357906 115057519 323096295 584288082 665891644 463928884 599599964 499662136 915683447 26794698 692740299 828827256 918645470 457245691 586991473 931671777 941054982 713783849 932752583 206067671 403554973 405232484 747416133 701851874 982505997 189424653 644542524 323574408 756875726 123389110 243357612 432664107 741884616 729913403 815619313 970818398 988093059 215738839 639302844 168043581 482134455 336785314 693980829 224892642 422227237 336793305 822385859 520029174 539123829 177643580 897567453 842916357 997150749 829483385 864980903 52323704 291496776 327666071 865426117 875742698 882345723 698222781 757165513 815668202 963355176 535656307 773802260 132794426 371471907 123176839 157254240 723121335 920633517 710206890 797371550 479273724 494112550 128553478 980884289 431332169 469397077 974607125 989833427 406886897 773460415 160953914 167155484 14477254 938269763 750660638 757196957 734968011 757284528 506822774 662444079 442682034 660520985 803667764 902658930 761913138 987357449 178510967 687977721 619108520 809829437 507644022 830538019 129698390 504970319 124754208 175614150 816805114 825266890 934222536 961761236 730204441 960962759 966211366 976584740 986299254 998366643 26867007 195790953 513581136 942494970 395365805 843788971 117901431 932246574 805058582 911365754 55205787 894569244 922109744 952739754 389612807 967746405 488409421 863938802 919856345 944696804 221652698 585842160 266164787 946985316 906561839 969407443 328455138 587798655 83817741 319905090 53867 267652835 117982319 996206444 70773683 668002839 294000436 408482088 319744870 370451294 975240393 989729186 890995411 907676064 914154801 950169737 161260435 887681830 376577290 978431614 296450470 592732927 657785021 784579412 20967816 603062359 14385689 235020416 23608643 998997394 310869490 628849634 376016971 594029731 3747625 289075781 641477773 715657112 836150906 929809818 667761068 701683818 410974549 765788663 128477465 577100438 174684833 553835547 841646672 951660947 869760826 984082219 302253042 942391771 15742837 629304438 434788844 976680143 248478865 656943872 318289540 850464069 222993014 957834242 322400648 894660196 93147040 647736434 138728917 508989910 724694987 906210885 106624661 973287140 938190155 973948134 768961593 828627828 639514318 949202980 117896424 466157847 14920199 740152200 703011374 880681304 402630805 845848973 45401264 697193463 161417248 738768355 523780534 540391394 653584697 662471663 440682601 969759957 807453958 870904916 531469110 907208383 86324296 167410028 385937556 927003294 688661669 803906828 149193479 761952495 117030823 863966748 122603294 949845974 369916625 797204046 32109432 297469073 673847588 725990162 782704402 922592735 228933720 919031069 189612484 824013496 916611177 923767313 599303523 932786289 73421875 998466715 134960353 712989353 826290849 868805851 165290657 498921863 44780255 910167339 478616962 789821884 886822733 913517210 669360404 994137784 81977353 216124633 618026353 817242912 609543972 754834965 615294234 933644365 249772115 915530633 524619647 738936153 554041886 624871944 952338750 956633593 96362782 887824949 788338935 788654797 53247435 748349456 595376330 702859775 494525794 864982111 599770413 705204306 219026704 984581047 757720510 791221398 149148131 206439618 764904301 856276203 983652435 994716158 667506179 762665186 255279692 855192343 793859581 815145359 635129924 917722910 345775948 765440188 134130120 725100033 500009622 957795378 836925537 975160275 899947781 948095147 30250031 178450697 297940825 678897883 501692678 702970354 720155086 945234136 674779521 749504975 558600096 767733303 760087927 872237118 21290226 239854568 913213827 959812193 768761798 955047548 20165710 713181507 844643033 848587336 99354751 702472328 133476687 461512306 644396745 670338800 411987367 847404624 818136973 965243255 861947659 882764459 326574470 544552815 839065734 884370769 270038520 448712875 339520360 935362355 479057424 932960641 261943245 997041149 407645754 822138404 316665524 860881073 185450783 761531276 693441285 823853444 229446342 934237506 453464133 725170949 590853596 883071988 260255267 562520741 411531690 719702956 998682249 998886411 404710342 879670657 139438904 157206457 287573808 662362873 749502794 845715477 329609723 871062976 963554513 992802123 919259493 945911161 454180530 681686064 10392585 25791152 318586636 981444519 793962938 817054203 583133448 809927463 702957765 800137992 917083611 944903111 755352779 784784290 230937933 658871314 920533974 992850951 251882527 521173568 379032430 379705292 652287831 833084699 169301502 946980301 368298456 672540698 317268422 383150358 23454274 895896791 599446957 857285788 42409509 63716317 467185416 884505031 444839766 613707409 639847426 960262156 665099668 871770785 422843291 459151127 84631263 789579783 661608987 965828279 106982097 299822342 727903978 937721124 615537300 719222505 741714175 844938778 718704363 841271601 234558574 414970620 327159751 389880630 411375031 903640104 943463423 949701900 485299901 943612884 146800172 442789446 333024002 944979217 512792884 902821447 85096977 735981278 994324240 994785560 891120145 905200024 271348797 444822325 941391784 961030459 129702051 292108330 89516193 677367456 344479165 899249778 516780343 694104812 531680926 602905224 537427542 743051323 617410060 653490287 437836450 726177882 290432608 995443710 410927852 702484002 702482975 765338463 414850049 931762735 92817834 802048630 833803375 901387571 262500508 310843414 986200452 988160077 535961335 762531160 11881386 114376682 113394923 899489614 751888926 847000335 88607817 350761722 288001445 673204140 267700140 879804383 692618993 821743338 808251630 906419069 581886384 607150625 964419678 981717278 61012773 177203875 247210187 591363070 58558671 755402273 963887592 979413826 265917499 817655878 783072584 905556611 53117134 988187016 83105932 743264119 135491211 409127922 894201975 981401208 473070802 798680844 972666763 991696364 348029376 652320700 501357720 755747929 580715502 712638654 293370996 716441939 766442888 944606242 717536039 997686843 773605433 990769433 42002286 387255216 54125758 566739852 392850683 639882657 588359850 617613890 771390811 819603530 631015260 670427229 255729740 336505961 554477974 622670289 644825720 928690247 299883592 599908256 301966665 969192863 605897531 981918892 902523138 917686808 569195190 912155922 570129821 751922305 475315272 608565749 175020654 364215362 600730693 771157861 850201673 852252352 924947863 976181716 995125914 998981768 899200188 920264650 927708953 980981569 994412904 994906630 947120801 959375109 862840625 927745274 396799909 611348050 426860114 612968330 829040661 857498701 908435284 951417791 959779731 972818452 741674694 907327017 749946379 911911141 663970620 901229810 466716989 805742015 383225302 444424865 932793240 965989680 258064817 316777971 657895526 765621057 128621819 216825592 545831848 605672409 578615659 592489399 231038054 538709914 192090387 879371152 525406409 929178670 981331464 982893531 354839784 791196906 212328193 889200488 684775264 923394088 425615571 582454895 204176284 776911243 402858028 772694789 150353756 753553032 323958155 776603215 173257111 744068372 823438532 847423662 982507651 985337644 284117284 785571304 309321707 952351022 325941411 876532726 684271182 812055970 864991275 944026376 576678978 899747274 53284988 989318517 75052698 608557521 889179025 974617147 279573580 847519967 766485790 777566430 773514364 836113154 350435613 425098572 88416247 616586372 833396296 898880692 709359983 923936349 888650386 916028820 682196214 924466735 489340898 531307526 878688479 965259621 873061119 963410452 549632009 627005440 852492227 997688262 854173715 873322860 114487567 322572649 421479830 958742754 369129927 763788952 497430403 945727684 951572672 985554428 385256873 912857742 187153636 796415557 790604968 877443812 566642731 893798381 401108677 596433551 965774794 971380542 267329648 542347449 973685952 983584454 101196673 341439795 17174476 903652620 659051686 800047901 283492298 964229181 829425460 855543653 344607596 649893751 141717110 632445112 361961996 732277986 434362821 509131104 72231254 976839697 961464035 989172903 898359308 921537482 539549689 568357919 660821614 717279846 881373157 892320435 983680096 994628207 320200718 443217677 796878375 952448592 440300631 732521726 816067302 883829713 712121744 786415375 683695073 849029786 232880884 721326888 83416232 285402514 421466492 612026182 920771815 959663598 759999849 938319515 796960647 803891185 347131958 734991410 446638275 529285632 277937257 670409977 429250095 736271947 121713330 184049214 18920660 597176076 777561082 791290602 651419333 855144585 347937180 894911128 677479010 969611072 703606224 986864774 870610931 995577993 474461242 635434250 727081045 750804826 14303388 862753933 867093340 914239944 659483283 920878968 174755561 829253398 766234149 943976202 332429898 694172544 784941165 792155793 931251020 983747692 183635742 352660628 334435334 442464091 32545692 583009653 281780969 763547407 330189694 630363005 212569606 398950450 333060897 720370637 948241566 979698376 973935171 998638488 39462376 280175025 818808044 962220542 117899802 305646260 928674896 943708645 800553337 852001190 925672295 999052845 510138510 935932049 979118190 983052306 569718979 992925879 45356583 417373407 718767341 895275736 996476971 999291858 164396426 888398018 339748546 750799458 838893058 922694594 412659223 516763756 717392903 823634805 228877123 916705515 383394886 881047732 487070709 874942304 19379399 226122129 732508376 805882515 663287453 912129166 669234165 705375651 868767521 954969234 621232058 999039259 420536067 930804716 356030641 985540479 146542786 255026575 305941722 744969463 574830781 906083188 905094218 941194031 300547152 953690819 494968415 613453924 966753968 991419746 102077717 338515240 601820820 604729075 51929289 781267916 475394750 807131731 269171751 970768440 283719695 815662041 121966187 510913857 661768523 726379233 164601061 550483820 644134202 781111394 458118355 540635360 812653027 974618760 28438368 865845239 626975411 694998542 263254492 632541449 676053442 850971834 386251777 651038217 788857932 863877130 982067854 988206558 916031400 991187684 934325353 980051727 59793794 879401046 206323700 495640603 5121962 818086301 937287905 979834806 148373878 367400573 17175512 399713381 541512174 865198849 154107610 190095113 57994161 308946784 926270864 960032673 468507007 692261377 641758386 979373617 582036355 604131802 501020137 586263495 925191183 957012858 698220110 890333333 94895390 599305771 216831829 658470695 531532513 963045053 533267574 800077792 244352951 837665914 573294736 845246234 962519856 982527592 997207298 998944977 367221979 654445910 4636152 261264631 171971911 296639384 460745138 738234436 516896772 730899916 777486154 879702544 921565361 942997482 565106385 844858914 479840714 501211347 698606238 812655725 934963495 946664979 357560595 945390955 863096049 912576165 536450287 783987901 717277913 936929058 43816621 256580484 468497459 717122367 4449201 261397460 529517901 720126191 725706531 843590281 994601849 996153890 779813272 991313990 145604816 741326870 822468551 913007503 955664400 964111042 11819603 854299201 268109022 361066099 516785673 616772103 163127641 339234757 985504035 997600260 777751982 985005102 130754662 332280454 900952197 965949756 437949934 869197174 625802162 728962459 970152079 985846619 134650279 207091879 935881255 939435244 545540799 659487098 572444627 868703272 62981431 216417109 377485652 434393511 156733165 959968752 134035269 526427635 429233530 565404196 857177618 904980769 320468874 450403858 839289577 975139360 888950286 934506397 240974671 515099097 69678143 992626958 734293100 994143059 207870013 666228609 562800192 955077976 558647074 809216691 196645571 454503694 998559586 999897185 309973898 561413662 288302973 521152319 588671614 918321573 517591870 672665908 762877317 972129250 772286856 865355488 670586120 964350156 53851837 869312508 536610089 855259816 73278895 98640450 553667856 725719084 79073025 950749532 426642642 598847133 220918887 491640755 256848160 936010871 611885219 632642444 780344070 824927013 482775204 705223220 553009055 821291658 514755814 934087284 741892983 803128380 527777872 581205182 211343132 986814277 409583925 779967739 652028928 737660815 798345999 905298927 992004998 994131130 485137265 884180160 448342830 901796809 837721489 916314955 748912910 977240316 206395221 630081931 303688082 999767192 52073317 621206954 693292806 825819723 879682328 987387948 336512324 401593065 58270280 852292725 129359745 877646825 657965623 778254850 594747398 887644950 830238206 983427906 200680716 408894305 959629887 967004266 441787216 955628548 930235582 968365301 349652103 555795804 696959926 734027817 630202992 930656345 391582486 646409129 470499977 977411972 344707963 561763316 833406604 972929067 991134941 999075859 329523669 416577774 965074564 970413600 188488878 647095899 422517269 689814495 252779432 945431612 491502757 528563876 463377571 774499303 328648952 852542245 716003710 897781685 998097848 999745009 99300621 120203358 885675354 910658916 169957761 542386095 909676811 914002193 608957440 699550016 355071962 754196058 311862220 848270811 741466278 825735490 268453219 747762648 465349035 809944939 816484368 851790957 522155794 990162993 279382510 581468678 389412840 998623307 464221504 610463765 163854592 802413556 727607567 928802603 840068326 863623611 344594433 528670663 716919777 934246438 456903806 699780270 89857326 285175564 92679095 946886461 916493748 957733336 853416140 867853755 672872879 800957429 272661757 527394279 189301233 237868105 913717302 973145637 960857222 962200873 105498355 720024234 737809983 803107638 330652947 541139206 23694725 179590617 482437443 504060933 975838634 981691236 690704688 735955497 240736810 723654495 768905586 850256075 842811550 880545046 373789817 807010262 110177573 853509263 691812203 872916813 909855861 957685769 312448377 376725147 171517083 803219473 126547269 895076571 185751565 251133597 251503217 542522719 158849787 497403827 609249485 614796807 763055956 774761320 539086119 788446437 971826681 981164531 713805979 723745732 300074684 826639735 674956926 846185482 664494960 671148912 524492810 531335375 364238514 668858175 618399809 838806936 137564710 226860624 869478121 984476364 536370484 592408103 698789081 793508259 46008817 307734107 396934973 604258546 281020687 904802677 326177791 722705894 645249379 668533414 672817263 769372546 192960073 199040010 651055037 668166943 422395122 424824605 940759734 983524086 740835713 943816987 446045124 630777386 117686977 345321074 274763204 570151021 777970080 968410168 575599401 908558037 399916643 852093171 402723218 844902909 572884871 695736589 299686946 731333840 460094314 800190179 7397353 812875391 524729483 527260174 487915387 545189220 882060703 936086388 742931192 843535458 765952640 931475845 488588332 883041801 90710513 420188506 673474204 826612274 815307907 898661766 407603468 748562295 757429651 800203780 336549140 768652155 856817033 993359033 765936154 782268027 472042874 695184996 642482160 816698682 3087037 946780855 345792499 561744416 382293135 604791435 828899427 935488357 61820724 301206205 910826324 962074468 42447806 766816731 222261421 355484816 828817823 958491663 88734109 936005957 94029000 224253997 380414872 909990671 542580455 971359182 143268109 949697353 300331165 598504603 567947174 883208872 287872382 306056866 209759598 322666531 421299310 963864256 889910007 974018403 471397196 666730172 122922861 327464029 810417727 838367930 90258686 207552202 86614499 792345744 489403560 788301800 375623056 735162027 717529091 932433410 607376368 689790337 318445271 770110256 121786585 494219771 380162050 701115304 277865200 419233245 770465005 839224356 245852747 913879189 671514050 847939484 402354603 488187083 490659388 622613662 721649851 841335710 646012274 730938249 280920064 328144193 45045784 676216063 258873144 497831771 773189903 974262764 179777774 412653939 389324984 425548434 324403135 844951627 556508982 655989558 420266275 740502953 509753135 727018414 809799003 853757528 188969478 580775633 492638481 698617926 418133708 801482461 914686540 944414485 547781143 907447092 406641796 441896055 290646778 612893330 593354175 741766649 664274872 862935161 224117790 891290087 169846790 558314075 466871044 784432223 193154953 834190483 782783294 882420740 297090701 689968942 605026073 916589767 233387432 487837410 783883972 887995202 126351748 470657934 575317469 634632947 794029165 823583992 233611200 490180799 972663540 982081803 967084719 985201826 847813538 870688660 756170709 899627430 404453735 423598310 796949922 959765266 46618431 88415516 989619106 991279129 603140504 656078325 272437977 821002151 674349107 798090457 58226640 853501653 122804098 149496324 21264102 952300128 224241405 678314546 99164770 486433069 289558608 558640229 532393149 557700295 240633159 759570309 5788072 509037206 39061846 662987076 572738371 601400673 56954850 619325982 437703664 761561082 622165338 698184989 602917061 755072356 424084930 635752684 544325839 702945022 501561499 545627349 38569776 845573944 261873634 830354707 705731475 764173436 715178670 826245573 168156217 274156428 860807555 971267219 264040103 465817251 375706071 698215599 74969164 879076786 555684025 944579048 158428887 978652773 694434620 710687027 205740251 434704281 247205241 904794589 796485707 827129113 943881512 970838131 563966014 619980730 851524213 856823269 800483673 962581958 810447182 893228275 707558538 848440826 612369545 708599112 599904364 804615009 93908228 646716558 285489768 353086030 400581437 733746353 796409220 981234969 84886664 845191114 97336617 615689808 752649740 996037950 703891673 815893210 257185460 980187991 499511809 979318293 747966742 936906500 712960989 987543245 839455491 944423306 395289798 794053344 696376136 981446738 756017823 786377398 818800181 941226372 893316450 951308785 927417511 981940909 170499656 327954888 386858322 470784018 289297855 387348399 733002531 959674720 515339537 956982807 797931797 881857558 750828195 842983002 614198425 640625358 653814267 918060372 253538039 398738103 995002518 995012094 877787748 890297965 229103437 271676281 506294479 858345346 49824925 331439319 99605166 113854691 499701979 687617615 946839557 955365504 226488125 497467145 918623074 935659720 535269074 911803404 297804866 687538862 487138030 759153951 283526500 395784385 182330334 386365562 914598133 972545705 541479095 589610035 759516634 916267404 717224060 718656283 292205218 605715416 200889286 222703261 504815908 879233810 792445806 812450991 114080573 407195355 997885478 998796121 428897494 753238624 571268696 626848082 713848022 773174579 4029830 371669881 49725667 894958866 877484702 904346200 914049752 993334334 145057593 160679153 189455899 653000632 663448836 808326980 553539003 845004983 533824373 871153897 978935607 984685488 46028418 664195968 745959073 750771325 290902148 651845720 920098556 952194073 970145610 990712387 567107031 832744669 961516095 966852808 451132883 804756688 925366541 981606623 311568071 467100774 736117280 775744411 574840726 999907441 255881462 822953199 327658603 491307883 254654618 981894091 54075381 468512910 443527364 601329893 804807381 914417971 955608161 991145965 232024036 452301472 668620870 913252040 534423761 554401623 80187308 814771205 628547213 991557500 714443793 973996091 925493847 999969372 658497979 714750313 134310062 436138396 790939921 953149437 225879039 793186232 35239770 895811309 306247535 750800267 460697321 887788925 97957931 816980033 666936858 776297483 500645195 587076861 169626150 891741106 470341866 856751678 946081534 985430289 234053907 305449369 64310422 283492796 801818638 928595517 907259123 940896819 166568677 743105307 339083100 938651970 72008273 240287496 915687145 992810481 579768153 681567351 469877639 997027628 756652435 931687819 985301751 990445585 848671820 874431125 349833454 376313136 943992304 958061467 753651160 872389364 25831909 397280536 518502895 941003717 783144357 915055624 447013802 852085441 440574377 658117699 107746310 259790769 825179199 909346986 238563598 977313633 949962775 988866498 98795408 409184902 315749481 902696277 435438613 992733310 561832537 935654680 38294114 59220418 502941198 785820195 271733192 680932128 453152185 689309021 630305948 846482924 982733882 990784025 445843912 572685118 143694592 631253991 966860506 992568026 382471719 874201240 577101232 952820224 110380608 692371796 836660345 957977796 890658770 979542522 836102774 999843653 490449399 592792242 266551880 854062159 705827879 729281746 805840192 958293976 648497813 958079413 518701896 858970069 347022931 987782475 277597751 948021115 584439464 864065007 210655006 619857684 727094380 868955969 911092086 944390520 957027326 994880575 346704440 535370355 67306296 959813399 280743981 960541150 491667240 732167970 670822126 981493487 482823416 633578198 340101948 444828663 886703488 929055213 244595294 362181993 238023248 832407085 34075156 766345682 725398434 948657909 86902214 320000222 453720056 919052451 762764870 783009989 657424365 862226498 400317086 950278314 552724969 667136896 998565512 999940107 557564859 824341046 817665984 899268266 220228712 618794993 760837959 835261904 328940363 436927754 971313532 991073644 691466415 955063073 907123370 935519667 706129343 859726505 859614115 944500345 387752285 397405890 188300608 268772280 18087128 851385301 48427651 203926795 207412494 398916915 342146539 888881054 450549896 808238349 686267871 748344253 614508856 777202273 445735333 814383861 406411646 699061663 316008477 653348326 203635115 525459049 380302873 472996223 169604355 432197542 360931853 542218952 653863616 755099218 479174314 757091563 691221228 940602523 91101951 690504889 640339119 672131864 177047327 482461017 206449211 317321369 466592273 720933239 986679054 995448549 952963010 954341953 326982132 423135311 301278946 666962467 343082881 480383161 197652332 925026634 224596777 631776602 21260050 834295513 893429315 957713897 97327347 917147910 227835760 878455819 632629366 642186043 214922136 541228238 621992858 877508529 464071494 915912321 464473858 614948130 873409799 912853628 224273206 462838264 346752566 865132679 530214707 639875578 832151345 894546581 127214936 525480319 322674110 582540258 195401240 441801707 775870116 920611010 57104567 110648236 32396469 655475620 25965452 74057955 892467746 965315308 928912032 960646009 578716853 978175512 875068796 951201707 282558556 782553671 986833379 988047813 206409809 521692812 781416240 807240358 147244281 191504031 945139268 999040649 107657158 522459685 560599299 771529950 77991831 871589857 23060468 391323599 400682831 927850054 512980557 883717184 185114148 187713714 978114354 991640582 620418105 897484105 567801105 604155139 528897787 590045331 979009366 993950233 768301562 865694470 683064820 774664862 89986244 296866550 618344642 856549038 505615386 933867264 506904328 584474444 4234061 257624742 521090760 794731992 668690054 958522720 980805641 994073822 535879256 805901041 833354876 981459839 328790855 610027786 366271369 987866339 768897156 900147982 563252460 990790367 986633833 998492716 981158392 998522239 56694843 813797678 579780575 596395164 959885016 961086136 884523483 937929939 108712860 515973984 775698358 887475258 677186486 743384019 999323537 999394761 771973631 870127471 592863360 880925807 520301037 845956580 862228863 971773140 687680372 886508035 694217047 970391603 116045261 275836476 665899361 757939118 898594889 975902976 696123539 882403002 311812959 478040092 197013291 579050134 717615896 953917779 182568342 516218314 584477936 681126651 830841966 858997341 758942405 945187145 869212294 901971935 328998664 364841219 965344638 995384168 402485306 779972327 473049044 653401736 864973705 876815332 965377521 975291683 166930157 705579799 331841415 374649982 379034566 433668699 180358719 949437033 445986119 941392430 858525184 954292470 505662191 694994091 815363168 823849896 398610573 496324623 102125155 182301023 993805484 999550849 151230829 898719531 570631403 575296426 851975232 979336418 642568598 669631929 65220350 534018043 515823146 937427661 473080782 662645882 511363123 783853248 625434555 845318067 806878826 907009166 940954953 983208681 971700279 998064599 632638551 898607638 887443930 994739633 285624988 360405312 47382005 757729161 39140925 366812979 102954609 554296157 40931191 123966699 486853871 600343074 508247447 944775174 605920176 886472543 154602903 509608389 841920893 933662783 823185124 834366844 966725668 990605503 86334109 702638477 265186108 652182326 394268259 921195275 919861117 971915772 12147364 579152730 399059006 427775616 921345412 990862130 385830869 833577702 981600947 984434932 564675611 711959256 908932430 931770553 296388176 546680042 184110844 953920140 260604295 846990448 369090194 573667495 324142017 578780098 811111200 934018966 766934416 996717835 664069573 744213607 205051678 829552296 973104265 986660406 242820597 530841124 538266079 759576855 389148337 463507193 443328061 600750578 856975147 883842029 856717800 880102226 240189259 272008759 742435131 769984139 873630341 973394602 25456181 655857213 212877204 227820919 476828236 484838944 570288663 612888658 178683795 811434560 879362604 895945049 515353317 579642118 880107298 941860476 81190501 200747326 573826485 871337522 28759640 727887865 531369508 594578188 953668314 963035324 780977884 971836873 68830833 308471426 934047001 936957306 320285023 805840312 206089836 289868668 314075103 351639631 120995724 128308557 374625722 533019893 642715444 836014266 70269704 668378559 738184126 973334334 541753349 714148438 657175925 936247832 355765132 685248447 195323091 989308410 392478573 907605402 697162194 738111935 432992654 813868627 735523584 763250680 390088311 718060166 917656965 969056993 310978312 342263289 529653439 859917899 531976800 787426606 532479508 771790016 850569689 852514062 218886786 559489014 100468092 712927489 316973790 737020471 301193288 702203629 529909026 723647206 650287 102328482 560375082 915665564 638022907 954020579 372181386 898450746 641357291 953470507 562679588 879833437 22070111 570113927 904770642 907223960 389351332 547251844 582718155 802974290 966467356 980682889 614948416 741067974 492967640 919679421 257143477 429654598 97164030 973952859 594555479 887934491 280657957 340924740 908460294 960488795 144494373 988156467 961216511 961336762 575260050 787925623 775842093 908237150 375686253 789849426 341505418 648503819 431336731 682163094 683185702 832866038 506805765 729939664 408533722 914610233 858017353 902966687 663632541 669362000 578587421 997502977 923028783 936316251 759709244 947016778 413867292 972508437 998763416 999104922 765602619 837531839 284731163 865616416 336881827 551533243 626414986 704522733 123360033 917995015 780010909 884288008 979299955 993949450 742265046 925559999 273227272 578998097 493787179 881525818 131913032 552097382 91354439 425984656 708223602 878726964 168879523 490699013 946821315 989749204 29921929 135416034 923869119 927685268 187021564 338541925 463157448 535890604 558204699 870194698 480470584 601872276 701667845 985204742 522727913 771791810 608220928 988459736 954750077 964569255 719110159 974853765 746577558 942561413 867995632 930440763 744838927 771610229 353333807 979803246 832771732 910552910 660054218 737559037 931048851 966469272 64039649 771115811 631353758 883875003 495337239 955501887 402011839 844693415 478255180 492560896 648403010 819742888 965220342 966087330 80876916 506868902 635247035 748016097 285717927 355882639 345199463 463047900 784358917 940237076 519589949 586682912 994699966 997348813 601980709 668135911 638560664 943002844 31863699 91731131 685335324 903513090 489527505 566947801 453340214 618196960 215021896 319974865 175021944 353611047 35421139 892854090 990241952 995201647 680415935 806153835 520246412 989268332 85944763 954727164 742478742 865169875 837756239 866127435 543299015 733438589 403017430 826077906 229253729 439539478 164705584 310177719 557205189 983003538 318735587 726350582 363665489 906051885 410121477 441315646 761582201 912809374 403175968 763426199 636471661 989877977 164176841 491659578 4754605 997044589 813182976 902348947 25373523 217535822 965911177 992440402 810332863 925224251 37390902 947187234 591297988 626069584 457213793 940836541 878228891 884788358 855700838 893259160 513541845 640620987 758553038 995895503 44625336 193768361 710045694 922525775 727723219 783534989 773857457 984247098 890267277 926868153 304277588 573621078 523227755 570217194 622027473 701110302 992266959 999747320 119958078 284000668 250870608 960535312 437300645 875986061 867343783 903586609 539878236 839202342 472528685 696073858 965389462 988102488 564408681 727982663 279736508 922139380 641065989 986598267 939507351 975893141 631822795 880324511 455482723 512323715 583662924 893330982 944982720 971812014 483340744 648161448 588602697 870196517 103982806 407529614 766447247 822939058 602802700 915165095 257510483 561398062 233881218 577456016 215843913 772228574 823292219 917092495 47747595 857573245 972993805 984551208 859890605 897285486 149947363 561811872 875318615 972752068 974194297 999676916 331764114 604708878 111976251 431534032 601174901 978667308 86112205 693407963 538646926 567834127 571978733 710727807 141582301 798527035 753749907 945216083 180296207 887250460 887290158 892883307 140209149 894371322 662664597 884000264 248559359 815552850 239438301 378692387 568665547 599609563 461651001 798624394 688597800 863207350 305271655 660907810 378603779 507715801 667290272 756033047 618002849 838782757 855614502 961227493 909356780 911175378 160177733 920450008 1237702 941308159 346336811 702103602 41013774 817118244 951860916 953497553 941270233 997690235 189193067 333135228 929587224 981058066 499400116 876411035 256171880 940593758 91627155 376572718 470696550 924795202 906640450 991309165 696738506 790566513 812767759 885186183 523561662 817553585 532072801 703470988 291544985 642704646 828037293 864912941 414251467 714024479 842871856 957803923 23080702 863522294 688206617 743363746 216969128 931558520 154888 470674950 833961695 960596707 395899962 509690906 671906317 891084980 926780061 928162066 274384099 921719106 75678927 124086393 424106892 778951382 283447571 459504723 753694836 879307744 617185035 904957632 668079602 743492230 709223796 920594700 887948839 894012626 448319523 630976755 485007858 652787777 544509086 745715321 278985141 967615056 861683113 869011376 416556010 548113013 970684 769393320 585768806 924757906 138713846 789802225 976688903 992131413 917473053 983931588 272260115 281337625 13156774 266729385 976419628 994062770 436246430 475940270 759024916 996209249 259368997 384258761 279911900 323417516 247946789 762277846 254810563 753151657 441670233 866508295 496160480 758249994 99449973 545459089 584823410 842272084 493343447 997794951 173790323 235378200 612835890 632558098 101531236 770824816 394076680 911855617 446432860 917616141 191034388 835408821 456421961 934593780 877501067 987809412 257775994 551914542 618905549 864164722 21914554 987694105 256279569 774738453 112212773 481708135 325073212 571421355 864414820 931221796 161356868 421790153 457912476 981797596 858070371 889385106 464051975 743999333 320037424 772598709 811464211 815833850 942091462 957258463 633567418 885388251 701123802 972410671 157923503 765176907 839619660 940407147 143836147 315253016 517695403 812451857 141457211 809331115 826291052 962105086 607935209 935576996 469821186 618120993 349505141 714005169 604843379 725190467 342220588 665373582 29510032 459764221 868255284 943436847 189129823 777013018 352561335 622405388 190343209 396291459 412445554 470404259 157663388 318785364 336683797 939894368 846782898 936204876 608288685 676563783 86424759 503541501 414340733 663525439 257813400 889298977 314356402 518846205 97918971 351913463 290038339 498578812 862413550 894724741 424797197 820845183 42271899 446876686 367755370 612151620 539040861 574140233 260270943 816650855 170927566 768313750 121173386 564126092 589432445 633234484 301909553 473304233 422866197 988595125 529901646 767019332 988342850 991228952 581612013 959877638 890623365 940313511 211952786 736688246 353166189 742845778 795136351 817289818 514202835 573454503 135457279 423540162 509857237 539435027 211564375 697474580 653716546 765948125 86966562 618569261 842834369 918110610 592417673 694854116 305394784 842051904 127774636 766274942 205732517 279730805 136478078 565834807 279396966 689083804 570510999 581162918 499036569 755706775 181761433 843571540 934783083 986477439 190714809 510503011 257423386 437938239 605187799 765218419 821684402 988559456 840599165 980327651 660992255 812698204 803873869 859520128 127552120 328627304 988736762 995477343 115546224 534956883 482786031 732334413 206443435 930054456 490986336 868634551 305583748 482943200 289773015 831025495 84679787 701698691 235864303 253650089 165285433 195202470 735901881 804818357 505988366 655959050 628699530 826393532 728560375 821944864 908755282 976119742 306311890 668133856 942053495 991888984 581563903 606961461 82228954 257068017 675391056 829301910 42960301 556493318 117255604 856678771 991130129 998461786 359410573 696874011 790479701 907964310 805645400 963936995 568561316 945029321 42207032 834138486 828173809 870625521 100860233 886469955 912469811 919372147 530943229 767220948 335984448 513114020 137233450 476694733 838050255 862430920 555075979 616773406 411152588 641125452 58773304 904764344 405823136 937535376 466557404 806569641 568477194 969093409 716563616 718233241 364616227 442351965 443663227 588234116 668928836 939559273 715230916 867199738 697334351 973208875 282298641 612121701 61943375 863755354 102290348 961732200 716701048 775311975 821013194 831725501 283268246 990724626 377920278 858999803 551257192 818000466 207958569 580129753 343930621 835359247 986989219 991543182 593959305 828975140 67180035 279126608 403911011 985577100 326804918 721782518 565438624 643477315 916870586 933307633 430370350 531950289 584370990 966032411 448774105 637152905 843643118 945384704 378759361 435790571 383214426 871208438 827564258 936687018 225908521 323715973 750248823 959922720 130066643 203824885 248258362 942940337 84753319 791139608 517615536 572105425 141379001 205668581 666854657 886638556 94127765 957752141 563402037 810009168 404748738 869571365 747099063 890677491 241666057 470253466 653258774 774531362 247852775 473249966 416179495 605650367 646682134 948897655 841338948 954275405 756007267 785995575 975023309 994317251 671828334 907788106 941005571 954833934 161405224 479369230 621244399 761684196 289743052 333784052 989596838 991252238 58577829 696198396 1666127 168665672 494368753 524315201 760256421 985687782 750806335 944419229 270667777 701067683 808714754 847049403 491370835 543289323 546560245 658439266 3398588 424353111 937833069 943370038 653635670 686130105 677868477 925083706 65680330 940003412 466111787 625600753 201446892 311696374 739050518 889387279 363535447 768509046 479290261 976508654 339859901 806942768 257248650 313478759 350035671 989176922 23598313 951296545 935379365 999991021 534940084 946988830 32663042 755950345 29319648 355933701 421117749 600294319 244949778 312276652 543989643 846763468 24231723 396631264 357049936 574412925 162763790 950021105 156435800 201343165 563155820 906550112 79088855 964883993 73497620 115987950 773296740 898653617 18321588 179649880 342686465 944815420 573112184 855431622 975298632 991283126 627267237 965810179 514954420 719988564 670854021 681188351 785854168 804953867 564522907 948541742 627122939 764813420 778005820 813879188 601941746 949332611 515629993 806538521 406730701 765804898 887538252 956551377 408959049 511632751 927454219 957594924 51307585 238770365 912806611 964301700 968975141 991878893 257690470 914571859 214681230 342097647 381383707 891358420 550121235 847959762 327843487 635224369 312175609 703541785 879176675 983447841 233046519 268594957 105125414 353682533 724484385 958904777 140687979 834506701 566816661 781217245 638679057 694366637 901623790 992415753 316617646 543097996 368791792 887698524 33115638 309362046 244144742 620292419 318920893 543038124 125352795 300909276 58575825 824606586 969074493 975612075 101035842 629115876 254019699 325520420 922392150 933119763 934656414 945877018 990183908 995860207 917602476 994942231 633742627 981936631 824996962 853175675 90203346 484549936 302499437 445558158 944052933 998912824 981734329 992734596 585324836 690981016 481281563 646727421 577997406 702070357 788578659 969986247 860334344 951060324 596384349 810174033 580833223 924786552 967445187 981099297 901304819 963041883 224098144 523900913 636279577 663225896 530659604 541607372 728867222 817524797 835096003 921008057 763684496 781363056 781522062 874853705 413473071 819167594 507541586 680226074 659719547 748230247 691511471 881480292 936673743 937863835 491083669 553725337 756533151 892386853 414605231 751103114 754816358 818701380 717630352 794674946 679376022 912744971 925316717 929319672 209841573 404644605 281113423 680226920 787735655 816121681 224971630 685765635 485673821 855102069 849270366 853792326 728153212 834527507 966827145 992098448 414779311 821390224 277085627 838722435 385477526 949444918 587775221 770978522 112698260 461570911 733019853 871286718 953852682 979335304 227084219 821735176 609072353 799027937 107163131 421363285 795263207 885994132 548010469 852509108 757188554 957317875 251684359 596196699 219474211 598897115 69582646 964170281 897072223 963023358 336347855 597100738 256509777 401523873 217369089 812818261 519679186 816496948 651220515 694968351 64465446 597839782 834294405 989618940 762442700 975873021 335223990 982597539 342612086 412659621 49805088 894074266 534568551 734842930 832643016 962705387 862624951 984494511 632873280 722593092 216627073 975482525 436546606 580075112 565884418 751139002 434511651 558963662 246132139 459465413 810574022 972663380 534868893 769688841 882676540 969823696 201250773 542575602 504778948 538087966 318351843 633155818 801200392 946245087 236545998 710688238 256429954 620940414 244690320 740704469 737915907 910628679 566301141 737359123 244942321 818785374 653039481 863653868 570462444 760267088 620842044 850938201 789623989 825372603 444138003 818787409 978469642 980828749 214553609 427289863 190958833 602395875 766668500 776443757 130551567 408302072 109437793 630298875 187038991 686346045 821771372 966878363 753606927 945887032 234336733 539635485 722669860 880394196 33543376 890644737 643336783 943686590 379850860 980952374 43327347 594267131 684453335 898712259 611057932 969940564 575544593 909330062 247797230 672654234 868588938 902297984 137264928 143513932 252325613 816663936 219277496 374220635 183118105 687730053 574103644 943071070 22021305 693967444 820367578 871293078 359515984 996017899 818850571 969857413 139403242 476525831 737677268 792944933 377851018 700686811 761820251 786186096 674780270 810541361 515249014 570729160 602955203 725139929 822879193 971669891 487131312 630891078 668812827 974865627 180916924 874502311 846890689 874698117 968753210 985678069 221210041 305296256 24913933 111927839 599726664 623636244 934824347 941310774 560185969 697022303 568233456 736129011 678792041 979495912 232901361 523513510 500381467 916659678 958700 179704500 788586218 917254401 509213820 536810938 576347095 870941842 548670817 981836014 169793486 637418393 35440112 179743506 129891753 805810275 185169016 759449142 793999361 930450071 34639512 497975087 112556703 547442415 620530913 835936053 395865448 661232004 222657503 440770900 649101356 778484208 786541087 932770483 444096059 663525918 352889637 485936938 563453348 653420788 240479320 972275205 924276047 934187561 17151835 911255750 481363102 615306206 935364187 951165216 338657553 956448029 143120040 761549171 462326277 605255752 303299772 906207791 224145354 694229757 769538857 855239318 913290994 973807553 481609370 739295687 270735791 612916540 865332347 974711281 638606303 911332461 844640527 947172333 364733051 810015528 353521677 480782919 480043714 755691930 256489667 976108163 507905163 907064362 265823548 357187377 375354622 861251718 372600247 433108871 533461282 677446640 173229458 610866981 772819690 993303411 34104717 884104025 901233439 947346945 887493095 978973926 95700945 576799324 605623288 759771400 141165579 158890145 503964278 841779531 379383757 471119552 657736638 959962385 573920453 622885679 640880939 736562514 326722383 639584171 843812346 915474267 999227883 999713945 893998429 980668360 489411980 934196911 965214213 966664624 219774444 334316086 134808616 700885505 459174034 677939438 751745857 804089054 367327571 390241009 591026476 598195712 592040485 688297864 332186923 887278232 91479436 650633902 530642166 637963187 717747585 844221322 260015230 942368637 52418461 138635145 692803233 727212603 441712985 722786934 779446174 965283628 645052408 647899936 628048533 986228250 621245748 896671232 573939739 692786480 432592771 624802385 219044592 739319077 35037113 188717775 551336515 806709479 745482405 750239329 374257178 697277322 625299618 733455427 557922315 852421814 854091302 967106127 398786034 547859812 382162799 932386850 760512667 887290854 882919475 948859631 554315312 615329811 327968401 639171666 373578156 374153775 802820459 883841275 4539610 215857935 106162028 290230455 113455818 690215982 161729602 502377145 829866755 866484824 602956497 988490392 584912526 669796002 393843787 737882328 971284902 990297351 370334750 982991497 162253343 477566517 514460849 600586696 906200590 977770195 74169603 428557355 374424101 596374800 560143289 613516919 85540524 556611299 117586029 981631974 306292135 710151313 67917690 815202325 967786761 984266436 686953333 877050927 982658366 992306785 110248172 168466299 611215688 781495915 110396307 630201202 624656905 770092922 790670808 866210119 695497418 826268178 171095615 311547359 385525847 621891190 162202018 374910107 888801594 950433464 252782631 836360836 80601362 101550797 260830135 661150856 284510719 392996657 96503701 894641968 412042509 948345021 591409057 666741319 709746528 970692122 59391099 938429928 599039122 785034625 807971893 912201895 273708467 949843526 303257538 355721131 191596650 989638760 811334938 918844183 693850815 837603279 348737375 707575648 12872799 346172065 496827083 627591161 966321485 986800405 169210805 674063334 350396172 493306590 606024081 708925922 367128805 468732114 828905461 951855001 298548309 408356603 219347528 375468851 964414935 988953107 617816611 722751054 753747730 819058377 902303006 985993932 238982893 355739009 768914634 788748773 465653251 801204127 592556821 749262501 978014038 998520448 359074009 462722904 334766825 873553300 525790140 834411883 881949431 935381550 719226723 903476990 612807612 905496641 883474374 917091102 351511325 630702088 790375399 952678649 61065065 316607746 543936149 817784054 800880057 907765222 542620574 925881781 48885036 796915484 557597034 782196318 543067833 874765085 911765851 998043639 964678303 994773047 302482889 956338859 794640875 879046915 311842554 340492493 29263161 591134115 783144349 906641052 695783108 914653707 350527487 536194784 795503550 969199735 127788144 421462328 777132801 820057810 749652722 921634674 788917932 836052092 460760713 595472581 647644759 975869232 216938228 961142647 799434602 926763524 453458686 619480174 250191857 330489304 244080749 557812591 598852419 917938679 108834619 386040746 142491311 855511094 564195869 963756415 288469957 832923103 213404864 370383786 176189770 909854013 6871516 854437038 693955898 918275579 392306248 737301345 99968907 541851983 624416575 710892836 689600631 754349079 927257227 991486198 438127343 832085793 684746119 751202635 961243162 978227066 637256687 788193111 92691370 827210836 828683657 838890441 107665962 280558928 718397174 860877350 77955585 672475470 364965421 857162120 182763764 308932680 585110551 777938899 176435200 971246988 111259657 718266562 885906901 982811495 987514764 999925422 229385028 904754507 869074654 932600860 860321591 895676422 303608459 408156035 950551520 984680923 457462936 784068896 474038001 601623751 327287809 706167434 669803430 717684612 541695925 683771564 705221354 852712528 697627151 798838830 175023392 742313977 774058792 928563504 629515790 833437555 367334462 930809330 36098014 543279659 936500735 949401110 228503691 948260117 244648380 638961692 634392952 960942395 367786575 666257242 360008773 806919489 771560671 930602753 551030846 734806157 526496505 865717827 200791216 266445800 540579455 550098558 616103256 748856730 265321778 841039685 30133168 128456493 490098120 812915437 732566431 738591240 682651502 746241179 313784985 785699778 611357786 903861688 131130990 788148266 886069880 965450662 192349603 738211475 405265052 736047851 266357092 296633462 453461488 500621649 412506282 705556381 865912464 935174475 97629419 928936122 161883103 799788475 59200227 902471009 183676243 860353933 245659530 664259688 659312950 889473943 827354102 967911153 544121574 765311256 840297056 893062243 210208500 232958452 532149740 681433523 507639303 821903205 605711936 992866046 213503695 262960726 861825831 933605240 132846089 167894992 161490814 783980529 371462726 852413548 24152403 177170346 749126611 765938479 516278453 887167630 223137657 470391529 895723228 915581116 704581053 882668355 113664962 279710911 532136915 604057305 970570067 983686359 582219918 791193505 537709531 808286302 13601163 206097625 814303977 991731974 878941845 967538964 541570716 694440822 808259751 832647967 699090637 838465840 613200841 655738198 651817240 904792646 390008561 718547053 79309582 134977224 790252155 981879399 626139467 716422355 462599432 762591135 570072424 764371672 640969640 852722834 965067686 994148700 104642100 307414496 108795908 267218864 835372936 884714553 549607719 859309151 220549339 725806496 49281150 826260849 180902366 359289574 395940086 997571585 246568502 473994445 883814887 974058626 846570853 988068899 34711134 214445881 776130420 885135186 932876478 979970770 258264756 699432300 610425674 788273272 63458572 310402374 153894699 866056900 914638830 969937417 731444349 788160456 405567296 453373196 844771963 883320966 17565394 953983167 130890960 553551940 784054090 827393942 395542440 457498226 635468328 850869098 232831787 467419533 274417354 689171770 108627484 426941190 95180347 988128089 548211848 737033669 121801144 213878425 233387101 593689266 112053536 989717948 650672798 822993480 618725733 649026541 256124693 412140563 922416131 984565498 574877384 656901790 635580362 647938779 414465846 743246383 334536141 618005140 372347102 422869403 728713354 817257129 771337232 776054564 911807635 980155502 585141214 809836808 56220799 643812597 484401711 707996325 59212763 776113306 88166850 506762118 313952527 532749526 797311909 833603109 359304506 973074319 705302746 766382551 110284130 122339827 131483917 235582568 407688413 799396872 317656210 728317798 216669952 535813387 611680739 911942216 202514593 561309587 770832957 994157107 764629440 795573609 734697360 746990791 394442047 657051782 437954046 596912449 278006724 308148908 66038287 285992437 263991393 716671960 448730522 591628112 327760332 553572968 594745725 993422353 978303052 989408738 848927807 920691010 719587426 804080732 908046212 971917839 228596017 754075605 225179786 596651248 806187625 910783878 616569187 925321905 952608827 964415270 470674901 789033825 430299089 542184700 180760898 305583760 55790728 728513319 516292810 585493139 145361386 252747971 976292848 984687108 85169027 801651632 180859714 911131432 347289484 394932144 475116514 771334248 678341363 874214710 678497254 767229358 303429329 902343004 535473314 933400135 820364281 873563799 167071103 853227027 664247159 915253467 323979178 676776420 840407281 874973051 412799840 791568125 355759009 720577521 131857180 740795540 725704528 993747864 419259987 775642582 55757614 274384607 160574708 515875536 608053900 803453004 531650612 819217910 537747333 877377022 61351767 748138349 181409363 386322464 231711411 891203050 418670464 552398489 844909761 846473147 713626913 921033689 668614480 835258652 843002533 961031435 837957287 954212960 316247550 725752365 600458843 703516806 38776343 367469270 244566149 513513569 647969043 876369828 132327753 515223594 777580625 980672510 194382292 635756071 464381314 472027539 264262168 687281123 156801646 409763787 33196795 928360516 82814631 591040210 866293203 922070033 625723233 652259330 736674098 763309486 484293069 555301385 55487641 461529459 420869300 807092043 820939328 913284801 802820310 820047006 941464206 969954078 391716368 839844201 150162659 904165756 24860658 90809325 766015907 898307549 807806024 908763345 943165914 958653269 489828618 962611620 854790515 993375125 696860437 816539714 786294217 920252016 29800982 896083276 473198906 850594149 418915643 642547268 599652302 946052583 682329182 720784579 278772926 644362406 412278297 905423643 446063540 571756213 960360974 972836116 314981620 340405633 379280738 500472007 664896100 991016149 586044450 825006572 557605206 937746651 740794369 817743711 897543628 975798139 931357653 994535799 622546628 696745182 455697966 499605790 802644538 999053543 338121762 990617538 180088625 541030113 378111891 630080745 157037412 355072528 335969972 580836142 536193746 862884439 499625796 774336618 469478564 551510730 169865699 942654113 316993187 617155444 242819746 314533094 138735174 232637051 514808606 932381527 228241001 914019943 852608633 880823304 625748932 769889152 934233698 982078082 238286252 673464414 256394255 879668051 313207766 791989619 57813129 174799894 220938037 785084561 226843381 247255673 724012494 735572868 65875829 996162541 268508701 906877409 408519345 569264015 103882274 595115803 340938712 505063705 863237041 866452945 99334604 922956544 298673964 570344740 150256310 933526910 538421673 939548220 507898263 714630813 475713568 947791824 127852326 355278550 18382678 815775009 255964028 848620523 819704012 954442294 462676372 703418138 700364866 997945471 19928518 659381164 834286120 933392436 77286579 523967030 448390284 783803416 813031796 931700785 230920821 983347183 993961739 995767346 238313538 606295839 27067398 627516947 99748568 496087960 989390234 998051595 939569656 963587234 238940048 613249182 551406835 804998947 508123165 801982377 14868028 505728935 911272880 996324387 996678977 997935628 873170245 921408723 61609921 469147049 955051862 994420131 677514176 981208815 969962279 998258729 221820613 773439555 793262750 907963559 538337129 752832021 243720403 492565858 435023934 751375448 918205693 941051865 986623094 989772885 253065526 736060627 844717276 972746028 30564006 304136566 948220291 974818458 907988267 990805417 803743569 884502124 857089997 944444853 157811870 635958755 512022375 855331553 259997550 277146654 66100902 338160296 658782184 758039675 544199457 704608235 806909212 870770217 323856286 965382363 272595040 662768504 286353802 983766583 25596692 367620173 534457567 824601166 396070833 845697292 708799849 734755704 576273451 726169582 153206133 686923374 56745540 297046451 211973103 643532254 575538233 929173262 782760052 867393727 924722816 959224094 570180627 744549044 776596066 918420420 64930485 472162679 24671752 693034833 935429368 957510139 403503134 884193229 995112832 995473626 2064602 358653961 550230051 721023559 988297623 998845072 126533513 172527876 777388296 881876603 114095246 235354668 147392972 260990902 925153768 947278490 865515020 898638046 838854472 943141130 31579584 702588578 301131258 460354917 422758057 939355177 112843224 232360234 632576243 656987054 888104331 921853924 670925317 783891366 359563452 396739086 600284764 632709865 177765722 920567269 318092920 358143244 975833281 976473778 299588871 704303076 951839609 989591332 748941796 834556866 379400532 662897271 880534945 998069210 402728477 696186689 497440602 916480908 48283411 534766360 186812674 816503457 953910293 957838013 419383611 969973255 465678404 632544054 972343900 989170477 698964505 989014572 61778390 460773041 480477596 711706189 866249871 920410855 222090981 772856090 537481732 638454992 77764791 503278968 85738723 680268406 724193318 734819997 18503915 51425064 579439666 711428421 652667381 863835211 660850904 691590517 42283004 950442138 794064915 945671540 628894432 646690758 991890156 993949429 357217242 479143037 306406981 727483996 484600894 921157716 346599030 809585080 834862049 900898378 110345907 634729861 744315913 926934556 689408746 785656026 412635946 815650654 615649201 744908789 58572848 268670802 901116169 956020246 170697809 591253356 673481949 886878011 683383563 831476458 577480818 987222217 339904772 480463014 349650454 664236335 421705685 924871048 706202507 924103378 191847113 247565657 889856365 899230865 622635986 650324020 802425003 887572855 609688224 813895940 708609042 734833715 353707905 546763441 470552308 928919538 413890977 846687105 925106388 944524556 344828073 691055022 190660726 776451805 181349820 827806442 642971113 960099255 212502049 649479651 702091349 864174338 975508742 979459850 185743493 422781934 934903348 989474089 860999387 987220710 5449566 163892545 15564820 872892704 96416863 345572635 670680266 916867093 491505344 647535810 940172762 995591324 245559335 372699106 635525895 647185310 133892850 852682139 445126099 955255773 738003553 758902187 814455788 967094345 239459977 877193456 399234903 462579207 608883429 982692411 999571715 999747416 369270161 554546002 204480288 997918669 601061896 825492460 367143882 566209521 570779012 802408985 474746794 904327920 543437923 605183273 107786893 183732461 86098684 633530852 295944512 484083549 532214539 789049508 515607066 519453168 144798486 906965643 959442245 977717794 690654569 697700657 644219242 677960518 670757529 775982427 173211034 782054066 36627960 201794140 351783736 418276135 653025209 814991920 521238393 614782231 670359787 752965344 637124278 654198578 811797252 893627343 696571763 698343287 345547451 816198742 814457518 995130323 698660152 823340701 638795707 680096343 740651692 949425661 456093094 931009477 734962464 998585905 567929426 819260926 154645829 700832137 348460367 714528013 309521376 672977576 400653523 932369218 419742494 912386089 684785567 967040979 318249885 509863575 794595102 940588370 399445172 820731268 622597598 855576471 746166352 759533913 453587778 615428503 167282656 263521863 343881927 545320621 233448887 872464300 204842395 814527112 294662177 698989368 645025264 894646657 45581995 296940306 792572699 902510022 911052537 915039029 535914076 835468299 273631461 734232486 716395834 856667588 558147003 887049101 731987082 733489667 918408244 994789262 342047177 390876064 494545773 960544369 410213282 467521942 764616142 985691531 237757615 808908733 289515382 344991011 735319733 741474632 591993625 689962025 531444754 778820822 403215760 780267989 215400240 782108758 54434742 149039709 690605536 756775204 22287833 677682728 281750061 443697797 853686353 992943822 750841534 808497717 323031648 346620249 691308527 892205574 915008742 920738748 514736978 558403871 956758211 983859858 275972633 871836405 98744029 179121872 946716926 963206636 858433618 990400312 724457708 791134348 298344071 887106288 609499583 730991479 557665479 743756219 197291417 974749101 416629531 967825517 379543752 940350464 158578733 413538043 466637156 643321167 518102695 711884452 475313124 916661116 594527418 899280427 644496025 790759755 855363849 883352806 635732379 808569444 856899837 867921316 359045349 611211593 883030413 908166640 175847466 492316209 994111313 997351320 719623114 742911424 138761418 842817953 272861327 456234915 35650546 573598182 908430940 978167231 424997881 637738232 468468523 613877947 262843034 419045815 521552386 724974948 893870497 984277076 276918519 734869362 357378895 990762930 645449140 773594682 16565234 90217338 382202787 422360532 807980248 857903373 785938963 915536929 284422882 768427565 957441914 974638800 183482632 351709318 418280333 674628223 73891693 738571459 724379448 833700428 310163782 318031961 245427369 323108391 476808451 638507982 525776211 790338206 646807421 980927813 25571934 839269102 787757692 912856616 527842718 673601652 380574674 423078185 558932020 776862348 779036204 974130393 803559184 849786972 135253431 917840545 696505307 876652840 280617594 519426371 898859302 936189416 118003608 903291132 511243815 889218650 206817162 772553686 413901740 699920974 67695831 723860363 191084138 650591701 474523729 739301112 694243267 960143524 650397044 861845549 181974813 281856484 464918099 925564933 833097657 934096951 193846370 375156511 575582242 659239770 829415621 940300383 925869662 984279320 597291579 841968017 666890430 738714439 402910165 643134650 250212734 451287568 138726133 436454808 230723477 976496874 906212640 928813188 14382199 435297905 553275462 660722443 613226485 829748022 674923016 897859924 162836777 165077968 91013706 644646659 85863120 882280590 553725267 747310969 226450507 323477842 542088297 703892904 174591229 655404245 682700011 901624813 878337745 939881778 278909125 908511117 828886731 941789933 177822271 864498099 294690688 296300510 680064752 892491378 793725020 985067074 875437354 946380635 490661853 636021091 206160267 612526228 893552999 965391537 479987678 769346166 810156039 883225758 201354057 842295768 820679279 882708781 619103341 672922569 156459758 561859689 304964055 676291447 232129557 866746778 407634671 942941103 802007508 922641885 285118744 682953692 222865079 239476383 571323855 911997941 675212098 983985180 963720194 988849276 416444956 924440033 714291321 803296464 208407852 591852707 635854135 748007284 413121926 582711074 912202501 981201059 236834142 293999000 203534103 433553880 760514047 808411430 316126150 568369691 617477741 667507330 977349223 990884800 625546567 629136303 66158699 210878756 527390061 950644567 601553233 629782768 544184755 890447055 248091069 665379249 499088923 566228594 540379398 857415660 326309078 893982275 939445506 996392681 10588278 593741369 54252082 575803094 734999357 947351766 723991751 881918319 335705582 791422508 823478092 849110533 427017276 875894393 190793560 361014056 91033530 178364704 243670390 658227721 917369731 982884726 365181881 704377940 922881283 928796984 248442582 899983858 183251496 951991619 95297244 650395726 207840749 538417859 264546133 504927228 246363350 770721513 635331664 822668537 187743777 775400151 935990510 991348904 541544044 946122028 222913413 705798380 280251252 856268962 612232095 707741421 600430148 675456401 772246872 945207189 236994832 511143875 326026707 593517943 260508285 662745369 577523164 722385431 776813759 808225699 562534163 892882211 206485789 453574480 124122672 500385510 829241260 891168560 210529669 414503999 803770949 902439715 209545966 790821133 697269401 743361081 460606893 826129281 862662265 890867123 784245323 824627129 173626609 697418859 169210223 771062255 521449736 934995982 63867269 800768866 771293001 848048753 17036145 370571594 401718250 454980975 316089547 896961878 973228313 997093568 564664297 801519124 161092124 764269049 817632841 820539834 483384463 789769971 164991941 245261095 943605118 966656947 79848818 520504361 714081180 836740391 142840844 961744468 985529317 987323877 678800010 695930157 772376866 794708907 84981923 190547163 983046326 997706414 372052835 589285822 210732176 822949785 67579320 854181319 369558302 476150739 868907617 951464472 494781145 865928468 284396984 970485797 545433226 892513739 258969440 797917213 677172875 847782951 983331194 999531176 62564127 282811990 615016979 825521465 137058274 646252323 852777947 935882204 831743850 853552179 520809589 648177904 602398267 751919830 3689357 584787348 707174269 925009006 690013184 936365017 484014654 925082833 558177870 877160587 234717964 424696123 672471577 835753305 466961273 973955331 809782496 883215060 448523058 992816890 441291947 612596288 654625866 697592399 335304225 398248706 782036945 898637208 299428576 956684265 784968975 848790390 905330242 949930954 105543659 855224074 849330271 872390890 735128196 893598612 883012124 962094801 989037953 994750403 35290723 302029753 661197780 891357929 33330827 386049727 97560632 151521150 90386436 652348517 295479139 874850770 782309678 942788735 168922145 573720698 527389764 741234449 233471225 267982555 738733475 861467108 880036457 881562965 943006661 955105467 667806119 822573295 865349717 883533798 520878002 869238295 381887915 410121273 801986381 969024866 95676547 167484654 71042692 525301732 306841974 464753626 330930705 375090442 594642625 902807080 721602621 903920571 246880974 933614212 84329047 461564386 438626445 621173096 469376887 681444475 434097470 795462621 490498965 754355641 101409464 133962858 240618401 318356945 759394321 768449050 483250139 926884675 514454963 680672148 814031516 927606187 894194718 902350465 904888528 913844080 704574373 815414713 625519291 889056305 808545842 818265623 894032518 965696457 624809445 906878290 703763093 809036595 488467815 842596008 655754869 806475212 630931919 635793860 770726775 904622170 903864911 942347192 83692505 667825215 924789032 930371612 329936528 595665586 201053730 882295334 300938363 570097903 301932203 369747451 58775403 298331297 756907551 870830213 232836545 581155674 737618307 808947988 416116656 992496782 751256237 856353935 286964862 964035159 889173713 978428506 681503926 944551677 325756348 810727720 814822026 917388274 984888920 992112664 474718839 669832842 892294277 937981953 395404881 400170338 325969519 843690818 359708115 750805101 174780094 182512890 880109527 896621836 284354832 396520022 915307072 940266128 248920143 789938962 852836101 906440461 951132621 979281955 321074585 493527751 327643361 983493478 353383793 785640052 519047651 888880042 15248133 857397011 62085109 290859902 965588256 976668217 410007298 912032023 52674225 915212046 861659493 910393480 986220558 989947132 799820967 841670321 716652112 926078479 693004389 735171461 368727551 786666735 540720723 660354955 22639110 97991242 853383214 969010026 768968480 775233228 848417731 904514663 667187759 690259484 784101490 824718654 584615468 653520045 100143681 763033319 10081687 763938402 770782211 793515055 787302858 965988812 91062440 326143387 91401840 815491567 410065624 937351028 189336859 932261859 804408294 928219755 573146482 861367078 583466885 584120282 377473473 699804397 292470202 560413626 160584842 951107663 645548969 805679467 70528781 247395134 775936138 800089500 916400494 940456120 594143916 669926545 162387061 690138616 676201807 793212565 299876385 429831545 555017297 977342135 454846748 481113410 878427115 882889595 908955296 953538010 595228114 949875331 621191734 908961202 96631066 950273756 105117867 863702417 463828346 921381730 108453010 205949878 877282297 915280694 883205071 904120751 740144091 791497655 436518278 662728652 401276012 606339000 121584292 901342841 654864882 970033588 156671861 947179529 350592886 973266108 187554279 198141661 556540025 775863146 407764790 699147750 784596740 978583916 838226850 963284044 146881205 885089268 608775083 775707257 728232534 940646340 294292620 343868819 202049520 666736905 851594762 959273824 24039829 654994146 67799794 213628911 240039097 263028648 717984361 854057833 536732477 783351691 756347932 859387926 984557607 996860728 378913206 719892212 575258464 887977000 456264105 727448676 709004723 841324516 712535089 942142905 610436115 894400028 69346561 844767371 29876152 270177931 253786220 919830218 500749846 993578561 870607393 901877094 310320701 381915620 58673384 101554302 231629959 266200881 733900978 783150860 247436545 839396107 471625483 484821221 578610940 756771218 121186861 785394221 5662018 738708342 289120872 499279745 420127377 827595622 81581197 154899847 348409716 978212657 629810930 923218436 422273142 859438785 439061878 992507023 954108763 982325731 289474545 783692210 794114436 960064140 784371525 813906843 21831584 372045687 735479275 973219212 575248645 833699340 47950835 520254032 419728758 752453114 538404108 548282690 424593173 808413248 970537241 994490116 817942848 844605896 604992235 892556460 307997934 819822080 137015996 424907453 905055475 974737575 909006914 996940105 779431866 919120101 684337961 846083818 24622733 150520337 208496975 417689203 680650222 933691315 33382863 310063023 772285551 973264897 324623850 491268549 908125939 934011904 90388488 164498058 678117049 789969056 760202648 818129093 235483199 949139147 541923442 717953990 584862449 624845970 804596093 832476906 238390893 696824815 785394730 960508073 871528297 963805188 101740154 483111092 539487648 992306383 419014602 907448941 436578846 573582250 659693992 660757305 775309998 905001331 610311603 841135621 816912433 975966077 166239216 621662057 135261693 173521245 625600232 807268755 700190046 773164692 442608662 522690628 290055868 997557118 666842306 784584843 63508927 167608203 461618620 929453644 410595234 639283877 318839350 933800458 105670515 555161443 930966301 950752803 548349649 589523892 992797637 998332310 760985701 952342147 862040271 887381325 241953815 279607920 569940409 648955028 8949439 384305197 667654255 763006001 661372400 930277691 20235780 767838289 813862126 820430249 552988877 715490047 669429673 980676979 136488049 896808005 632515433 892034966 157699267 984744260 405155062 461319072 386111458 558636405 276298744 466630159 163849034 375012238 485775593 652279774 359648594 413670085 126558719 567099995 744814150 988928878 685784670 774488594 90587348 519169059 585908640 782694714 882226641 959631962 256577497 696329381 7894080 72553012 533933040 791863714 228864237 720284607 777588722 845126410 848900891 979654197 858513908 913498556 446927018 537683150 551589836 835678562 467883856 933693495 403049457 634485043 648042220 984268533 163361738 507805920 750717269 841675967 385723100 697267366 803967212 856145157 732214455 814500701 861890888 912389112 858805480 870902822 623596661 663928358 705554482 903201835 441909925 867846811 284303661 685152144 298491883 671459309 244612095 844634628 395708883 924720594 686232589 810152825 617138497 950952929 540116585 813563800 580831125 740989960 560066759 696954298 624676605 964136547 220167481 750318503 849650305 900902818 987212941 999887073 985166233 993777176 655758209 739699363 486522395 810015126 828112357 876246087 463549048 545100176 220916550 852078005 375591181 400744580 777935138 797233539 120068573 881934954 802996873 832406538 8191285 395279501 84386361 502387296 630583862 679218971 708957139 920010499 573771135 646003334 343093176 939052738 934558342 947691194 661487032 832503508 953747941 975192255 281019059 476277954 977655070 980314243 591541292 657184415 26668025 121322183 393530862 887851850 690024103 949845103 847849092 951498019 610576478 630456608 971408015 997964042 995844834 999690235 36462739 935449866 276723752 919774798 190303933 908009586 291578949 931476503 256048396 375456420 229968566 580007126 251168190 800907675 122512851 708100703 445680699 999294372 30333375 519665408 385782930 537843333 152392749 431864810 666341651 744544507 886155784 891225005 743151175 886672034 102152661 589926514 302175670 680185767 420185047 548192567 935058514 999993238 180638420 363790476 248391557 890529165 249383508 698957462 169222574 297278833 967838514 979943921 187666756 683646441 474426698 695978052 721642979 810029956 958150831 960912064 917704392 927198302 888395114 918507896 720576262 993790173 932082988 983656014 522460852 604410313 838251320 848378004 740304631 766729649 129282786 144496482 545860259 559783102 111596816 815640768 305114100 707487175 501756541 675360807 750082823 930743857 594592568 800234518 551441624 818266137 848153297 988203400 326421645 599314064 29993400 120681967 426312839 902283731 373009946 774907571 448946172 675116077 536683222 905527816 128697299 333235536 650880271 859644614 907260302 973297981 893210785 978883424 329893692 602616949 601562002 843988361 816398845 967473321 661679371 851311450 940475859 964834534 400161131 673886561 315135570 797154057 589281677 960154349 506217305 750287560 41637716 917265425 616664046 646188402 669608054 897369312 151550574 427697266 312231400 346821012 669397316 928374072 332508749 390450005 608784636 738177725 378119560 636238112 420614816 883972105 128109418 285064001 425483534 993708416 712533109 900861518 855421409 927112357 142252165 601780614 796735923 944132246 203000317 547146950 124602455 175670945 950391825 974161893 238109771 574413759 242195906 496543908 455954560 911285753 157200776 665169086 518936169 597118754 110296025 740579433 78208257 227342269 900245887 964111535 919254169 920684255 335315449 470809270 470725001 846404423 625328346 979382973 518614039 723709780 148279937 805047310 171996329 815821210 571023310 967123330 247322560 893916754 944634520 953625703 834531563 922627030 807460823 810889977 669318322 928102398 665058232 863942849 13178340 888645661 674611206 715596040 771807778 834389805 410646251 896503191 716329753 843170579 554528193 821762989 771503121 903314795 104609565 405050201 244811663 350111454 691921457 825118371 643370079 737949899 826829689 922647225 928949878 955374493 246666296 292470357 153263449 423045941 148558654 888011125 368984837 787267076 590893334 699574513 933822441 981077685 971987088 982004532 912241913 982929228 292890007 875635103 441820620 880965267 15041 325794496 128528033 924865574 303775775 915665334 153162447 581859166 133518282 525010272 774488387 889241604 589644041 790268108 48708033 816272749 381955756 568721825 241477446 601515493 726550014 979465091 63158668 760804544 798564173 903842469 595830418 845073394 271673503 440041074 691895197 939154563 939458474 963325830 45259659 190801165 745621289 787760299 175983362 559268397 457539002 956958434 324119350 749555616 882494228 951571871 317741016 651982523 325071980 761169770 814057701 957053522 303172441 495460692 897970661 963142217 513971109 852447520 561425444 864798597 609265327 644891049 299111506 711369138 80713801 741899254 614195762 777161651 233876880 906034945 897205437 907144275 988228091 988507291 822418758 904053995 721262249 882626806 980750061 985112659 138425267 578870383 788459792 929653934 145569467 330888719 558457711 899654564 994089544 997102448 743559653 808559805 421892039 505749931 81922703 634667601 945682399 981274102 803992298 856093621 232617866 362433172 932433313 947572963 713619882 828310798 845575837 911896998 473974147 993255106 336582378 359124825 896244184 964345027 975538511 993001577 581401555 911749615 402125080 750146675 293024491 905988532 332076088 877446636 766942982 775759881 440491108 582103938 176736735 766274612 988204713 995754545 636884825 847165261 163168360 636021429 449459723 520306116 796254962 806504209 953775640 970415696 729083523 972140309 148181392 731056207 770948408 902214123 312840572 576434971 227952463 672162702 826687192 878958406 846573793 888674306 420387140 811039657 652808832 857108570 917368092 925099009 184035369 623416244 600321076 912411297 482152221 689715766 673803868 815382552 131042408 619738428 9010442 944456853 501726105 907257184 521579423 732458980 890101287 915285194 347432312 411305864 412344505 772249221 232601480 256531580 612493243 846663052 279935382 573735255 705427852 830839310 539289322 760049998 96144072 865443924 7239480 472736491 511451273 650574835 894523802 942961049 558472710 827946326 839825216 863424756 172655814 418386377 658562117 871283952 312411878 553893511 321275281 336493946 890133002 938110191 72054115 166744865 40938615 496123203 989756359 999956444 883358638 921047442 421965576 570747676 420031355 611595333 899113365 992528609 669070486 693207065 269714945 948584643 17486967 238021115 775873455 901799499 141041827 615337400 923259326 926218050 524253389 594485633 738553007 894748434 4701876 186550215 686447789 761551977 621108939 754159532 668455634 792482923 62137382 743123321 743618806 913862066 284776712 748491799 459903208 905746119 925906849 992382807 26556422 682371430 646052344 768733209 670752117 912648877 620863911 922033607 335307214 651624889 969955057 979636053 382522297 512239806 63749986 529473764 228409730 833612376 649377271 743222443 645179755 995134377 486860553 771155195 99700970 789741583 608515795 854488452 501916581 660137616 681591796 875093785 643425265 718204729 213261426 552281287 233788227 245415521 87962835 366847280 23938687 774383060 382382588 620408630 909752926 951479359 789285225 985599144 537471 478506490 616589360 953695912 448380408 529816065 46870870 945660889 646870582 850373651 456360484 989320300 893887850 965421718 591955739 893499892 661863773 751244428 960741445 995982965 230603226 523315514 585289101 767094948 951529652 954785794 139512127 266706668 157562244 699874881 498729371 563142348 473627470 497511716 950899422 964474546 299016009 480102431 963000154 974635510 591131846 904582903 605639115 737615657 485015732 497822551 306298573 605442611 495289389 619782605 303430994 875683584 191740144 713463019 984624338 990771278 954266393 975498318 697092904 858862804 339030237 558883900 341915100 768502594 470626248 898365314 110999057 812917882 329016701 486793562 90939575 933717294 781995482 949682541 226710195 400687064 378860449 404778166 452035502 743287640 783598407 993181997 486122989 825116502 104409422 822502075 692397845 951816521 532664668 674647012 761533540 841047045 414467177 751674845 917855918 943640150 290821023 587920182 181322468 961710314 746778196 887057702 508700246 685765871 383273082 884050895 123488983 291778800 3558904 70014450 464689995 576346138 158390870 616717172 808294287 880203984 314041681 676436284 837321727 847681180 696713167 934220209 813598700 983671542 849869302 869943362 672365154 869238029 906121997 969153697 262470588 357756786 876010860 954723199 18003889 326181738 580020778 599620108 766613270 986547895 734624556 780409657 74826662 347982177 94022060 663626518 455419919 590124556 314123078 767801659 137367010 812277271 754750982 907672365 72222243 624844264 421848905 517525244 36265571 236985462 784519404 803404298 915938643 986647059 215821833 895208731 493941261 743174934 313903024 778250363 265022011 399643749 109152767 762448000 548185916 739355335 398993116 460078582 251456579 991091016 911644419 958459175 137515980 381704827 737054855 962979628 457097207 504651290 913193662 966538823 930902762 987253948 51668314 182795650 416273670 883666222 136702270 218264613 369030133 704209097 775708853 977782644 87409529 623554770 725584977 798243303 595956500 672341073 331669482 814246904 546977360 695651574 102007181 715023770 223792533 853804770 115374057 895968171 631775774 683291762 963995051 969213284 543996147 887118757 135635469 841382102 354021792 604979510 514450106 794779765 575315554 830723130 241400324 298579207 533405696 868996034 399723217 736182562 885260097 917168160 162767673 748152763 128122779 994026717 400770919 802845864 55712406 765078904 552142628 668528936 632080464 777220348 577246975 966128012 657365886 672291656 833934198 896060737 362667838 436023850 280981619 833931542 773646548 915898862 310412955 808984981 864954847 970140473 188338323 764086508 271707581 785374661 508207536 929100577 425224185 909856098 989333500 994244339 172640113 297007856 605152137 972498919 880596274 947262826 810494744 979566583 596157085 800483496 862568177 893394215 972366084 985347213 348437041 452334022 550475367 612642204 305006026 923126104 859556709 890388233 870050387 965395274 485484350 721479988 418025144 900322415 970193702 994470800 166495474 685036995 276780846 322852567 908377941 927866806 835764764 966368960 953761935 998135007 543552192 943383706 24172767 911370343 570666567 691557844 353190644 535051106 509959883 966968411 930421053 952992454 850504103 905885586 942870622 954922121 598148604 653722848 931158026 966645327 799709222 992724550 921763963 968032295 258436228 612693056 611804067 619743029 521265922 905551435 782427346 885949815 724132965 938920842 642290260 926834612 719427388 995706278 363951821 747954155 249455483 832208765 238484925 908154797 534225332 956870473 214852312 743296466 575334428 590863869 696912342 858657513 205820788 883868649 542654261 963177216 168740754 509539538 769819506 923789458 755614335 888613304 228581348 311044584 435361752 472272958 923647431 955714136 208125149 659314974 766180357 772446692 223441319 394563377 961226761 984961418 783918476 915022098 460567484 720908380 199063456 971019607 95209100 693900451 307495327 770136118 356420982 723949623 680080569 883542969 53291112 527953501 830098202 847600107 89342291 447282822 598819082 824274490 831981537 890007670 738811701 760308755 691811709 945084613 441535823 718294152 848073651 906948995 638394173 881601314 579205051 714333303 529804504 809180531 229374722 651180654 286024002 462367581 393108793 437401450 714503521 943977458 748486399 963478408 765348820 982794616 901501961 963012158 124247853 358568922 229897357 810724230 114572595 752582554 438049333 811767266 103855650 810529528 81931591 137887830 416934933 519555312 750250608 784815791 444452275 785712892 210455669 773764950 414568146 964304149 682889040 927817640 632543941 836124681 755265409 756381440 786439936 932427692 859741917 934068613 14758439 333136828 525642374 856919020 571127959 938318894 996560625 997754041 512715572 907876412 401540275 689482641 299940872 593560876 423191380 497297905 400900944 993518642 456519530 730775404 247012283 685502692 177367144 507401264 869011119 922447651 137888434 403404924 6212465 134104404 403504363 594304357 669164075 756366204 653788045 939169256 444502535 965232351 45207647 255898313 15041028 409867826 150137377 876545657 391731464 474603846 994118948 996431483 798348497 968221499 241653224 464742752 49507042 182910168 811223245 824017022 619024997 924003542 487322854 727507867 557959726 949528796 521202271 582220938 776902627 796209829 418517816 572878701 957683058 967479742 375053178 472463699 71869896 209375089 491857108 951628662 638462330 973045175 900892091 937840610 899192355 952467445 31857079 146759700 52091445 557835771 852063203 882553620 567136645 768491768 744871078 895142518 731203578 907750426 391393257 392059653 400250261 688514542 385302663 782396879 294189024 730279658 502528085 711730576 583130308 722900891 544403934 611308434 428043890 634641258 782096401 948667200 529909272 627905943 792575249 979941117 444895735 803162531 635193423 740094413 81090795 590822253 289295143 380033635 655039879 858769676 196397182 415576426 124991807 594773738 969877640 989010188 350346725 411942723 363979910 850672763 185251636 506825594 400292224 867594133 219645916 380131127 815829306 853556186 481936087 545392477 264707966 430360675 204201219 382961091 836507641 854917768 751590266 881252692 581915264 989890628 534826519 686138074 526932935 779548002 763161440 981106587 90792034 325769769 128872252 325662216 321006934 741146689 744625499 899933859 371900095 472910860 496100852 708554744 397204676 922619492 235135516 733170993 311591793 697861256 352885756 386601480 945903018 946239454 24116756 875098089 808900773 813685306 348589 509260985 895233883 999210071 331024903 974468312 29119589 563051042 394474304 687848801 116055138 541672868 192232662 439165667 664586821 999858613 284109226 966024363 615496422 677182881 358183095 691656639 86540744 412554358 547045850 700170344 222740426 922473431 110866853 682841821 886096747 950752711 43999593 816423614 730740532 819165024 832532295 881500788 906967731 913535753 271124546 739106093 111804804 658165808 178717863 888008323 254900683 638116415 144110585 720846724 314428679 575269009 449343252 637951413 801295604 853062694 531308775 633974850 993018729 998745619 804836692 988215509 150327845 302534357 963961669 972298982 196352504 531784421 34172637 758892588 633403391 911194379 22658978 959771673 866068248 876412754 411984709 995733114 763821043 895422406 441598222 966544403 21173762 916937886 255074837 752067583 116262892 265188490 426886526 431922738 504489514 904477290 749780894 762545557 532381323 585797819 675275010 786630012 451110752 869878688 935454735 981091715 639545509 919541938 315691078 655284282 704333501 988530551 486351200 504351620 237585437 395868646 999783252 999958599 973651666 978882800 240017364 906965793 92028268 262877970 84167099 327939832 634146535 763204462 593028191 835906393 844249343 873062690 898447140 932637172 985547598 995542021 68943119 870727450 487662313 703877553 788070474 990882245 183879697 612382290 819786519 873465897 21472138 671318170 107068425 432484935 368715122 684557446 99369759 576073464 751521312 909823561 504795434 704549187 838375629 996600790 314886308 568514684 31219782 477782952 850314528 996916311 787488231 902279929 309411304 673412014 666898363 774162126 210473269 936453810 811827049 877455726 387094179 667987673 978703033 989112337 998118497 999872027 595660415 918798662 159486667 261193863 523841065 662916755 60134935 934679985 183781696 639589533 986492520 996628647 36564151 758122877 307056981 861185204 225672329 358365087 928632277 929628660 50813764 747693254 934588729 953960043 341643228 361832916 305569567 434277043 419609413 463707647 213163422 816002291 880021742 946086725 55206270 190901630 738022542 866688391 806155718 821861505 892430534 954261999 911631411 932538129 617444281 818467870 490136593 686252422 290050022 667376999 202743161 792793620 100549333 683977722 566222548 851851229 909070890 952033947 710476478 915753886 484221887 529340007 40174233 699343079 841838680 896081291 218145205 930497077 806774199 815203873 745848099 986999801 512999452 835952462 538162675 581479259 410897558 468223884 390577291 925791288 688709478 960885770 790109202 819268177 472247651 669188726 754940326 831884081 776351875 868274269 384666666 471685436 729564937 865380635 308009840 810450673 57681574 634060705 893575173 916735382 561676392 823765678 307547341 718662855 462267338 494569591 618896030 987844484 619467097 640739520 171644941 807948716 587651552 707433235 815326883 990612369 212124452 250516101 987062831 992479078 572242433 588689117 206569517 952440815 319981243 435183576 893528773 993362748 632847448 966022189 958011349 965626323 951064831 952538283 320923346 534788572 40587932 916558833 335274045 946581609 179648122 549056490 620372110 936111466 35705480 815233557 788572524 790334354 510772262 956145680 242582852 554023966 552017407 989623319 791864211 889617267 646585386 737872324 72002885 740494890 134821442 577836566 361583752 447688614 198782745 251529917 686431618 885993403 469985535 908793413 633094344 687211164 101176840 910736916 847253063 868388713 820756979 889096418 429455986 770832461 794185174 990858491 140932694 439011258 78379016 329409526 122512558 371841713 416317715 530789757 439912324 626028229 24112027 997256339 455544805 903153314 33296915 404715849 632843579 856418656 741748975 743168201 311551161 426904648 155195881 371951083 12827527 72343944 575792921 775739553 104967803 840274386 353759174 800389840 917550134 921987183 872370972 957261179 272852407 434802800 856194775 903075822 590855713 842282877 631879717 640653206 978800185 979817357 355343814 632884644 275646276 441408490 151017852 700538109 799121280 972740557 170226948 199251995 908654749 951386840 570273490 630039289 895716961 918625803 753745186 990226095 41437282 903156999 899931023 910517642 451754744 587004425 609105063 855396092 654634284 666278196 615827304 751856526 268732446 335204024 517372673 729416556 84476412 792320257 814601916 821327338 713845358 898987505 312891276 955397250 301968763 331441957 914167549 960993098 976337827 998483409 790093342 918244745 161474846 539713504 825032433 922537475 256234974 506057844 732866832 861572429 188293212 436553284 791832133 918175310 317261475 342041892 718425336 797754229 459862279 609806937 183905009 525862689 625321331 741105550 232659662 779741832 74220481 498481715 779529243 992555586 900341315 997964171 895128186 977736383 527410606 712395564 920968120 925620504 892710380 916678612 731534264 948636068 671243225 717409638 510301711 977296267 888085485 981040365 235690750 996435935 420878549 804212173 542076292 642879272 569825207 984747690 71794298 378805946 776861100 954500651 325979433 627977877 954675522 957225325 428987099 552454993 782264525 865935878 515404974 920319139 745995963 882870016 49291685 102848798 117195166 848584036 713484299 730769681 171493015 873893220 723965545 855738046 939742953 974272900 339567779 927887530 540538467 683001126 159391139 984671182 221313970 531669538 452761167 639641804 588652579 820953846 583405608 997200405 540141443 838272315 208320124 670437423 762984226 976786246 37281286 173846344 301052436 610494033 964622335 982385211 752376016 862839230 545823585 904775630 299258573 407785196 861511765 903662384 295424516 789756359 989848374 994024705 139634234 218424611 369969355 698965401 216998378 377831076 285056463 523108096 282646761 586763612 832584488 871856169 871942985 887401873 730237584 967266939 423814110 515188566 167099537 750903973 786021671 972205811 197090351 650687812 565626376 984663882 283874979 566997021 693703407 847713543 29594165 540590108 345680182 940560739 198896368 493141118 68599658 104464469 13636546 475576840 948085647 964022546 193433586 515452631 472295007 481627570 130668933 523193231 149808392 193716976 817618195 837090007 227091542 953702501 144999993 873571496 218490960 657628165 513519739 685956562 24147573 356106314 153477600 327146083 105333492 382092966 195707811 795590579 16198011 689887158 510058239 973232169 408174117 914169947 979324605 985439690 21296137 405331015 703316297 729703811 406295675 658173541 295378160 436008568 804708710 854210095 686667433 847965932 516107378 728747908 315282022 936270457 293228485 350282679 494713312 512941424 959340765 992726830 453632525 498312728 470774224 754091723 905729066 949154509 770858231 962670781 749622214 899942779 668372187 766804467 664286 287371264 725066981 813662179 878810072 948674026 42156404 788432753 947864191 953553592 857800358 921276513 532500047 681441445 818502579 841410089 281771082 294060482 297561557 808355918 117427390 250790254 126077473 740754257 659941935 936471762 544655805 815622792 472730877 536620089 539068151 772601125 498904878 575451500 812534772 934319936 504319871 603294133 25959934 151855275 32636087 287075115 516575274 884302453 984215275 998899321 371437103 959464115 515387181 758855965 706625922 817926003 147389828 921784364 960194658 990319262 493412814 627740087 166614840 760968796 110547423 775136531 988088184 993684170 346409615 790361385 837421593 845448820 711573631 866798821 213851909 699132384 164578626 718132145 887864385 921988392 453199023 775405530 335248132 682015205 750806353 882779854 358465037 843269369 304483431 356295108 276557186 680227802 209778706 746987200 412082962 893189683 253052901 316081681 833789512 920851843 161845657 221124738 965311145 995347252 669493159 939336149 282415849 502638959 960564531 964795449 938681048 951886389 513757211 749804521 269021340 618646969 428123570 883156889 347504667 417661799 35141876 950250769 126254281 300784832 243436754 745051661 567113728 856793413 387693107 684696966 381827334 432553086 80285746 260560090 206358375 574348984 685705926 803413746 687470915 698360856 811975524 968876766 232229875 715806909 162029268 805005242 188211984 271324456 287839269 615058622 453112428 586051971 971627823 998703384 13512972 962705883 385263630 465853006 582639469 838323697 833228019 894856248 468203705 726268843 926854466 970777185 454411672 603013008 180833347 428798201 145434738 618913778 974832910 975956847 343650084 455772617 652053085 944714085 788182377 881493644 335982730 689937652 498035449 552440974 497903066 814378631 752919624 918975439 877066586 934307052 709482244 886705336 493858828 887408585 92958381 196726954 344147689 409454615 525094902 561216464 379017502 835806765 707851744 925970499 986361887 988686510 357198524 801907666 901642919 905038580 896121081 996727798 850158512 917717009 229585911 729752609 323319664 476515526 639204919 926836921 757960354 843927380 130258683 980462728 919891805 941164407 979057106 991649799 868150273 985056050 535526714 656912846 642249488 837314081 5969757 673242573 608412016 817540564 546648768 664927827 625265522 765935922 503902342 625436372 916707018 946083151 702504517 948029707 278703317 632851959 281654242 698454098 156679175 389356925 853393988 925974781 15433451 448443017 826138984 987686795 153330165 618558077 212773569 600888764 306825025 424864608 363686295 647892150 574873575 875863519 873811465 984732813 464406794 828977441 372524689 736448774 868164063 943764331 197114149 910375521 495699413 823717320 844638119 985584528 805864740 881568764 41855752 87447111 282208940 556668006 734202082 749908581 69421346 665590319 195938124 234454433 313651697 341857884 295643567 355998255 680921580 892310865 530087792 803306764 390418330 985937794 415582545 646634583 561956706 562267967 529003682 727316595 372921113 794754177 855107911 877697997 619592207 795981042 840959647 959910911 748675988 973912137 69857407 993221120 898885031 911187618 636193548 967567472 153011305 182983413 602172102 877763981 846391316 906949791 174123405 691521565 654290942 951487987 286786000 718453509 764957591 929404545 299690233 673581435 173101788 439814560 147332519 793264475 63833787 656150773 603182324 728514414 864792692 963067438 130635870 265349313 446168973 981650915 96736385 145125660 502736080 714137847 589032116 790129987 330155781 490359953 485763527 929561063 766390967 783936604 990026376 991895268 251284068 265397918 574266547 691069067 650145634 656419731 181636017 395556511 99171365 690424680 967713224 985115326 631940670 999181171 745360585 845589214 183122090 978548279 174243641 209272952 379593993 604010558 60013690 860546449 158142594 783708443 922891758 973998680 955357957 987073142 163053902 591717731 391256620 972748922 575336171 747668275 505076945 964958886 296826488 946262182 981615887 999467341 330819697 611824210 43912620 337259961 139143068 170592244 25666969 551744383 263776658 633494731 480210951 955423250 453284672 853516807 780161025 930694386 521040330 743052505 173512629 894064133 563113046 792503554 883840575 939484413 548416575 884736868 625380536 984312649 656324721 804236679 500802819 962278757 852561994 990609698 921760709 944814454 142885256 730733476 104733346 514124074 321147657 481764888 880404154 989202069 904435526 950416596 882793974 991109345 181231249 216186479 317021633 382121119 96462329 495704172 10698343 493785312 245881809 618789834 922894421 968563706 126015572 594514285 278163394 712394770 654788265 899421465 765066642 946016149 175696169 267851331 202245801 627167169 413267645 978175427 819171001 952440572 334076046 478934463 967251806 982366992 491468824 821690347 224747143 764969785 467061210 662998023 849091770 859998913 143147942 714064808 781509433 992588085 978581614 999457086 234343031 457080426 598214404 871506868 506624033 746054305 342868306 734046442 955870890 964334013 456024868 975666830 135826367 154805900 92774020 540984518 590305123 691943747 771753555 816573582 70769735 212645609 633766336 836167779 508213601 985481016 913533432 967938812 186223311 859084703 371757415 713245884 999325874 999462975 542713699 827807966 559398156 780715062 118633390 935883170 833685261 977558867 997863086 998445422 135225557 211047538 81356252 885257107 118568874 193199446 345723961 765288369 534670106 816705640 644729323 683687760 358961846 517508700 774574985 841418698 930695347 983752160 321510077 328305293 182619763 461789089 725408053 816929958 828445482 980612683 730470018 807832560 862438960 910350124 24073726 27059726 339695269 837769922 919998359 936858062 467575696 582668416 805822061 963221016 280015652 581537811 964391710 977409251 870250127 995044307 24844611 59277308 681619660 967253577 351623949 729305327 833469408 875544889 662182297 932231970 980761341 995804481 661893922 707717458 32944969 94877857 691072592 865181890 32250527 271017749 477456146 565781167 653650201 746055927 21829092 638775344 607259220 851175465 171097386 558302997 588370086 761902783 740822973 879550655 526399729 704338954 395218239 990304954 854938594 918405567 722439830 819908993 860259197 928580013 829621922 891402954 43210188 253577603 634038173 993046385 104701804 423483741 578533991 991487400 419982342 718257288 920050544 926925653 387184619 907192934 736260983 878755696 508385598 854806841 604073930 883822615 559458722 587144883 659035694 679402831 682611980 790311341 640624472 676925048 506501270 782702423 2202655 889039330 413737646 626066847 934277737 966432378 697426849 707757767 714926769 758482059 70192926 86363343 806919196 941502603 7619020 168953621 620378516 770959721 799749118 888073954 916565369 951356153 429431697 595299217 150903742 733380202 83890776 938437471 113551706 911463785 907280471 961840510 353312801 841156050 334164079 682494665 581244229 678481712 941593464 956324445 80359211 690509233 999499331 999585489 92181186 374264167 135267713 886658049 545478081 910526374 688173584 848560710 195048285 957811596 362642887 617974274 546306454 998298182 135538584 871501534 578330156 761743427 88732867 225265872 435466561 468993115 780950579 929295985 315305601 743813048 875515871 940989661 133184863 563671383 362754026 723464415 516463291 747761815 555505972 756787304 455107237 913489732 11934436 747162681 429230083 642153039 326859747 422410335 384206855 760374919 42895083 288263881 296300004 855011930 948566487 962716111 44431415 641462136 921303921 978605160 839425917 946607865 89715207 247885756 286344425 475016594 984236371 991118038 544865814 902793061 702875724 752423168 709253164 902143081 862407647 993672989 690922508 839422035 830797824 855973582 990343883 991014550 999046574 999654792 460187859 646479808 635449870 658152964 500089320 940140379 834337106 860301432 674706017 823271908 810482769 818048871 672555067 721194137 915879317 926489107 616744793 868986120 652611834 902663301 559605885 929089430 843426982 961025964 508888047 944864311 761810399 984041800 40330337 338016766 959763137 999412247 932587764 986269149 280890538 896645657 582651067 944553898 693888915 704412818 596163673 822346330 687931707 952918195 353986011 481032383 227603485 265418298 688593583 880022703 266671884 876937422 962339007 990806153 126720550 875958158 37281323 616217335 128241482 400973916 775573536 969861257 17815508 304427502 557761823 664680208 580421967 858154233 908936371 966725367 238479438 765276367 982200543 998882781 247319412 395059039 393037803 676749886 171071435 323401496 89652743 746695952 852067512 957793181 713828851 934899403 80190742 319801654 251412176 641230024 194779991 270095182 27757394 673376212 742540865 917100903 949274985 980436300 346462817 517732352 223448869 894503550 678950969 683848716 368277705 900137181 36632473 741347398 492874776 541601577 977189905 997417578 336769657 956662301 222494056 953884098 449668716 783467972 218969649 605683291 432583619 751808027 94043942 295966765 655887869 742109445 944579888 981136135 519702487 597785767 54657554 209457157 565732212 716758994 783656734 882542380 28062772 534182772 691241139 894543514 962875942 966161756 789522239 911204224 468746677 834648029 464447819 678270963 583576912 949769699 297790959 322109946 79430222 574024767 388709369 631158312 664953130 711754164 654106165 782990485 561797497 595487865 201879474 261611107 131485193 699981451 721607117 798318193 156636956 293371205 950707802 981480508 802923388 876719994 562023337 827634677 171545498 845566338 377883322 936951399 208781287 632996866 4274701 47984263 975590376 994765083 83761036 155211917 781458217 796115953 562650265 697944304 909898248 952917784 284530026 960118835 891822803 975848559 641710831 730019341 410642668 559082305 448238696 675357658 272894596 491636399 110408641 765716492 888230142 923959691 931607805 952321663 756775287 895333116 330923511 890253736 513349889 638609019 274873139 574652205 697373322 828039862 501652295 667194863 184664849 757624024 47562626 920679369 894208629 970767193 154737999 845766890 47848417 286736493 51369319 632476677 490241633 848552820 650853380 721383828 413709518 674001108 679947458 746525185 380977416 636223205 176386752 223443395 99368073 816729738 882239329 913326897 939327977 959959335 674354064 868424607 529399930 972995320 950947315 993998365 827698369 977658471 553252331 897265615 194262744 362070613 671345689 706691221 459190215 488102408 78640792 833232434 378950595 887646862 674384039 807147948 255284366 799517874 896897905 910137470 509696636 558047603 949765752 975409833 702431356 730755371 338025398 669863660 505039192 649546903 237112717 622963829 620521556 983839375 21261342 515261452 99870481 552203421 620211526 977715139 621297011 883402475 872170971 950040608 890890945 976256809 990893286 995612741 190384632 350510555 19864801 664489916 608415217 705849497 344146994 965373485 576462767 979200322 980339427 998636373 217674497 964452157 765005674 781826446 501779128 617778682 767440380 981836753 400293449 440114095 751271420 977769155 195164735 809081132 262111236 777893657 241327602 435808453 750328065 969967737 914793045 954434436 66913003 337804268 966835601 998095217 107461643 266046310 162815651 524866363 278407776 912654943 533843217 777456174 205009988 418022511 285487073 427246757 952201744 961589073 479793625 603273033 193598084 421571334 519114789 806887706 520507401 741657039 334510908 931449212 716618164 868413497 626974564 944218659 746751777 930766906 96381746 889070451 243438012 982302795 631493382 776930021 771050657 927303114 410741248 480416599 464822577 848883838 289854891 571204246 101124888 149337766 128831005 147797268 339088649 416113490 99759681 517783209 797276011 985316549 102031229 888998027 789854270 897402098 732859225 907737780 625546169 776933106 38150297 744241087 920268949 933855210 247305221 977399581 965349975 977435183 613731891 656159634 203440725 933725523 108350895 494767445 571198 14930237 446776495 750249262 905051700 929318504 959302319 989230453 859923486 962785687 811183148 854495388 463395651 784888329 282491933 844767608 791202442 959418459 531484163 796337936 292598423 323492686 990371638 996423978 425073604 592634915 812719983 964586471 349958312 653199291 429272132 506703242 684898848 907525157 490330860 755244817 699058114 890189878 814540440 925957243 156178996 743013938 564894935 704821304 699900966 856237333 668738145 963641721 468181357 735286245 629145094 685053145 253180227 804739265 539437244 899893409 559578592 777197835 874012362 910411259 907573375 963274180 276007980 812343142 539095467 923712945 950778147 988342187 723475787 761016144 479542454 974727120 470813115 502858174 42087124 200516570 932469590 962713513 978667370 981609407 753344584 786759030 706371179 717353058 420962059 431439556 983065347 990197631 512771728 556233186 94290117 131286522 580096732 902693198 68689512 477714821 117050146 305775198 166335954 449679967 151280006 788496694 491349474 784819790 830261057 886097430 737541954 937767520 931440273 968681561 201461223 763936429 278349193 742346689 122236230 710920908 153540749 346319619 116413515 537673058 593491939 949290537 704791205 848653759 892700404 910575213 826915206 828526275 809814230 844629115 893955208 919487909 596168829 783251666 465961927 918841842 430021997 983973003 368806711 740380914 2940342 924369701 561615153 830919940 358179767 753677222 902574849 933054553 758973358 968237239 615725757 887183008 416917615 891742485 131793911 924100161 724152958 966500076 992481847 999653747 846586336 940246171 952191030 992282859 915118994 943622770 761566625 879381512 100572011 925195211 601037440 904976919 409335644 677906427 907026019 917545853 841021610 863074435 371717759 512855016 520133541 736846836 51827784 619080305 803962183 988845041 738698709 753540199 335736745 366122808 837411874 884357061 939133218 960778688 831330884 978600302 504161928 719097608 540238753 650332698 654158278 857344110 112499861 702900970 516177623 703301480 248375228 720046705 507154276 977856918 616694968 880137564 129857742 982452659 879408651 998116045 365917898 627901718 452059266 609933621 948927888 988609394 825685548 979825649 885875046 995996228 100204830 341065716 639051449 992672411 458899421 844954406 219910765 417003204 422086433 693958729 396567560 755806459 570020425 775454084 227647532 560574077 60430173 377558623 108689922 191196305 726851700 878211981 974640236 994296558 181636830 617575776 577154638 833867900 952695527 979387167 684426567 826005295 631171613 757715547 882224646 959051533 352563907 786978296 322236503 899608743 61990084 778305648 935191981 991644758 779948223 815126870 546223836 780796800 268833254 527970334 541480632 951575510 142152135 146879349 90721134 647880457 771960259 778937516 153245873 398562810 2619566 888677017 288181958 976375673 27653660 31597793 170855505 435289920 83197362 268843735 978685974 990226976 603135766 828027416 819199565 857202996 630902378 919500601 828760350 859888055 332254495 856256956 613309531 951885746 297349933 665945753 926317950 986759717 918624135 918698916 864679436 931545061 622413057 936537732 648710933 920649406 192064660 984535723 955676729 967183387 411530825 843628255 463883158 467452630 713597369 783235048 899552662 917765535 335021295 665773137 111091464 440118192 143994754 924096916 159954322 236811918 641114377 747578750 12639613 471821825 491156486 609222030 746023335 797631902 546257844 631065348 819152948 954389506 954174813 960217992 632745158 778409245 347939643 860619661 647884977 782588856 680134253 969003636 281836297 781639180 964424393 985690355 903345698 928419469 903412554 980770775 485359213 731073244 451107239 779367787 118803748 430680300 930326897 959282412 432608516 964212291 137422560 881346509 941484891 985987572 770007552 903020769 748568620 995566430 223100834 658328477 453504583 760243763 829487631 976585044 588715725 742835772 507818017 612213164 167137771 714678481 990480638 996960212 556770818 662002812 829446420 902713951 327179669 345336336 136038944 778730312 73368680 308821406 66301422 834810700 761338353 766355074 452121363 501130979 577742428 820633246 177061189 999244292 594635550 672062202 879548305 947251288 918077122 920787164 792802532 999124484 332057199 453970805 404821813 613797331 583280729 634014725 15082764 406642981 608131601 976986972 219615245 309778322 400023522 739669722 526927589 674135679 908527686 991203584 649873939 966319356 517580461 818073250 528371785 673128940 929796324 930342422 565203057 592653615 969901483 975091325 668612557 777868781 889554122 897147058 391719926 769996047 431993941 449120210 241514796 643812877 142337390 425809060 971972508 996381743 866239199 963335353 574559675 929920114 944080253 978252595 717643609 962564903 276360103 373220967 726574810 786810028 131605531 945023929 767497879 809595932 510925457 766487250 518184752 979277788 588431647 837205707 602662563 653160237 769616276 947001865 77014146 386280312 728688883 919189514 487790127 870336577 399946376 921458339 893072855 999169652 494612447 914688551 220420429 391896968 106470885 801912466 534237371 731645086 624089013 957173503 997003782 999393129 49777097 574235564 585027502 837558929 221800202 878922325 436095258 805064038 532543227 681320656 383783000 691391437 811620297 964165474 149547630 823933528 326775772 666750821 533018409 653056151 603890782 613303924 22039540 851566498 518482134 996799257 770868941 986357836 866971423 954237006 322821968 483864504 140624817 972757157 531818292 959839080 583012882 734586172 255657942 698800336 219824818 867681744 487479321 499092105 302925238 557351423 71063870 671804279 566920392 825781358 652761963 796730047 863351528 938396157 606130799 666918896 459112480 617889428 56165727 218913203 353641035 488664145 851237570 958442329 981008691 983578023 411483205 577366580 957659840 968865019 711805959 850076078 792769782 813787387 359712394 762866652 265385700 290191876 797870784 882199069 949799073 964301450 437581783 662464537 135018247 980936890 627058101 660477324 587991253 879523160 944784868 954244071 460978349 829707045 12493062 539419003 531765301 597072262 636538192 640410247 963656696 969767671 982888579 991840944 499675500 544806914 146657319 228777734 389691174 794175340 829408519 861179904 354958669 439595998 374628412 695261954 81127557 981173763 548047721 617141757 148084208 747685127 682143267 865990315 715028113 809002841 5761532 703066539 882203300 907901358 524989221 526437204 733127583 864118052 439821268 566231683 227749224 321585214 85884844 399875031 478018584 610435949 921727310 953818313 482929644 607228568 369262602 659276320 221676067 579967556 533531155 976144991 705862108 950565992 673556134 823891327 662805447 917753604 566976313 579483341 539095642 946184422 581991372 994337483 525849995 669797539 671694131 840876327 161093693 685777016 335878636 720683073 790764329 970842231 446627235 537080383 821878698 882301865 215712658 708442167 559600740 900930657 187920925 355118297 909953898 980741961 382348259 399122065 674707665 830070769 787332110 836156232 981119230 989717853 278193595 980224062 565387367 888395089 786665420 968798246 978835445 980665215 411095865 889164498 532378927 791496689 76182012 129213209 449114245 652820799 344444350 594219666 150734962 169819107 315156368 934992018 968893896 969467102 428482778 631431682 929527935 975742188 534637198 770581744 484163296 839069255 580051227 844457551 120421732 230654041 630587500 986061191 511750405 816902681 659547846 699819096 580158670 957521408 335732291 556827384 777073267 797917499 120694713 672029447 896522860 973038385 322792929 357404056 343217141 349402034 187527019 942364694 597322039 710882720 972724102 987324718 845876158 966698374 217309712 935173601 136300636 481365590 562833314 772527544 658833886 963951228 312552782 517749948 737755024 839534423 486267480 757195839 205489779 668012855 992937152 998084588 20999915 106491069 567549435 773722903 406449734 745980629 382867602 864407530 483862930 589783355 791731581 798593105 299547808 592081450 561284602 792661451 449924062 747962447 74026182 766489757 885279554 892997190 159747472 624245921 44286647 989997171 885752121 901706323 119958604 161173888 677585367 744348929 236046210 727022896 369961890 826117530 686267090 884765587 892220512 936730065 947144211 963656663 53680774 605297621 662574872 922989781 31350583 152990479 460558409 963662874 762000824 955871974 982297415 992364801 88704542 555526386 125264939 186692938 152540825 375930823 923857963 999443360 115688538 379211259 111621878 830129467 110661502 797405768 277641688 548970718 756546744 895815489 830804399 871162284 899237659 959638556 596487337 871469157 950840416 962187058 167828077 367805279 149601332 544603128 672845785 836982729 304610055 408800842 430503620 536193108 802730572 995000758 738507947 906217504 152831960 470123046 995817549 997782938 773778707 912461589 621878292 987035060 133024261 460051535 700639345 924188904 642624780 792276966 779860413 944181296 912766658 970490651 879544290 997420241 610104397 725206042 66418518 498764542 26206745 428225115 944121559 998585731 409418647 967937357 186125623 424475398 743143403 976142131 988069166 990478121 959751647 971235287 430747887 597591126 925922764 946595430 723550484 894308848 420434232 732536131 900941476 961907245 700080892 860548235 187823275 660570772 393823796 470592991 709275393 964381208 974031598 996564004 550717088 818167361 181213037 966594291 81453478 240050960 734441370 838391663 526653249 655944890 919964445 992276882 178957421 634028202 882199843 931323423 461115472 483830880 889396881 939056897 278800784 503723627 574120632 830861880 615362610 634850874 211306474 990777102 416885765 437012143 859454518 935844597 265887276 973379023 624380465 988938549 617652656 654190164 692728968 882078045 925631349 941284206 92458387 496828200 212941885 395239994 71426062 252723379 16674423 953850498 79517504 786544762 666735877 964209900 790219786 960687253 821691120 892130225 44535292 109257212 734603934 951409614 500875072 911165936 717722123 942185648 942156463 970900079 495622033 562642523 468036044 803443312 773328100 858637349 576042575 795726737 879892511 888710763 276469905 503141975 153169629 505148347 15519817 325697257 660038450 743903522 292194472 867481080 693349919 940875207 178006068 849531860 910528569 938536887 397744421 794022109 594522129 682630886 880815298 892879204 215970125 942795787 23087457 409149133 93619739 486739729 639814007 777449966 389359813 454047754 859003444 871019589 473525072 531135165 974895685 977858883 114509314 889477096 167069578 213095525 510881588 523870293 201029483 784479907 747692670 796311457 546750123 657901015 101082782 108335719 287968490 912817752 659588736 723307963 364425295 459725963 672446162 972556935 774779600 846771410 944215333 989196745 297641758 486330811 785473003 912803584 234041684 621245657 845776632 915927524 686293486 869308856 115097572 368847344 425141249 461990309 273961167 449250017 997286080 999280469 71419292 600139224 286999727 492001650 428816571 930571322 383827550 400572213 99876997 802986437 155892 777226071 23759059 77719789 680171366 885327456 645641974 773538771 366579054 688681904 943302364 984226706 558678968 880476643 171803681 985648193 129395561 334629289 30759449 933756815 588628868 662050245 574703400 655912131 268867568 821382739 952393052 962550981 870147261 958718375 713087281 921292809 276333714 420591155 906203003 923037576 696363868 793912983 961418145 963354323 368759397 904748350 372782773 540599490 904464832 922384717 369239002 391450044 181578867 791867261 657819391 901706696 242383392 302590705 375291707 501397003 249337019 385483083 721953841 921748964 769416185 968748617 513274741 703768179 877241335 893380521 302543611 826005875 567935521 648255411 340276125 704408199 983262515 991547575 320236685 628453456 317539913 406066079 87599582 920373995 81853326 253858920 559433154 896487697 776040350 882834733 810291333 983908983 862570247 882929947 428567774 530981061 750202834 947798928 935030644 962714847 797223396 953600743 915338271 915505610 625720808 726862278 419064177 798622370 487790223 714311126 444617591 533558021 924501989 937911259 264532632 844351641 768706523 870207247 585300080 757122151 30274155 988158756 797599998 805216747 568874238 758277274 79437589 907455998 872925290 968219102 362922254 675808656 18758423 562467750 985970924 999643069 587473581 624657651 602250146 982536687 330805667 642146259 807100530 828507049 89562092 897929442 130093164 392729090 554463198 904214892 966353711 986148214 78215286 740705002 816647316 866210469 40643030 481362933 258205031 281282068 559231955 995130660 294472484 527524020 341698998 715240171 137624561 410614057 942738996 990464214 832228405 903066006 871830498 958722503 402428754 732053971 588787291 693564593 218129672 946342549 374981005 524896259 119048638 406398888 355180528 802632777 650865087 932595990 770487232 810858588 895241620 967476744 326111299 692238375 954515119 987251693 661544506 907285258 252629223 337033800 442798244 885318899 414596537 885989048 542651535 870077438 732487396 834783545 399411597 778579545 726107803 917736489 745039958 784701107 726111822 991131159 77756856 637951263 50163815 404210371 558956965 997939681 968970442 990673929 911824256 935067844 335349561 541743818 694655355 789828544 793079344 803620338 158719036 355951330 187821467 906034829 805701545 904936000 987870739 993267931 678405074 746718968 163304419 325769577 591538912 915321673 244008875 992322772 615183632 784173419 739645670 769682751 87920933 197010437 854013501 913470345 308583326 879645211 543728094 739255763 94422050 830009968 342178495 672498630 598906620 670414068 733076949 957535039 456343362 917274672 786408882 966965556 370211751 871141812 941452494 988553525 299134596 527327994 163194765 799781207 986261837 998570143 765947633 793932230 469819855 494977731 582123260 758468617 367969417 372579211 505580149 543161042 135833091 482072401 572821827 916229097 964368814 975053548 820283225 997314601 317470082 455254830 324070391 550005202 754738220 773293491 314316892 846018699 318030803 731366004 287338555 598035000 733223318 949481880 917377455 960431280 109188849 902523965 384830223 628442956 180422529 532366632 167566849 503897532 18769223 367744045 120923400 864858091 443859737 590548289 348225390 792293433 167673301 385793178 510862133 920888592 68111290 966445044 558190153 590085188 164281138 315911082 836350488 986451681 60928944 302256616 435845913 634647123 910528312 931832148 322192279 393927833 279953231 721812623 30160134 396720036 419702635 752084799 427078929 631195636 361797091 763868160 694958538 933639076 431688444 803328115 577124141 835549259 391484659 654066585 131215780 629845809 341436477 776375700 178538110 752951045 649094998 739132935 876134214 975209277 849610921 874060713 148601920 798134398 632919170 934945967 749780538 957362983 270742531 793961818 599834427 985127267 655273177 793159614 727598255 877539232 997848430 999288889 114485917 740105380 458319282 621025024 580546060 813688958 64923106 372642242 590420465 995455655 582628260 665527850 140020411 572657077 821673561 891316068 473787079 989617834 765208798 970217375 92050006 675011274 662372095 828413284 374067818 537396790 630188568 977706516 499401760 587812603 218490940 902159281 790154935 999358927 968576108 977934644 755752352 796246519 808794002 969382754 685761046 862135502 521904018 557400409 160275947 486511142 648433487 954419262 93600312 859369999 61675288 957096005 822974857 929107095 996969611 998536830 499092332 599422220 265549347 587905333 4795628 261458278 260000230 502279187 721201741 839327495 105292969 649756310 54005305 412501784 376392489 927365765 791656354 800321033 56580297 460734695 477262673 979058176 911302472 984335107 966773069 986242602 364505059 864810457 872630905 924039893 985219782 994053509 430926473 560755985 149926203 290302702 23759549 641271655 696929145 768725971 692569119 884403575 414174192 685601722 550654357 678814994 763558306 896666165 185085380 990664928 988194255 989690388 5902758 861144131 853194991 902016838 762036929 975808594 354051618 400188452 142683654 705676116 919933817 957448682 714150155 983686158 197256765 730822300 649305773 736542702 681433988 744020751 43930297 352836221 309807629 866574744 942987639 978971722 607634101 750895967 126973119 768007778 742311536 813955180 894811668 962095725 763477444 973314329 116884118 228601614 747758661 768061430 204286553 873204902 694643502 748729208 253620367 928487108 547625341 578837129 279500398 868390341 800750353 970487894 29497629 183677759 88052265 701936943 636436644 954398692 605015078 969658697 69782504 911420017 868587495 869492918 657777378 832338169 146567492 689269989 443131414 842721464 703367345 877165753 926071444 969741281 914608457 933534304 940790291 961341143 474233174 735966991 441463172 710271548 477253404 796422165 955688843 969064857 435201904 856227960 615840793 719506141 381419879 705253972 127594686 811095299 516828393 922183018 809971943 853507775 593293320 902155358 779846246 818407693 683530097 739414491 745534438 936880370 897653042 930408155 10722223 677983056 589606762 947709881 130653192 927966941 348028858 902522801 112592923 815155928 393436789 624112799 101585261 789829233 786202344 806485997 211302457 380098403 847513671 999585068 40561725 840460798 568302121 913354600 818703374 936164996 147585418 718174161 344407942 438194291 298138896 993520744 727385567 869569026 849385114 914196843 471297349 876760746 642010840 896975597 224201386 604412033 684111809 899517958 779273017 942373542 947118076 998228117 12604874 354698057 62571681 838924127 815419722 955987853 629012119 970348666 177921805 968015164 890309904 893764446 788602129 838109036 777165099 945140504 470219191 767556108 586621183 853291462 895808665 915338055 417284487 869739931 817760500 996261379 186038412 365446059 536815521 690588679 688228398 997051513 261360909 370876498 605613349 804068850 668559296 845150114 470999124 706030146 264650504 685753000 375833070 669958872 883652090 970208231 572987345 865776320 482037548 994615163 588531135 693077186 297195631 444487229 811994163 890532365 874552982 898343909 704065015 836238388 248614309 299072596 31466080 526999089 258702990 644975848 456497570 715686395 564811859 683094986 652984894 968367331 325997857 741910962 190314360 991828202 441228988 645919812 701643803 753737422 881225331 994522160 392608105 508531801 546269113 810527395 972423602 975402054 456562360 554727507 972712423 986464676 250179584 272813903 18059543 474751150 310046983 626341970 716497139 896075992 278655783 365030803 404073467 416739031 339520726 518737826 145652590 669947933 490152039 680452201 297116631 576132743 527230368 995015307 961710465 961996726 910672351 913804799 416660690 600497581 539174733 611837317 916145130 917581180 271304940 447021180 618459214 746919223 256763004 566964168 573791571 585775571 32176772 741458058 73706244 559964566 822683318 827305247 566448244 922821652 927199642 935891666 296649078 733004427 679239582 932062265 863353531 919712234 466361270 482185587 361367555 897615923 952563715 962512296 29279639 710667502 341352875 945836386 39108425 107968970 599194922 867740317 342436270 985030991 423804334 443381688 202482271 862865876 117959179 859467878 219859743 335175559 462245969 796604202 236826614 821795823 420238332 838812426 207716880 951493351 878679151 905304455 425641406 918057043 467855202 614309134 360826395 510927670 26226096 431278219 492362189 849781507 260560188 336291787 29880674 223755591 621787614 797657106 498635973 664663581 326022392 969790700 111990080 602674969 654899786 673935563 418826004 548769333 648589799 792888589 967376597 992092151 470480926 923441641 859893183 993471807 856329597 891853569 697516658 852152369 506596770 575138575 762807582 808553630 487542917 653656179 67368699 993159124 317457470 908029129 753173207 984756010 89323357 560322088 838159803 971422961 235279911 460359755 524284324 895034293 841026191 890876809 955598074 964286260 148434684 631566777 841484075 985636165 104605584 529385695 146669205 795315950 506424716 531167777 514861948 896577812 567317714 727059210 845476404 921810465 370387115 576044251 497015988 936664058 974308194 996245427 194746467 490418040 61195794 614390760 796591515 857110852 328928752 458312997 561104457 698750208 519229398 820254212 690779831 902330625 259219602 711379467 584750683 635627038 722829089 870360891 554776820 911621867 231182011 605707469 592714959 945555785 387598213 644321460 742634655 888400713 914622462 956388920 11933201 44317821 218330883 648442363 417439010 823832141 114540163 336628353 179043545 644079370 835220840 892621643 663040425 945215571 851112791 905167624 500766589 999253527 41221019 790549636 680477373 699570524 475222894 598593218 94687722 454493455 930179259 963593246 236405872 815700303 212181544 214937820 946507901 980405871 988790282 999675925 839318645 903019466 386727836 489369564 96306791 417905580 151647127 196800250 569658378 669676601 413478252 574481487 862063938 926125923 659983493 992200286 927484847 980566261 343120244 626085228 255554968 317350571 364204453 674409124 66129241 588574125 640576947 807909616 291294825 937026954 461669645 518408278 449737383 869720920 131626538 332043853 871266019 983768751 917231809 970036980 529098233 999800721 235828894 349853986 234045653 330435630 585066776 958360995 394665051 487907675 817525806 985615396 665300424 705330396 406573448 688928946 270946320 942957874 244759120 759109402 27599347 676132555 677051380 893249359 280144158 808754644 79352414 478269703 630206829 928529096 198573299 349519853 910197358 925384144 802301703 877991963 973270553 974664557 843837087 954011904 217867162 769825028 299344533 969381493 106772235 835944105 773030873 868303887 170883432 599352075 593581167 741240057 752592905 894008757 218018530 351908172 453515660 854806589 491552134 613139665 520964043 603551656 118874790 208536921 713319707 778271545 184463836 443264044 803862746 831357387 399511158 514471643 51786999 405416824 123348184 377786951 802160989 809738275 431060875 705711125 783238574 899808156 304816571 614220954 590573992 699718920 426596605 728953892 982287349 982477330 862443894 961065123 809189163 868608525 979428149 984621603 131786202 823383283 749876859 899702387 143866459 263146629 454075488 912461601 713566936 731746751 399679659 930226482 86034006 683718721 234294889 938402374 472665214 510056316 774759577 792935873 857070928 899828665 652118875 923955334 489014090 540603329 88998911 352753721 982951189 992941516 804571198 877711420 940240752 944105741 982562202 984236912 468642798 556752589 961291933 986054562 944647990 956634992 964049179 980299759 723875019 849927025 310794510 807181332 3815880 583880918 204021146 503755603 452370109 501140090 101835530 864317780 89539207 501839798 917187005 946938296 903712087 910464859 943234011 957069304 673033600 737268223 879491684 973378402 463443824 584466557 871964641 970431343 384761160 911331363 818068126 994348723 949341863 993215480 823259858 888684307 329527217 472054886 959424091 976000321 946941515 972489510 95506959 464355753 380678442 672978481 981907225 998204182 753881158 849587045 254166919 603901443 540783120 633585323 874910529 926685134 212378040 407542962 818911606 849003100 801086405 993143767 681454320 977813449 231009415 815688003 446472037 999714198 967805172 983537562 514632117 651449856 644396066 935572092 637724124 846312788 345778456 937932487 613420398 938912148 48387407 365174691 567066435 676899524 381439231 954736301 499438242 744993223 535897965 735982682 396033975 661946560 672275806 988930015 719707649 964405203 573084424 740193734 992551268 996222015 926376926 983128360 468375470 936426313 876296973 956251543 81914267 948517290 521798494 661130493 326023618 407004475 300278986 487759048 555702176 876060254 113243886 520426252 586616279 954060149 981584948 990169001 157384682 797106075 786035265 887888151 244368173 906822936 63394865 475488500 420677520 960721529 509272891 863313444 39724999 881756553 851188277 991109789 756160407 898511569 65534802 638237432 420983268 725923833 222090204 779679075 730320347 989469545 278048605 572437880 425795754 744533147 269626009 985171387 559386570 907111875 277680958 420050803 535878165 668333755 240675459 572919612 168413710 473240430 530970877 632675605 943125793 953874808 591962377 914230437 785255501 812248162 444246012 482635019 498217542 954280272 849464523 873747402 440431638 489383004 556291730 932804239 216867789 556750614 157510499 486110758 542832493 591393234 934678883 946085738 346443703 570356094 344200057 684153784 672577710 895813770 534013385 718306985 505980750 920695827 901512727 932706249 502543724 753457709 3685315 783166263 782554900 985789027 883239571 912135297 80765293 819413035 478436187 933923959 691778301 900920374 951242566 980563998 491510211 741375442 441820798 936136536 235971317 435962612 871619660 913986379 212314402 489877556 948032438 990899050 504592622 970975310 632680482 779555574 217737192 693609561 832040510 920549519 538756105 670217615 319572023 948923215 454515053 483389491 789644317 994502525 823516091 837731318 788366353 944141252 65749072 688800166 269167923 797056750 819073500 926608205 197742433 481880802 973267746 997527577 425747096 815829277 992052263 996161795 109006457 936586476 678314807 927351428 227601533 870767889 273514497 536796276 922571118 997260599 736538958 894337699 94098313 752468875 84352164 96343564 653407152 704628152 681633988 883903719 980701723 991584411 860611020 908439172 283861137 698089856 715959159 815610630 988653053 990427603 898521178 937332515 876760062 948899513 563228439 963305758 403516161 476307285 455672164 510245041 337575385 727267069 921522942 933110075 567752725 778750809 627483154 820543842 566384786 838826120 462451147 722918182 889501949 950873460 433512224 617420479 998284976 999695013 511727155 812245645 804038488 844833345 974958114 981895192 950451781 985608740 645357770 853826719 876168783 940583019 509836154 615521789 30171692 794221201 131598059 642547795 897044878 964682351 276013481 584234527 360642755 473713522 508834153 897179062 914604112 995528865 317379195 573070183 134043727 571028077 248943213 984035787 791619436 979146894 469642791 938724406 432075581 908077596 925837515 961994206 953547239 962999945 840665473 985569314 778475289 836293436 468913807 764026365 565395291 951530103 495505665 995921158 883613129 930209024 494556743 681116327 168975772 528706215 852364876 858493278 763128203 877892676 350842988 755052692 292164598 503338914 754418211 925232200 687339826 729944882 104396821 959846356 110600683 952836479 874678797 894703128 340014686 643034393 676733640 901814730 362053830 921103116 247573308 798333698 253039554 378310173 88388836 538464665 442557621 485936295 677076058 805186736 633412257 734417474 203606731 802828637 603210178 939187908 283751245 296157862 808385422 853476556 141681064 908033409 432315063 784955961 596670008 694646008 160034929 843946321 657607633 903386743 167420633 192853529 118928889 342020522 998622985 999478844 159800378 216481574 564435519 949499297 702347361 912761572 545472739 724850490 878060332 997027134 488228892 808397420 296288760 855413610 660707214 741453185 585313481 767144584 648942984 757287146 666564928 958342618 444479988 468924068 370307946 719822636 827960182 872735378 465049433 524927374 403816274 957476458 953564444 958670586 105647984 449465390 56675923 926112414 357447577 787676489 672648880 830001091 367478203 398360626 862870103 958276140 569892490 833244824 563037428 980397497 733280484 838199863 826434900 960612964 9286469 799837397 256909914 426879322 103777987 464939956 578579312 962341025 276932268 851316352 246502867 350415561 206173347 725268924 422366561 921207980 565759889 624872139 223553590 421479033 343429759 750246027 15924719 496143761 70271783 129812603 82819054 590158732 772091972 791029693 83359118 374954337 587447531 816883367 802219195 907247655 282817976 309913561 921867415 923086712 432946696 615659134 503368880 720116725 238589208 818806384 133831561 970186773 655781587 759626535 224707837 576165359 30494418 798029969 464243319 754611808 261139737 994027965 308152192 813939093 898926931 994646480 216614815 383512142 884369180 896396816 345562932 543734646 161641007 481577100 551281299 667055431 371227901 373010746 495065738 525950284 674534029 987631428 390721466 440959838 269456724 836643803 678266605 900568455 334656786 482616998 207007125 807729684 50368680 746053770 54585617 518190934 699045259 880618400 999323632 999755194 107200333 691920577 613945001 778731612 144012518 455951247 858054603 880022104 888001104 944087359 567790036 619656479 372672896 970331336 737171711 743973444 672330589 904364790 150749202 776004479 925349017 982681853 34813279 919305009 395011745 553294727 932695611 934492539 828452666 938313811 554901673 983413403 782408286 846615791 96924423 948103332 947769382 958629719 400523147 525582120 320152653 615337485 594842104 985400938 262449897 354855584 453457229 916778702 933042586 989709725 482954862 611759197 249174223 781629093 530697808 873941546 654985380 669341623 784039302 823516249 295218795 519397489 470532530 785661810 141028355 978496140 991363841 992558985 65967857 848891448 850634622 920748667 111584793 667470687 784434764 989284415 22314359 97281836 717740794 733464267 756012154 979826336 449443962 542748192 986490373 989451169 962965759 996526184 721775047 818992105 198264566 793710914 760281822 993191465 100174172 147327752 121169085 875854605 215304371 675836008 432122883 668097133 736683102 991310149 204718605 904078305 83433667 493409670 590627554 924421833 262574812 899276621 522535554 792467940 497321828 774164847 134416495 222769855 445352219 612437209 188327106 797602851 313168693 433285612 778287576 857340444 506097207 825649912 704141483 794214599 90779127 281659223 143355434 154868323 213072963 719851302 95346702 385076514 931277523 969719484 344987001 509111218 703155879 971803945 860767493 921929091 556328944 673917629 330713315 342507154 109540134 216253080 43146101 958545805 948678972 973265819 738399482 966618994 491738195 941230420 17560753 378224286 771473650 781034667 898268288 991588780 466820408 536006324 131017596 975348963 133746943 548611439 969754194 971007133 533463783 683026451 520513805 530343716 431557218 564188636 928413655 975871870 624313098 906445667 270163455 590386998 813624073 888512634 619961094 746823309 632177355 860094925 942566789 949172823 445019605 646611083 73830038 499611738 308487418 497822428 206912610 999333851 737517877 742045811 432639968 946718007 965966889 971082426 965786369 998678125 451451026 866532359 571506817 623377786 888939231 954941067 873842921 949118392 382490789 780201318 352533158 460940741 166057902 961968294 524944791 928410910 19158685 192794537 713170986 865346494 854151896 935402119 988771152 992630497 324184091 399094922 568158422 650304686 575143724 926378057 453003295 566807174 66528917 125561730 856395760 973152133 915743342 988431716 443812607 873830182 202545946 973243133 254128574 492419212 856467622 916423236 854054194 905190545 368892607 835647267 618813098 630623005 825620143 966892994 889822029 922610305 914021958 992839655 374581668 635481360 646571883 870446970 251595633 646417672 420955717 710136004 257332002 740318373 214243750 899578376 168522272 244725835 243327402 700259662 628438500 887735081 691265435 962120885 806026216 944464276 13475288 102721898 583876797 589230514 304017096 491311005 879061306 990647577 777738849 908818459 801599288 828859475 237175719 468804772 365821559 835569280 726663536 820245615 112946884 518125912 332422140 493443366 633637299 711010229 511411881 871072063 249444097 285224610 274292412 707931327 410496374 436975932 172921418 520140761 928745592 933590548 109719341 613837093 556687236 600399483 769908131 932352867 55304643 536962823 527055356 834586300 812839440 866170703 292346518 497791647 227046586 683710112 436401566 481650881 30328469 440985839 696153425 819820480 193071657 518425609 796477546 832725150 612403531 922938572 90919131 179592366 368970 655569916 14640067 985486128 206677055 597697089 902275573 967591110 694268415 938100148 395437340 482952467 405936862 937304359 275478748 299989274 669714642 964172204 289973892 784387731 450650555 639142733 640465223 939169043 790232316 969902182 890921908 900247475 186944026 767452603 482958451 861420978 213340909 801231254 79493596 476322547 483793932 850180552 394744614 769871140 831428954 935180014 780199468 785834762 724395782 900497223 26778973 961263978 992041129 996548535 784867964 864031566 415678584 936833487 980313034 996663006 11248932 879402329 878191638 967105844 207268525 451673609 341756218 600323152 515359134 699541599 743833725 772000943 85630670 896029508 353874362 625240670 111163843 718089821 627237230 767520863 925558614 975336372 79218519 984017073 490644879 524593303 3152910 71908630 502435688 610434068 86063279 643135912 511676041 911951623 551325786 831531082 588455341 889790420 848824729 997160312 760593582 780400001 505017339 533800776 923706562 997030220 613466507 702542868 763920915 765404703 787861026 803409505 413669073 979679052 267043170 667162086 895025735 957760985 539606137 944143418 582542209 680694303 54578910 555361595 896917729 909129543 614949000 859083496 238285751 959934031 379987533 773599369 951492179 962231554 143694610 603840042 197573667 663686840 223597453 822807795 441187359 839518574 366011601 874261109 122167692 330801779 668416170 939462138 390691166 703137933 145631855 645257745 445006644 793244842 283888653 983656464 42439854 601549761 977575670 979361904 400315283 611332619 512913630 670364258 612989184 705216158 393412042 839582778 346671393 416096458 489794920 799778405 441653492 721313883 565781796 798313176 757068294 831664571 440281075 943363265 918961584 939969994 935685758 940603611 653332426 678583983 930846057 975569537 941948413 957132796 440066199 459434397 609613094 965467209 69849014 136749261 309496844 442971953 574706838 901939934 609783065 631664317 960265683 967177502 259798369 990384434 623581710 835661172 451378848 926760358 968776603 976652361 175556433 898519465 479896189 916892437 531827592 775310366 237895639 465396407 980693704 982951837 324164102 977543182 879654591 899086677 651195993 664156385 438214175 704363480 572819223 731578915 281485063 886872373 371261819 909280784 955610874 956315240 545054140 831929758 782263954 954110892 321393049 419037803 882839062 892806876 11632978 886645520 308695990 837194670 411561687 981436002 330686837 452582641 440467291 769064746 20485371 959385079 389491835 514170693 584828360 778307078 344459090 393406496 957497613 997364049 105063363 670939796 975736489 985670465 436340528 860128128 888205154 977579390 405316065 506995576 693764261 914041819 682820338 845522213 531845781 689547425 611742314 929616526 861699875 996423645 500476291 587860772 621648438 999765861 561540186 594069628 370204624 995805576 374226198 539506115 276384397 451258097 527338982 926266202 195688651 832975944 601481246 853092272 779090819 968513574 406602437 678891148 874869644 984064908 474604962 592836299 250471190 814149703 98313795 781080490 727853339 879644899 677907665 678890228 202396781 300088598 594549713 874284590 437841547 481138323 949527334 953994772 661018237 706740306 625205206 735316969 615021878 895076381 495934829 731576306 284091408 331975526 968259433 987279317 422617025 919479602 890090109 967874122 495168626 814815724 838923841 882532134 473901996 737638657 393431155 964148143 38761265 665104024 975587289 998845419 991405208 991858606 623719468 990219076 804841928 943839081 588326842 776181012 112656862 733649896 410843996 994009791 28245695 318354674 670781612 770107038 254208557 810306961 156427225 631650815 708399138 749292068 916297549 922880744 487284267 974851717 517336308 596973875 268882734 309569615 682024304 714123496 944889454 987642455 88898993 902748186 124153820 828164451 258870710 321273104 606901701 989264116 365029473 397817743 278305141 637147124 648258980 985378727 229771613 662165273 39460464 821762796 154562047 688472917 413248482 753680198 502548323 653023400 757316617 992614616 807558219 828398352 91978544 622507666 757045164 826151606 170771611 271480987 520198442 845829121 549292144 748593018 880460634 932029921 865046033 963277957 203939483 936292482 94931503 320817179 601230776 924441350 690060207 943240899 436930841 969353256 602538352 886335001 135761739 223125783 924050476 965153302 393663486 942116394 842395844 986584912 936213722 978670984 226314856 636378595 238558964 485552388 613075671 808543268 490235726 981588238 259565492 850355524 707261661 928822152 404482671 880038080 994487093 994657165 518340279 634102022 894870020 950012309 582709502 965134364 1508611 619875323 809750784 873259285 10555339 765601046 197225270 242707743 981351386 983305457 603807866 757344586 680451665 959260230 468365030 899068454 440460580 959225001 2632331 848243012 438762633 994686611 270222435 525047784 591653668 762831194 80057279 845114558 201073645 554837806 710371109 744460358 477834297 557129884 497592037 849066047 553621330 598342399 51390864 293996765 377154402 722566538 760690430 975739679 15953021 815466865 434035279 868860750 223926728 870279663 974659397 990654174 365227715 834358310 166034769 947489503 821099596 839760251 975258155 979588834 318689062 833321282 318668532 577355455 312931440 395410383 152537406 192582355 604520764 999384296 678295872 682989587 627870791 773528707 559164290 991349843 730604957 936530877 588115787 944942420 96888434 880263445 737812842 759193538 689380117 962690078 849489559 991805628 984520340 995090402 330499693 510866336 833109382 903209365 583009127 872689271 12874924 200626520 613102356 717080732 578229116 953734870 16963379 495166816 170904746 847649846 302440431 906192131 805980196 832505802 657457432 705018602 875744359 964441330 547514761 945424249 248437869 380842754 717011847 964461904 724823004 937010663 738631974 986577485 765991381 781943403 795717914 805308477 780404207 988767123 144455438 691808015 931317891 943536451 596035246 869364239 425238742 892957554 985776128 997096229 24656443 313956323 132082808 920965820 614222682 972061257 656768772 857105208 101689094 364658632 353864268 755322455 514878419 745835412 944900050 962617559 582956866 689223247 61427853 324055245 613690713 759922385 731058220 924523453 390113620 947103007 616185396 693375187 786222360 965080415 874444131 916676486 798617509 883417097 975923404 988542387 223626765 943568708 553755534 660179482 671131105 961449352 369806985 964134751 235245027 882029770 720669512 917926072 830922658 965584925 646815082 750609268 157841707 227443199 501211713 959690355 522564941 676620774 495882072 592317460 993495744 998856761 230384555 677368576 939566256 948896219 83039180 959344368 770337159 778550330 178685424 304646789 393117519 453939020 563010788 632059061 158831687 567293039 661648683 792668008 548994402 906516378 575236733 884786504 205480285 420366529 2768844 848784042 923732458 983277750 599081397 607933164 968054098 994056223 519358799 928170366 431356683 581862654 265384218 962816514 248414182 555058742 434810900 440606443 204405716 235327679 287593598 760144427 493489748 522912444 88847636 656775528 511675642 516674615 783243608 921557110 726608718 867276746 110048195 636547807 422527609 596306662 430782711 719236219 456973864 535906248 168296117 337282791 723323648 862549394 575925255 688838429 14402736 817746002 45612001 405671055 827676330 880989335 817495200 938165746 815789888 893751754 717677550 962868273 924189108 964965008 661791211 710242013 949349395 976293696 808772787 881559322 846324474 921831397 80603937 354675004 414398583 540271090 476766511 536509779 10424257 678293332 168646623 917823123 518703007 741700029 199577682 737248756 771414718 981623235 614144221 985641447 330470253 416693858 133744845 294167103 251913349 270932213 68343801 840261877 667054620 797833634 608149439 635127805 46960036 527040796 447156818 506279633 976532958 981612735 182664141 430078332 718976850 786585887 719860937 861269574 427484447 800989528 346667509 699834005 226356720 817916998 656911066 659941022 318194835 930496229 463010566 543167164 558391633 922737952 199757438 219294018 871992728 992650375 245700676 944856165 975562078 983355257 467305521 832672263 918853220 976019827 357763666 436779805 585424662 951797353 405288476 935442397 104199913 485313219 662177063 975917864 227052887 238463021 661510127 844460296 858442934 896755883 808790627 842026713 999602808 999642512 822099828 823517379 747638327 884407360 612544051 631576219 296258021 438812802 322960454 834404645 978597545 983383408 226938836 923240523 884824217 985991108 450281330 982607801 848548605 877589758 430624151 666854285 120917670 714914808 788503577 961144386 433082956 987325637 725883042 939216209 42766479 649462046 437792195 578381158 770165346 938143154 360195332 965786740 77376263 103930284 629011362 870574576 758045345 954936584 959917366 990262352 68923884 801268621 697272367 914280255 162173706 911753479 238022671 442843993 160620758 568780298 411417781 590906152 138744647 765297597 295399950 969689956 337565013 668144332 927511993 988649429 415765493 874739931 59449277 782204712 354098544 383692387 676150298 947202781 505206505 806075863 734119098 933415650 724799602 932102375 389212602 861329170 788402449 843691702 721610011 984874246 410446433 847737528 396343184 734624570 467954180 643476859 248611920 466976667 268322702 606820938 800745619 956645365 338101967 937048297 913505914 952391241 680316678 938468276 650675925 910707787 388033112 896345908 163383746 381718172 413550157 815798688 145626949 670302073 291056395 522134957 501317967 923207141 812897003 952581974 726907586 961361688 805011182 901244016 238615376 847752709 762520423 974820491 931667534 932913349 750472962 762502149 144841636 528361770 462755614 948962897 746817793 772066825 192498188 500270902 670785533 798357383 834727831 933716576 350000796 751944704 217420226 585054273 927165038 988817342 403143023 784639101 895644295 937071063 604102976 958484198 777479630 961753265 313852872 972502930 31360462 541567106 405634693 830788641 532447758 804239069 835311343 883859844 141390831 221123230 381603601 970984120 74595533 351625524 869770714 988718124 174270330 428820620 522612433 986352728 251568281 976784558 746425189 785364683 839269518 980149877 848874239 988529296 285981048 848487006 987423698 998413712 594070970 718790386 237555182 397727761 404356658 953817483 869360195 875300835 428684346 668481512 979390707 999080672 393739982 578165932 450731977 512837074 262168941 872599188 792686803 911505020 725104851 898457623 315492429 928676825 783989168 868691696 27802638 49126338 245987081 597751775 283689099 926474126 911024323 947717172 250918633 502485874 361591893 439408395 432602707 629838681 373813279 470607883 325447201 628944747 847206527 967735245 446332038 515159969 793242460 973711915 461278726 515152938 67583675 273360076 307207052 420240903 974965142 974999665 689205396 810193264 459000868 497463600 340131692 753431082 250459593 853995013 967191464 987655725 178654016 443158809 598683364 953238143 900599614 912376400 794854828 862315646 295040147 652954026 639394555 819095939 694935678 958749845 119293139 477289343 629349025 668264179 204115741 227019675 6725897 165405309 171781256 329650651 677460469 798489451 497505391 736309724 918527831 939927378 615734167 698964754 695203849 908437360 886154013 939504229 616572 858118599 952197993 992962215 103047388 300151621 828049698 903739800 278332535 785941818 184769367 460119926 863136524 863169397 347248645 681889775 908232257 938835554 91827234 879972318 114843449 187722912 703482504 772322246 468537 794241605 466364228 612012484 544463352 837591186 503777077 519470509 634908881 655699006 42017857 828612975 662559276 712447873 951042856 966486371 238287014 467254286 167196514 807041368 866138169 948509199 253994319 938604411 831048957 902951617 821961697 867796422 156343706 447862969 505228568 722108057 409543241 895740243 375019001 672557125 107467679 636138912 302950026 878513136 751211812 928484465 364744008 389168442 143192148 148720347 921045744 937712370 713653275 912861268 204958694 797086167 270218860 988692238 232240480 644114230 796875158 863132403 224079122 420215758 553155012 880323645 564185524 929747003 908084241 940147403 204727048 355864735 214628958 836817681 40725461 503236934 210736716 919388427 186195701 337918545 747505148 861135288 430363156 676582783 395948723 855051288 678363076 808384120 473511870 967792612 998803326 999197757 674245882 858629763 237085380 755320378 347573010 622580838 563723987 690566144 893403134 955935673 942203468 955994722 212485837 801584377 485959533 966007210 710036393 794075756 819259756 847487044 111548246 780152267 606472874 800234665 600181227 776660654 383835845 848548252 791534658 998402158 291185928 784440230 972862373 979830067 763534876 969921569 473510708 768536126 969221195 995411629 414792048 507277168 660815739 862208532 203451925 303806281 8214309 631150634 673857477 901894852 727631383 857721368 617534821 862175774 710569976 999074740 715208295 884007476 761290755 871812704 280930238 501746557 65924613 513264228 23603017 854458273 605036147 919365494 824521377 911932581 368022924 817940722 425550718 525021106 622914336 913889647 197512578 722246893 868784921 882597837 647978454 977452322 175624037 471380844 7393427 192801722 997431954 998265757 879918074 964804290 864709454 953454828 364462037 468710778 737491641 892606898 656245539 810418292 727867248 728017998 536921004 711705940 401936812 833653785 817554441 847816595 489481910 831110893 841486818 999691990 829951851 988819897 273555808 750764446 389396798 612794909 335307514 588417836 119802831 253160521 222975316 936961242 996297642 998156591 613057692 731524821 895114578 984681989 169428480 271523605 154298474 535210300 299411771 693036356 454698133 845309416 983225060 985873004 997467177 998940132 904345579 982970586 688605170 706562183 205204928 241727405 126294948 874765005 96887470 523348710 288592240 826460882 472656913 553114963 138455073 214818680 869106153 901658415 73358806 415188703 245242266 522885145 293320447 713519187 319875995 616540744 978101309 978116215 693551182 998903838 960942321 978870542 76412599 166255873 296458310 554431320 240620926 831893249 787145716 841777742 14485792 112944504 479937227 615233790 549077188 639314672 184122401 764211829 645113750 691740734 37703480 188614336 705335 285191396 761979127 936081300 248992028 284825056 716903871 962881612 17796477 246455409 172344058 754665290 971446030 982902075 74231514 975423056 628324767 789137750 140599011 693566637 811327874 953218624 128507484 714822626 158778141 744206642 865731769 917378453 782317503 877132372 70485712 843918491 366763462 516127373 441192451 513939872 684257298 810760085 871051944 999643396 760256699 925496059 674186902 675842096 146348553 921759877 936227789 979283995 878383015 944816329 655675223 902920598 259909452 598337812 19735064 607007008 309836039 539884726 558461578 565772679 427710703 778036670 517951428 944953303 115099982 844256368 186837735 726307530 988787992 991091533 47505272 500708313 62980190 111115308 293180351 321332499 539960363 635079093 979439334 992098581 323290307 793511562 284881131 874199303 436812936 870185385 896508429 952300460 155184595 828033869 257195572 631802309 399819673 747721007 446510017 668603686 493908032 829224647 732860261 753984324 935116265 979801189 167726646 741238870 262489989 640707367 161420161 669229160 874743270 972337473 876367187 902110236 116694845 164114000 842926766 861871327 744041237 944380706 459422534 823030194 457606753 626537448 814549803 987438560 506936855 892404273 302517039 371970066 321155650 381851890 102317214 333829233 709942162 998169025 1226398 770679205 124575478 430077272 157265777 602215942 5091005 761737667 765868559 799907750 62029381 310072737 56573877 102821703 813474173 825439194 804145683 847926038 594286164 770634609 421711708 803287805 295564388 669205716 518497866 879439824 518896210 716007211 822024938 919738570 601675371 876168508 259332316 385987806 307977499 741492187 340707729 963616321 450460271 510098275 213190921 475564329 123701795 304462241 124367763 838829853 408231776 765155173 554058381 683620803 948986275 985236291 717172204 781021666 405327926 712416910 861338007 886151864 669662686 819137697 707758058 983551857 128196544 668775889 28665161 493525182 887199827 927576475 472702247 762053092 195102284 894864886 449512284 510699382 139377714 683431461 844243380 928929423 724629989 751518396 970782206 987245286 263374490 779095513 724936981 897189215 85118700 627684268 317089745 913314944 545983644 729646481 345163465 501342379 245741437 789948502 549851516 705392604 818880749 842953658 888561270 994206505 946112688 995025433 457562218 895528536 256965444 457029874 943412535 982764484 973437443 997053697 414885483 718212455 363961072 871289653 633048027 972440929 256860433 822706196 491333483 638642064 288915930 491592832 194678676 261342666 47912301 574907300 41733399 410268118 952609392 956490742 750842434 856510905 92033863 875705704 366814046 444064688 630729152 825125984 120791924 305928044 714367100 987406164 433443492 772030146 455063082 470979203 478958233 824012906 443120665 929271156 123502528 375591324 413835167 669751823 478490099 603246286 582849256 962336906 726741651 989231886 393547601 759269404 72446224 236649147 345923661 485535976 550079618 795027367 189361355 384959450 701453010 978481559 837271282 877845586 147079807 838508910 250476123 511402131 981898121 983324158 965894824 984927451 228944674 499363976 594106120 870654752 243168222 344072516 156043045 633729298 232758511 870309832 525314505 719580165 21174026 707488172 39829293 737753451 43591044 692654514 435133914 898926387 981919972 985779796 33616452 210801944 121443921 764309294 286988685 536547371 346998946 637831768 941340238 996968121 3733315 877747736 232486740 884186871 874938179 911741570 103068653 567528574 979935955 982600860 875872726 968400769 691826439 844273104 528909269 627123613 48943036 403666675 67028903 404405874 251279820 717987978 744215862 933172443 665929732 722632276 693457828 841975496 814303565 912913436 726578305 900290944 231938049 707853065 823628487 947181996 899322335 955803186 285787507 531822729 781557188 888514237 709449768 836989387 320413802 771887173 27864417 96781946 581461108 697302784 72639254 807929770 492862498 680815006 486078824 896303022 605319333 624692565 394290755 420444983 165892470 227882810 38343144 649671642 253099926 995074373 241672230 796622625 80116821 782666608 702692872 727793893 353913031 686893391 580305032 665644114 902482549 910029265 110614728 268057938 445953712 761436620 239389983 325837336 180404958 729454243 837096316 963537835 41346890 555697253 131067936 425681076 465374032 974857384 47122549 600197985 865652287 917781724 151850005 507858779 68993132 521493814 966030915 998077780 847462966 892770623 826104029 849300878 835478741 913466686 42490361 428943453 980305145 990386403 962908080 977495493 163441058 604858465 173098637 236312038 444905554 570164997 986771135 991828178 148215295 854030232 976719417 977428948 778944282 973215818 713845421 933939780 314147456 429634874 481972828 862859367 688593987 975017613 993469496 998082009 877000319 979996277 67660016 220360085 295961838 407288247 458682727 806233034 345570259 671961018 171432615 870728068 560706421 904123744 522501587 533271637 965939395 971510742 818877186 961077393 973714850 987282594 818702799 987727132 297065462 618006690 165870290 655757738 741980818 974559910 857383743 862552575 605166832 982019326 221437973 232336227 986750700 989612253 368875180 880887964 713026814 915222571 312003885 818512446 397599304 559570799 462242594 633324876 559561818 798294097 525802829 557827432 186532953 367475340 55281120 592118125 822189039 999216962 908010985 981741051 498714975 966389516 99832481 363706101 995731648 996268718 370782041 436874936 46128293 715798511 564640674 568532418 532895102 933866987 644980541 980730297 439350388 549016274 46799682 233410583 840505199 972406490 366678267 758018905 266208766 593073669 466348658 575833870 34280904 455960077 378395461 560781988 407963294 582761652 780275283 819036473 268685104 306546529 686697685 735038221 221284040 872536678 198490856 463324313 657538350 852048725 951438887 975075335 162019038 304744705 786695004 836832165 493657545 966865146 703036623 874370954 294001502 575329194 940637975 963326099 872277148 923326810 411755815 615055709 587573074 638724314 790224229 846719428 208278347 408641240 797694099 978998549 420955485 422117619 188592141 256298456 397211305 891692802 515772017 664237290 218202224 778838350 849205106 939343186 418977712 782107291 602903752 780607224 241211746 950451888 930092726 957146589 243442506 746779662 518712552 620355081 130178227 394065654 788345054 850652703 649228339 702894208 174558149 846851952 921754813 941525905 865814300 888774041 242784423 398540144 387016674 869828306 347337716 803203089 918711416 978585578 714945347 747271196 733577695 942040380 690523389 917996603 791160999 895298663 565127404 674825507 473836470 835060005 457411818 622673253 707169900 876518599 705322324 964202132 681025330 960316211 625407545 756007990 779082766 987979736 363349757 363597518 11111249 127834318 276058508 697214408 843940065 942563456 248680034 632920993 436907980 448578612 380480612 887950778 437784405 640057032 69589823 566868181 698331440 881623946 503032244 708460007 851835088 988752521 509449170 850291693 604507406 826414419 144578494 212378964 961952290 981445930 116672209 185487088 607232355 992397666 704732798 988120480 76094387 372941723 880326700 984842963 88956534 921275984 487478130 624728429 463599736 645516079 477995150 478305572 506305998 549085160 749196792 934174041 218645098 517556104 148777470 799669207 124649777 874787386 140387711 250963400 79489212 954714383 458204482 553106334 537538940 713712728 963318572 983319700 949461708 983294525 975690396 985158110 324495442 916023799 202860540 220347755 50057043 945043163 311349673 959880389 281101635 781974760 600755107 852498680 960559797 963953019 888049926 965450303 540544682 572316632 480908446 823389118 486807063 496729171 622293363 728205935 574047047 826482015 534465489 901892683 673712528 916867578 858278070 892618134 329425564 496446207 622594526 999579270 480413302 876801016 959976184 989723584 220118918 512307790 686193582 801058915 989882970 990211046 835789601 907007879 658333008 658341953 244977336 735681872 930543093 985302358 976067827 986148350 66401456 448783995 583442670 945486903 689661480 940489947 321882951 790114118 241363635 537791015 473051399 660041768 678127770 926693134 818569366 994306679 37248436 611691786 637564547 730429167 851635351 864010297 311009181 611255910 467613794 603822187 100502130 261913849 668985512 950764990 1896562 872382050 857226609 987208129 311411258 687974362 748777712 777703027 41321964 549380216 180647140 837401893 357777591 906215588 431078389 971796456 251008753 941869056 395527770 595932137 570985161 705570176 82787471 923842354 372371032 834777896 971445867 991805220 331055132 534331380 355387055 765371942 403362245 856860287 452402750 462273275 977608658 981740276 584871927 807291541 451585368 692872212 468894903 816498836 42089034 952480635 307340720 887083932 185890764 604889055 648567138 791310236 684226718 691790283 313096065 851698228 293693679 761125644 76262801 303650056 372819347 785151988 1268830 618060237 219083094 914570818 835506497 923441420 502581203 612244483 761952412 859776027 421959297 647124484 717578834 794509248 740145537 937146454 359047200 436368917 989624356 991238303 749201726 847677776 91459199 661214506 12464712 979331070 441985393 706873846 514854176 854445989 970941589 986526260 978331320 983957385 401308867 786223364 425280440 821753480 728681945 898265216 790975000 879342731 513203541 782560757 301955421 475213132 543595234 688843301 582320930 878096069 930328318 974729233 799587929 979192056 800430204 892774729 878935420 973093429 661536670 734254866 49509147 427136154 636591616 896789839 657936886 980275478 323752907 635695747 519204867 965106888 418689608 453680942 168035095 550808029 417098472 432193560 229471620 448569539 572081657 782296521 881902959 955851739 162710311 370582071 573324465 975339516 244102038 520058093 253465863 471586175 323289494 898295616 698587388 768788551 10186623 34141725 275470738 810880966 763151807 996637563 614936481 923522285 751372099 963781773 758954570 885257370 829725543 956588862 437754855 489918482 84254758 276416096 903646450 959510047 298129802 307001562 156539139 631519666 663308275 791962502 238009604 957727089 476391639 478883943 462526558 878360240 315658467 383456989 278626584 281581187 710483444 847081643 890817068 904999549 141345862 322793637 560583916 657941712 315575367 848100774 75916464 406672313 917400835 943044098 59871160 272089132 772217564 976556188 250331761 994717470 67814374 236478552 547748822 605442688 724570887 752728606 687977511 739453632 273579683 690111479 366603247 726729236 861819695 862972936 160969112 904075346 828071502 914030841 303428366 500339497 912303603 968646402 2764146 535006508 661950020 799647220 454048686 958740048 210051944 542725632 822309254 873246876 88487759 302190188 740697248 855509038 51541246 828205713 153382577 941204371 556355530 624097188 148568631 908239414 19272894 221599793 411556226 873123006 869898984 997186546 973048843 978542169 529014888 799843408 84478909 724096875 646399954 761619393 73000960 879297892 534262730 792082855 265820147 684946539 881009039 909580109 362442425 812970378 120192641 608940584 841926416 924988121 576425500 906316272 206645417 430760759 647096364 853575742 318853633 421190758 137770701 842597023 945899114 971701444 798957644 831868183 218406024 632546435 808093700 865825410 746201862 999426274 323807429 343246740 60844243 674747366 24898446 987929616 202248051 399176692 363717610 876750904 193836803 469738889 217026803 715946053 705401241 901652997 900488471 995374358 143416093 725562685 696818545 741423440 478742758 721308600 487356321 706306035 851320008 954485869 601874541 981914166 430799974 678548471 109098872 375730504 50391918 633622643 637647097 784009510 973292754 978188937 84802250 932438557 882203121 977147251 815830897 827336578 189004039 973378684 224732790 808099433 797461309 969861012 669940946 908101899 413844959 691188013 309316705 435278960 199632856 949465592 436940640 795121309 968219318 968335251 20370317 996175819 760521026 828092809 186355257 198387796 9515236 397861431 586908581 776824673 155070287 340700224 483660444 885076346 546906639 632483653 340343685 765792447 720794091 780444423 112185798 977223435 705509002 912767673 824785572 896552636 394817931 542629499 883309837 921603896 452777345 656869389 378807367 500008619 705303261 815925774 250223110 706694425 499837749 727810878 48580864 917056805 77604080 335458628 54081834 585758982 806931856 873905023 678872964 831026036 593545363 885003470 6169658 576002905 15160654 413753140 384460307 482938724 760818971 790065155 209039753 215711264 713063980 765370325 659261525 683664747 35783269 683774751 379257177 596204801 42649399 768296029 877668479 989310205 371087021 405310876 443536509 596734739 91789188 322978777 646159552 920292467 853655939 953520628 328686633 452328533 428942125 533781448 174874326 229693782 37623526 371071293 946113344 976241784 738714508 900332492 69298984 994094045 262552310 759394821 598318563 785283902 560544973 828856691 560613750 896497957 406455944 756795649 564514790 981417895 552072840 572905796 333461744 760628460 167479131 496505771 200246001 935437827 676650063 854411866 496314930 972044345 357701275 862469390 754259860 808419730 214234290 404615779 917250676 998969293 113092126 121357597 463801576 843277610 662544185 743817345 144242115 787226654 165638177 841332376 255546031 781491157 658996121 781796023 522686216 975317988 943402225 948118196 793603644 845122207 822760561 858403748 198456925 334198766 664459493 994676155 560009188 970292346 976774239 987788948 771173218 862974468 821401609 938216998 89672081 938870204 741493834 997850793 346303475 625221393 599630109 957698762 412746982 879005919 551038282 565405301 544955396 867289720 407011130 995260699 833122470 898883769 99049272 878747054 944808694 974623272 386889836 434911117 705831373 903081169 351355451 909668574 636500839 996706424 762154876 882878135 441458836 615376027 437247807 992867362 673006655 863473881 721186204 732102912 770441450 924192273 644596343 663326426 769339304 838523723 808653045 875255796 394533528 555454428 938347404 968666933 780616803 898245803 484416911 993607404 357930717 863845905 660096125 842897871 561820071 834254133 196199195 386207905 514450482 833258492 302091387 537312880 368184753 466183481 493452448 598820159 262634965 433537400 263313031 435463968 526839015 972209824 795164012 833276197 260240054 417642663 607086142 804548956 316987488 960428084 430465465 540153118 797416590 874185211 132807377 807904612 269198963 906010051 460911455 483289740 517340285 984634327 105661084 123190544 274507435 893539464 745905373 770261203 823708799 875584238 585472082 825615411 372495829 837410803 396305985 724420557 894026420 984791343 103344937 554998679 864968314 907417529 345675529 563962314 723105565 796564255 667822445 896638848 673144805 961489657 814739870 859677667 170790350 460320818 288180011 787112149 651627474 999966141 75981501 206546141 726456575 784584969 300355211 486084954 670023894 730409801 37243033 735878666 346389781 793868890 101957148 442788388 55594740 925515374 461884259 529612929 245330189 963514912 311473742 886132928 962605349 977603766 187426188 640567342 758975733 944316505 766555639 769332251 32915116 285456452 8088166 902202496 720319091 855310572 679875163 743620173 461553719 793636189 297121201 543249104 928176956 972848724 247638240 817626740 696087167 922024060 394945181 677182904 918942438 983500273 756834281 867637818 493125522 616262067 73345880 353054993 655447642 895377980 77630868 537174573 933039549 975679151 370539236 780680477 138502710 526222274 866289616 934491308 924690217 942705951 820741013 965473946 855067237 951042786 835398144 882298688 524636357 775809839 879548037 950453076 791135957 807301448 27179041 824765885 449684680 647558721 189507005 242866997 862547064 965445855 424561901 847364103 169991145 444304058 84031134 853680398 168616487 709429952 264276072 420920210 782014710 951485206 322058143 730497486 290093647 487340941 919298662 921841732 592446774 777689415 739998077 978984162 940281562 968914622 434169423 719771236 52188969 773295682 293808956 946993235 46605654 942255672 854730147 887774745 399666226 855004815 769447339 880345365 8512280 310819388 448663637 743572998 304572979 517828089 437593347 804579810 881455073 908362232 658431240 908771306 225498476 519124165 356999633 359377584 776223354 836955221 111744648 781598425 907740999 936079324 749304498 886924470 985144374 987541284 189616720 681242892 209557533 401731866 258865416 720573942 923016630 937069084 252301937 709835119 89713373 889835559 819766122 856084656 960005315 969752789 696039387 806888335 29290325 157499015 135499370 501470839 12771981 507446150 940616890 989261602 450864046 625438549 613281466 714530768 958752573 981391981 452464702 890904745 124345211 764888023 846135123 857770717 565951024 635113313 247529458 858755957 400806816 971938241 899940789 903779413 603975995 783618032 750492386 856262521 884588988 906186754 628115359 717847692 882010908 958913718 620766379 953156964 671075826 971105066 564443967 862560219 965549998 988604225 665226485 756331095 145766087 446146271 842539322 886866301 362250228 523219055 29005124 590039823 510453906 518035746 571647258 617237858 204095181 786270473 549638737 910994851 379254716 566186676 117558001 154133493 49356418 721186679 39583171 857431978 55738641 938992779 259250596 981640073 390780463 396315754 848570299 882057355 586136586 839455322 591325678 667224074 784231554 899550442 490863591 834530948 726684309 772919830 650941079 833874787 517180437 800041485 318408730 687401693 168392165 905122353 173560425 347262497 707004107 992791188 492389598 677411710 758311529 930494651 209366718 763201898 14411681 666506657 339488818 463077729 543536871 879223273 209110042 863413303 602287090 793808503 516474936 858013671 857432797 989243637 241213276 577543481 1265933 170298753 603681542 778529033 221123178 776849199 597957139 903299362 931622859 953642858 181149535 786331540 904058197 991526993 312573866 586951342 823778308 908045171 750018860 809592472 475072660 655422838 546950434 598434988 990189661 996026376 751709135 851842446 464674629 942566781 876515669 987671520 726850089 872103230 669573182 870676576 204099496 489874044 371321110 994201555 214216309 336005251 480321229 913695163 542643930 943953542 159627878 661008429 757574547 917299464 642594038 797239197 164849785 661895801 940843470 992534128 398566608 555724357 32378101 376069935 214396363 310882625 687454462 997388662 114265047 408266997 817211627 993417633 816659542 874289739 694692011 837948954 576736821 942620726 42071720 356556486 126023340 805881215 476646646 527354686 536827017 588786548 627601154 785983821 157164715 211133178 190768552 889774900 688995423 697918637 300466056 601635959 907624391 907703006 204661683 221528466 383056028 444613652 695150279 867176510 259959376 435500415 817408850 972853539 280894698 735878799 832150968 848306709 114652215 889956968 68934358 223504588 194633452 705459354 368660655 533058490 563796995 648252594 918782957 924008076 496295166 598338625 942147658 989750637 583695987 786557725 916511612 936505031 97243473 633646294 3553427 712624537 160984655 197182759 420921526 722538821 180033069 601725139 728035096 963743197 282215464 322031250 647877421 658429199 972500479 999351943 783458838 894678420 573060959 580062319 854762016 963414769 249872089 395663724 552402209 687354032 60042711 253364933 103305847 140679803 13817021 287936022 260666482 996702059 741748233 958006943 448042998 622838107 321084059 893791018 669844461 940828967 133720131 764237768 569456523 687342930 245676673 367276338 579825528 983308242 380569664 776713116 593969394 995995419 72517879 225798347 489105047 760807391 551876795 575516528 471470093 958463295 433558183 978320023 596777490 888109686 272547490 624800891 20464618 894712642 6365839 953278487 180010522 953877203 707975685 910779408 870389303 947404686 201127109 342035631 930904714 970485076 583454029 727687107 974802121 997978899 313550273 847600700 500533032 835377762 779341863 886992304 60764430 987412092 237996684 395152794 94496233 614060613 152561586 381860036 41529095 907522967 174066587 383357880 841457195 853781448 855579481 913549278 44365601 696645144 224353333 483403725 127212591 258157296 262007254 857097211 387880260 937315447 201060561 569849529 776895396 850245316 826025680 995742944 550743769 722269818 645967295 862713371 753409868 982007030 517794351 984491858 552659316 680890524 697360755 973747707 550211842 986457032 252873451 534284642 18730014 643290067 877199469 960944721 80183633 474253495 768774109 893987140 189456125 622378126 947654731 990883263 332093188 860948672 275031574 605830120 410315571 887299951 934179940 976252472 656605186 763478389 209915318 254143232 258929385 915213786 889479592 985438383 838491496 888865160 270176132 275963774 659089576 953924813 102520851 622985140 529108113 611475523 793774532 880965029 434100261 504579966 320007287 581646569 302586364 730739558 461961188 884531901 273304115 914404573 191832907 500982809 696591019 850182625 127135929 758917636 293288619 927046742 849747531 971582790 784555319 966969332 143724154 935983242 704806985 778159680 508188816 945543590 798579350 970737215 62792647 650508808 293681149 496783253 312681236 833946221 930203062 995149158 612702701 950004085 490136929 568345359 577313280 885064580 924426317 996296736 543339831 939106735 392395793 446852835 415993975 714584249 878162717 979208949 835006474 929255711 534613566 873299585 947459765 954961838 580309804 780147301 205404689 536544626 385466591 420208693 803836457 940542123 227533144 484282013 782792642 877744270 726758930 948880364 732546773 927224767 501184548 917387607 859542944 938346548 145384851 567935838 530959463 547282343 335207183 807840718 124984780 556885076 925378145 932004587 176935220 416823197 598788484 783454676 697060092 966701656 495280340 794742325 6172448 451091342 192075543 884672493 608400829 817629257 942756445 984188918 344087195 554690828 936841595 963898844 464673441 544346718 387795971 638028216 590633414 921127342 670710179 728729777 525248765 660775228 263028064 580889860 159604330 871251107 75361630 775515145 344535738 707732409 449050091 842417742 883404019 907564248 726543365 885903641 546335852 995465306 483083322 556872077 786909997 952932443 641431771 925706896 122511265 481525044 160383603 809060400 993422535 994156660 310045899 560173721 216627195 462821247 486045057 660579696 206316611 948227763 626285867 691541330 987601586 992985172 144076553 160311467 677865549 846707474 919841020 990778775 627157561 767328576 944977814 958103926 520977836 863311705 427266922 558362183 212647782 699921081 564468608 940750732 464279387 941676921 246245949 611932941 717508706 953804133 452697839 912119295 397262522 549626192 843758568 942782190 777632169 780075822 373793750 465043159 164105370 812538620 779819558 902872065 780489289 835124213 217372320 328824969 418797792 607084434 11451108 954482236 214347766 855070142 824602935 981913805 601116793 826631692 668676581 884831033 977000740 994173008 761924287 936134309 954464005 958222421 362068851 394280021 400103883 715885367 266741471 668518206 367910434 451127520 474601944 596573876 588747851 885265396 501476724 927483642 25125941 550892376 699109752 841310511 277924809 711594583 52821321 944144180 405579848 921860069 128245124 624038260 396529958 804812156 600813500 644672435 475107070 971408367 246403341 866147439 53968728 798348118 313743060 605095553 965148457 992808232 387852911 853860402 196558031 227640607 668017547 985007078 22692752 60666880 968744799 977914212 739794765 920557709 217909433 690147121 811821755 907133206 246349429 419481370 412278041 963496787 830015257 893059858 770382021 811478774 293660873 720718840 264936965 673504835 617488125 817570621 498914002 639927873 999317261 999503502 420630479 549958008 635346664 970652057 154820377 847688622 325715868 677941187 723295444 837792682 576510373 779411989 726380066 828916857 758691032 766938741 700218924 783372612 614910527 938195349 557793712 620171824 80670533 371692666 639616521 793489646 120797985 593785629 896319088 962948343 453517668 629119661 752197194 939042093 62073683 836339452 357811800 747934197 588614105 747838356 450112425 893375707 625961449 922473374 380819868 416097008 496928189 771791941 27439043 549572671 904154400 917792760 398153914 521933348 482093706 701936005 509735169 615877302 167747533 720205083 441228568 824508298 764654266 765038533 143415369 169314943 118910921 899449029 130738292 458092302 366259913 905451078 299365995 582335015 866609429 999619105 367626039 717163012 920302035 957718485 272127862 345469069 610195473 745772908 684230710 759217457 905085182 948455561 400389970 737788215 65251580 629753324 940839319 942887570 599245191 656469079 636239531 748152098 365660975 427255510 726176842 803479625 801449926 945296893 455875445 888633091 872381308 932883360 272922861 934535361 734840786 870567049 459593786 886238250 477514948 643762775 494468827 745128813 640356271 932686006 109189271 247041191 947592839 982862355 507911905 699280580 386424391 487532803 993993260 994486650 550491347 653271363 398755608 949091298 241925644 593336242 328512648 463265393 894457179 934453612 894301872 898729481 76959527 644438992 714473901 847652844 980700369 988456243 216216968 991147038 935714183 969589161 157694627 835182374 580868075 642037383 913400053 956282538 448007652 674151170 959235079 961980126 504345921 905755392 423453371 809869658 901127440 904447210 264349127 600786399 60610053 397937025 315063824 677572797 595535987 596298122 373660982 471569449 637031405 782964569 972497489 992005848 336021683 835460627 412982520 579580895 397993981 738690776 71600408 99444472 535798587 577787966 609372997 706230760 52231068 877801201 493416605 638187512 950408200 970132577 500332055 988142107 16038128 582807936 391662513 850444029 15762234 246345676 723032324 842073581 791839285 987335751 70931152 754738577 60136932 330906270 399697747 745464273 855787918 947724037 41382515 422191714 71216887 975565242 456247644 627548544 872752074 894659495 469103054 714560946 304247306 384685910 670463461 778866550 838103346 937417497 720832686 771407312 580253375 638766514 618048609 921489751 925009451 958804744 37138290 695013770 509425672 728849482 206999789 466612388 946243409 957515417 670939873 755748788 300195119 453700193 894971000 915263029 602613714 994019199 948375080 994455700 75200538 363539105 702625935 710023691 922658821 997169491 553782970 558038838 552245856 836000766 556394665 865329294 673870586 717652251 112882390 956980777 712834829 968236496 269826060 390067605 657780017 811216475 900779190 926178945 35585915 519961853 739371350 972945208 305806898 660457929 772116111 895500346 395890244 904390741 284602126 359561843 794607579 970599367 682380240 816801173 33293202 296711413 698841962 992507028 674505598 972895995 338463834 408370886 94732351 365249876 180719803 853056631 161467883 981420651 311385393 839928920 348015110 822792997 485279645 675734030 52200896 876339367 703993227 975994749 208302934 725417939 893119927 991685499 732909177 835384943 943324539 944488611 923149516 942204518 2470957 264725765 425410515 746402789 302416470 398651857 137677798 228224427 680124765 884745934 793370779 871564075 490350713 780392448 837220245 910558148 88181762 876367999 851067388 921897218 952601789 985600252 508580459 945897761 625380392 746056855 695944211 700391631 999266765 999585404 620148548 684352324 398657518 670920540 238186231 472801983 971697819 995695745 91118657 330688726 42360328 279824110 817485473 971084532 3409561 828369114 882237605 915151651 448171038 653856296 702780982 789543620 540970540 804314706 540596788 628085459 781035535 988590758 924702190 952380706 137411255 863989057 723181727 931088594 297786758 973871196 298049006 632223673 14341815 446969722 859285563 933928006 864886655 928073943 951479955 969846247 708838649 940840411 759640858 817898563 268497870 371483512 509942932 761432064 441937646 500235915 857507765 924936741 967348857 973881476 73184340 281017957 324802641 534358294 37654747 191206047 349801568 744553566 767000922 856819045 314860626 844700473 956312370 985539410 217947912 350758589 137811200 757362618 833785889 914738954 717797091 945505710 98184032 331401278 529511318 732366112 9333689 796402517 414892519 603486002 214839103 240496803 50343928 235565667 439603026 938876164 690700240 986640417 470074072 786617672 660219424 703532615 932232444 942980569 346198657 945568904 417928406 549239722 239252429 835782128 782217290 887934991 11234554 918219492 854127394 928971242 913358 859813813 233875370 353913066 620013792 649616290 584771355 647009106 791798309 842786169 747166049 863078236 765597163 871590450 444386831 999828285 118628065 989723510 911807240 944275502 585559645 993114181 581467836 735241120 465364204 613224693 735676733 833891551 113787903 903087620 121087721 941809239 358907700 377083048 241103850 495969891 873249585 927632741 793455474 959265336 24615311 346964121 209984178 284082602 682398854 853894970 974821600 983596972 260503321 564574068 520915190 579407047 338079663 946678355 351186346 823625476 114849474 682286041 875928410 984955856 586862970 827429818 431973917 774205312 469686647 663688214 1004823 406387607 488591823 762428348 335573546 396759713 294557959 743753886 644895455 666958008 633816017 898984052 634688785 724368172 257869049 864145119 801187915 844429635 924300035 983858563 400288431 834031029 569832725 798268341 730947975 918806205 318994133 557952290 500022288 558665085 472385394 978102645 717954208 833514153 580608703 621049615 526177449 679519116 253645542 280542001 443125714 765318809 751902300 897282644 168436455 203967475 228280271 337693957 122442480 469342320 460454925 746649085 864405129 953889059 842051946 919448021 527843678 631097250 413034206 580314380 61707340 817701924 500533362 617899848 187448357 764436741 154465215 418157125 607001693 852925002 405832924 642136082 127048370 702525108 594158879 905007989 678775182 944371175 60207057 763875520 232001559 846379729 57008618 177070093 542844568 740519215 952470446 975597955 99676594 470305143 680039193 772020803 661052971 998421005 82985575 251377433 238345703 443037383 771330125 996355532 873632408 991928699 59731257 558117498 85507135 257634667 261199805 844342972 65610104 98034809 133822085 665605198 974708602 979944074 598338489 889915639 993696139 997661249 536732290 749535574 163836700 636041992 154581007 359811665 84374246 706800663 989956776 990485454 330182640 841259384 830575206 841124083 472095986 701562667 591680002 902185225 348156894 963319430 283949767 456390043 862842050 908089230 224065290 638940893 420357810 953616264 621515280 802852481 545429871 994116431 221090707 307781192 911286475 926640496 141370902 370702938 332967883 525040257 643293416 780954534 564471913 571535642 748535401 832608838 436003887 820373063 541658393 702257919 839177032 878576371 321536262 975821430 433693208 593309530 956738206 958535197 344891729 743458462 751205402 787700607 110139758 598071510 54868946 912050945 80171843 229308366 614544869 641392982 35643284 853371004 55554001 627105884 401923229 978396769 945525047 958844421 432541142 658141704 319765236 946362205 458045850 571763480 366571127 514244010 43057903 285740830 515130237 985952630 945626514 980202828 199253565 716733496 371020654 414319207 436364571 633072711 996155384 999448911 450586138 691255364 667306153 801540707 570431684 701137047 972680760 981933705 768893491 936500998 120077940 449124849 886982004 903864209 127030808 958839147 113902477 563577113 790552072 803319831 910878907 937750602 47484700 455053271 990505079 999005275 736443118 801257872 414564475 913987352 801275859 854261076 470941062 845082851 746436212 898115425 405176652 503082364 145190428 247033613 639693387 921583432 192855284 404389667 754776726 809783156 518340016 610565542 193564598 341806193 772077275 890677675 701885662 769751843 321858148 885708822 878245977 971880856 125503818 643119750 532705857 591211243 518670914 743092940 422876581 745617177 321976907 677210829 788733218 953266447 712111938 738305266 539740586 651893919 563191613 685874004 895821888 927515304 559421309 563750231 816375686 876703986 89141642 502538091 497434294 760052713 69165662 210843811 896439980 990844004 232089350 471200109 451579690 614680443 930875571 967703168 513558212 851435528 328864148 949611014 581952866 904697197 637790552 650221399 258458510 680748140 701392118 797637063 776583849 856067204 261548387 833349459 926090602 997290611 759266231 865587368 395435597 973128122 82257188 89068228 438369384 675786474 6806721 88383297 258608155 878662250 552638426 555615486 772538521 829522181 535119716 580643498 309336696 953287481 13331218 857757056 500318690 831805770 758461768 976242817 800953406 975382412 47458410 636351027 138273987 791486857 596459672 932658670 196570496 413463396 841772069 983451150 51364259 791264012 317374864 500397656 412617976 763846030 36595291 236605795 685529973 891610874 120499989 614331063 4213903 63101772 616997198 751784137 550129653 868591958 209973649 632699423 202874882 703214898 792919981 901699327 312849960 614230284 854962437 920222756 287103145 821944580 184985003 214893098 701863352 989411017 462804856 477114266 526850774 715952240 875120891 933239812 228317959 557474580 660830992 908303461 520827864 827178463 353034617 844105388 34250511 165756193 950011888 986134896 396252165 639748558 224977215 239696909 608612403 658360810 473671727 574532451 771691168 959205862 19904107 582960762 56371609 218464385 784032288 953211570 458762101 830175311 661131790 932775294 312975713 356692780 770998191 852958181 22210769 964126295 985784801 989624289 123637514 264162906 838445044 974410359 492262709 638007125 329342942 725069510 646288702 960898254 582717158 589518286 259304844 944318057 255953376 677938330 928242595 987370725 937313896 990970985 648116322 828704181 884437008 913557656 478124367 643907105 25263927 86623444 556188945 851740553 288983946 976999955 253254737 674501519 928203950 952457523 884465569 924130083 90744295 713720533 157560976 665593975 998636978 999086521 402654843 545600255 886514908 940979245 591052836 616810593 322007307 944186062 895987797 998872595 851994939 957796163 652693564 843748643 732969878 969461269 617529569 774206419 216921593 709207891 820388509 898473423 209352745 974919077 735327420 758853589 171611880 550280853 261648473 313332793 344511797 577285766 964850722 993698667 317566393 910712411 48637046 818670106 253209742 819861140 705975944 730985695 509679835 866403016 363627256 798188711 880836301 935595880 630875343 728434424 93264836 486421439 313887472 739102489 722927866 871937262 958696800 970177211 910695692 942520676 577042257 816150955 425492982 872163321 563386711 901386844 405307957 539812294 648204014 793800818 776768781 877020044 464317483 520758591 405682615 434458607 862184749 922731277 153506557 373890253 39652207 318284512 944524704 974696938 137290160 159335434 851877416 942930441 650944061 697981954 956788673 962902982 528010889 605717455 823373230 980775145 137701134 716287700 712117659 857267283 251120208 790997269 655619378 736883794 989996072 993891494 97049112 733745043 584998458 946165231 348088019 986821786 446761519 797752926 260283196 895789190 297766545 891503395 82820497 95949589 931586772 965627044 970296749 998178354 100533312 969097902 167589638 626330653 722518367 759566573 665320012 904492201 753061600 794049230 21898567 777063179 736460278 893305888 63413341 879066106 833508313 908445952 960784067 985394128 48102424 580496137 3506584 738508737 352882667 690060370 648582844 893218262 33722941 443155268 461725655 931481909 149303815 768035193 22412214 29145947 925496657 965205362 601086763 815723539 814149067 967563215 808598772 847074713 608856562 840066548 873670732 975968507 443819792 613288995 235181707 914147083 50477394 257436203 768910885 991838682 115776522 909967716 640472714 907336329 840053610 910507388 328312480 517045282 46160391 178486949 865200222 923124360 136343542 409130855 478535261 556153753 432337695 753422275 41442009 332387923 721500718 982084265 589103690 934233169 543215916 671639960 969080967 985933915 6516222 218553305 855473007 963449631 802312266 929734309 817968824 988742199 81495596 174689169 630418025 843304403 717488175 805196167 842850043 860155988 649059286 895838154 667897321 788454051 397489759 699889384 576948227 920904082 132736748 705488645 55027292 686391204 853824417 909102189 946839924 976880688 973041179 982282425 842506898 953096618 448641905 666081628 508123431 518076113 301729024 994537783 702679057 971657744 121750309 832762595 332933005 396649238 811335246 896281327 562768656 801392552 319111398 544785757 368635688 577704760 110326753 290029534 382975653 415291524 636065014 759879850 208662675 210464418 588964254 705748511 667189098 845445418 295082859 564406026 990714740 990874555 299829753 603784225 610782001 855720251 85588243 356289772 171308029 178242020 76201726 568983823 516172237 956039178 486302892 918688859 510760958 865749375 232879349 676661865 720990041 876446796 719261081 886581936 172486821 397440067 1306398 492165851 894163670 991994994 875148785 982054203 43415750 688706651 801497461 995894999 844735460 872902272 42133408 920152714 358642209 769642258 716301180 960985110 969916844 988727141 489234841 994133765 525034128 788869299 638834925 679886343 576733713 693733055 447608437 919031966 886945555 956423489 320334732 903510429 833427707 908189641 43666559 96285890 511475651 807990291 678187729 932059042 300064128 612306511 610811243 856960487 63846296 442550212 838337340 949454458 296818137 489918715 428868432 490177146 609487557 656468281 692697810 742301921 201471071 301578704 916861053 936157883 784924980 932370772 417491187 645006544 529150069 778299389 175684247 447664619 38816004 742020645 822965273 910177655 42708795 697386076 63872036 83157518 329549658 915725683 861055225 989337303 114699890 430670679 189987963 603360421 923798503 978741081 60994310 741494443 631099831 735221077 447854742 760007935 920949083 932619286 698479902 904574036 745922752 964112423 470558261 603957935 551370219 772939051 151853957 977658724 936033844 937593867 809908124 996458286 260857593 732977936 332036812 949172237 858420920 886225828 192133592 345026664 46429143 573278417 683478108 693830531 793920409 812464844 176290695 444266954 910742758 943566859 363397152 891206601 754576377 916723093 849830450 944306960 247586509 324681628 691983154 778572830 446417173 762604880 288682655 433618195 967470360 995866905 813982346 835717155 607715256 859849538 184423120 252006908 55875721 283399013 902198431 953958160 932587150 993829344 98346875 682265404 928589076 949585274 162659774 578753045 450268844 618416892 558204340 719488695 335659996 998213750 48432326 106623841 761466678 802898807 18125845 796102664 507742342 598182584 728800923 889120177 687280779 939668018 789577436 937735160 985848661 992212514 793786062 934624568 427163377 805074374 909352685 982461684 468051683 896776591 32735070 433682252 682490974 980692597 653048563 802817500 505961849 542023981 640712117 871646511 919475366 969964178 859670868 950961441 434250136 824598989 939810141 963294676 586522922 836839153 925541627 979912299 228001557 491327855 595477342 662973719 98702547 951627923 720508275 886685277 871443478 921881375 527575751 577102898 338681950 433650768 234108794 726857840 665092801 997376809 593170249 801501785 810281379 950526341 733085046 786713386 90121389 786154613 80303563 340325813 86929290 223283066 635839329 895289679 295789627 430080773 445036987 884965244 616621437 779779660 407879284 933947036 402588208 769383827 858805058 967891051 220509922 737753710 718477315 752315453 258950321 627566541 633677115 890786573 805184027 890458658 896634188 956720121 431829970 861364962 879669773 911358319 174216839 506384491 500778534 854535391 223584557 592794122 310362802 982179584 685747813 775308718 340666514 466149122 608549021 942074806 243514033 817571665 412755667 500800202 115834102 809425424 380292295 534388105 707355773 711107908 105539343 273642466 192426086 767709503 812669494 814369972 445579207 910389807 570778507 826117095 184474365 833570424 535084920 681636021 89909596 994189269 431225908 744047084 681799905 769522053 56733993 882472854 183500168 627088058 661776625 890429865 729847233 950931442 624663393 981059714 931245814 965333299 989046659 996410437 851173665 860339454 269749401 635403567 759557954 873362539 393883969 514175581 275009257 425559344 360079983 997319862 929828500 974508356 965637840 973673574 719487315 926108025 5927129 620200748 57447481 968243674 837762055 960145155 772974405 883357689 238809718 384241523 253457527 761604240 663610861 724166347 612276527 631447644 378932628 580022853 721185213 881070760 447549223 945102152 930820150 978474747 121991116 797564879 330508081 443219822 860679155 959441944 194640593 997035365 20631654 419581564 967882307 983270966 732804078 880726048 537111923 755207197 597605975 761997434 689576284 938176939 297507631 396539591 558541258 873890770 549128471 837169298 569975308 860282430 526342331 982648038 777323775 956356640 35984157 378501459 942545277 946425878 974554682 998484296 897363756 918431690 162880714 694862592 873091430 947714329 86045560 270675636 358608273 418672383 72544518 886734137 117565377 875435994 517058265 744500551 239076662 927405555 115731718 778116805 345371861 925106309 252529215 597312311 890841472 997644637 104296430 232426691 955216253 998590224 703356412 798591054 834461437 837538187 147670731 306711807 560210415 863788514 83168872 125958813 903263870 949278878 161032073 616947449 917671785 952619263 678470813 841537246 847942133 952930713 902652199 909301351 487666417 599233766 493080827 794278783 666676186 891288930 64461941 174457735 218168591 255003395 472258540 982938133 733876787 770687729 118011751 174041913 987849065 997389919 475818591 839391739 527369696 688472143 811257111 998399975 99687801 423112989 444529650 515715966 501030162 569821783 571066004 874195381 963828021 975050871 445151945 675188290 945127260 986836758 30478725 574003176 645497108 982054620 336475796 443714701 971033340 985824571 132615551 780080459 733043110 812399389 285767492 511028825 332088679 509168610 784105861 904452275 560132639 658768621 198039297 647340427 235740819 719067104 492359697 876638912 141839897 879229936 931606858 999040163 882416251 937105246 881999830 926486866 381103607 753227706 651674477 901323297 564114246 751414020 136606492 958465955 850017317 912402387 506698338 893782370 181031379 969503388 403876313 418944001 242810087 291935040 468466690 763913779 918320923 959990405 219495482 689220324 60583159 949102585 5271595 222410871 473082695 655268743 228767121 462844052 127927214 927068106 973066492 980284633 321785802 837923739 199878039 780770459 143011719 274596263 407061155 629061932 76973425 602730814 841689308 856087163 539729814 802525620 483686965 804946659 768512096 854506625 815965700 900011952 424548855 620922531 405440661 730299196 949574068 992833012 771041178 894071566 374334845 840740951 778811696 910586969 921294544 943678950 648253330 854323919 923964913 937983933 977347324 996719835 892955185 989767095 855644765 905389416 134409066 378029907 158016735 757324395 426301478 716554630 32867774 683983765 626960596 716098955 298993818 482440379 250541743 526224948 336518056 777155049 880744560 951053116 135738621 614608157 501876141 961791055 575513919 908339051 458106405 581739975 214338414 709746396 888535477 988572270 447529864 869811940 660688176 830766453 751310946 836152182 470961647 963313356 869937309 990836774 728182021 813988535 48189667 955337417 519492101 586158465 263464638 468670134 602537646 628240140 503492614 735103305 861589734 936443687 456896698 735212975 542147765 668752247 554385270 603535905 836187508 943057545 175551829 989378234 765744945 919986728 636687461 835841482 513342901 616569454 9428283 499633886 78486662 217314174 195603933 998928105 410812606 606225140 416704536 729265368 105315385 223880761 715127791 792572020 154719301 436981199 30164474 513053701 399765562 713747606 118069670 949329327 353608338 858874260 933782015 964909934 368663918 824141651 257515908 864051789 847636953 976734590 6737647 98761399 329845037 650483449 978883200 980056774 220799475 782537215 886441695 986990827 621958463 718111580 258249019 454832314 444144865 646616882 248646469 368921406 649589889 792128996 15610704 821342409 650822062 924719239 220777789 987586051 481063000 719036124 13283358 871334403 302962831 606152414 187881598 787361222 274494582 430950839 233488016 877258178 104100542 793471429 778126222 818574953 351310152 735137589 155460158 157754676 178153450 786088479 365842156 409603344 762125248 846696441 40679831 642369159 515866243 901692052 97140992 279532928 352112373 455896711 919757860 984918091 684014042 734506557 497623161 728334116 232789358 958992122 226482603 983871614 115139830 181896614 196573925 904844449 485953224 770830300 137577573 142553830 108699320 741535024 938997115 961577113 746115681 798375911 277349331 983585589 705551742 885626733 724272944 901812355 251683987 260861449 117206608 494295959 991022449 999790731 842728074 901487322 793634493 846322088 580400145 613424489 536384057 783078979 805451602 948854189 493713150 944517580 90969737 898429284 531818337 699678970 235349009 309740348 893171070 905851939 583849532 742552539 684742210 793453667 456354007 888845777 358094479 659030543 496769411 970414879 231057359 712918035 98136023 476949741 964018314 986213475 54378977 477166785 910921757 992943934 68932018 151898860 72585380 562693478 654009224 930700999 211267657 905205244 992450278 996743577 506521481 748934416 540102675 628513300 971559058 979853523 168563461 945874897 979363459 987051834 469376662 722159060 219515849 387338759 293477964 794424991 398449792 644311970 879270868 880832226 924394442 972574822 414962410 820624543 919504857 940448282 226858243 686389169 912946741 999372227 654407650 821514475 642594966 957244505 900539294 929639514 146762888 732793925 757780982 849051659 255698956 429533178 428126481 874481457 72272501 534910711 765697798 870246290 709218813 745437749 638281108 934587548 983916018 999161960 673750140 793821698 113040242 702120791 790913316 879883729 288305564 304252483 44138451 872554700 264034844 826354896 78145908 667957409 861170598 888630214 898184654 995567077 879286173 899891138 956725688 987908953 904921889 924532441 934767674 944536424 228083810 848674881 829200239 935018667 956186425 994638226 69810831 266942464 159166523 668839723 862523285 911363053 66377013 628581264 653725272 820841433 782917077 834390284 611334369 856720940 808416398 899450538 962363191 998981229 373389980 708612581 865555200 954547346 660275621 914658783 48312659 747874552 636527000 741957865 638282181 905990056 184818981 556270788 774393274 975426780 326775282 642585374 84097794 790552435 856127416 961953952 962267785 962964609 501116839 984006594 141571723 675563206 772635110 789496951 170061303 506948098 833557440 844297651 885933520 919841730 949244634 970599274 947791996 999747870 808065096 892600387 840313491 879989895 342838231 992502846 22487750 856069885 553271503 703676609 9697670 637192902 667682293 750634756 141643895 235410278 708272490 979420333 415427461 672804905 355652558 923669013 112996106 602240092 989004668 989816678 956226563 976486177 477592422 869095810 939305196 995905867 515041024 522379325 255543015 899486086 972821185 976351105 277290049 839186245 716397194 827876426 332975208 388361024 27382777 498464138 851745158 986781233 844725073 907380537 759438383 833705281 912846491 971248789 251231531 803494761 390148161 420751957 18356049 452979448 433182728 593600780 691477560 872551381 104246978 724078279 779237607 971019376 860308180 875857905 726732693 879293080 132600994 485848868 898151063 907636979 207484196 731498583 814181463 884334209 181913243 225250613 616832440 646004985 98889609 370561830 616395153 896107183 899170027 974954276 177852897 870703522 44356166 333722329 925628647 986234534 808518362 995103489 167663456 182481585 641403267 973735740 519781882 832247003 665471215 925133366 55683556 265040554 249380022 882363613 328290820 950219735 983973910 995924230 552170483 573835684 732378364 830383707 702590073 930788867 17432642 395798497 598036134 802562585 992820405 996214514 58279607 520526047 94825519 112613719 604054485 974449332 17492941 559559820 689364736 919668005 845869802 909865110 706646765 983624546 557476283 670180126 116414426 337305099 919503031 948467008 5137804 347543757 148016385 243779214 586778733 819533620 268629364 804004221 768595456 955505039 192194535 537817940 594249652 832616656 396803919 491031714 314830969 868779381 881276696 954089563 646134253 687285624 757565833 823542301 240003294 803855654 197559562 766275233 251662856 690421044 93408581 644176297 685820997 937216618 436466523 452244213 115513371 318639947 418400653 729266231 800601405 802383866 505953385 735530029 24298021 502575128 66690535 174363025 323669827 539514210 404773320 715304933 17298506 171639788 923173082 958820766 768535549 900479831 887870529 922735891 452752104 944492166 706972467 789291326 278082329 798381247 588379879 842033074 473063386 986282829 955080254 991599014 29297688 695873984 709601025 907146632 706589073 719097866 619305412 686045975 884079456 901110882 548363434 569837420 634514545 653518030 599507739 793743200 228943908 515452971 780214743 853598679 491027497 802389772 569343459 776212022 378495195 605912413 145108667 885958456 76301467 830065567 915032540 956014238 14233521 491920159 309144650 444908584 369832154 537866160 23684427 234616968 623575086 677255761 405490481 671547016 706053016 990916839 24315810 562387672 917357415 928071742 929286148 941900561 395318792 681829070 110621325 755701053 878102183 971200799 302751472 475647380 728564150 846466479 718608964 989818537 117255227 344961397 264685068 647064396 461736240 917019211 433064019 893731846 186696469 638260971 688793000 767566135 381917964 412570651 774412810 862684788 653095918 715101656 333539150 780586461 955723903 998092043 480733300 604774667 5840050 342584606 428715599 921800260 166206087 648651163 43854371 820721831 985910920 996242200 958605760 966486955 818473225 992423144 356962863 843760106 368933819 475108674 967964546 988619132 208757428 563785097 297681431 492670797 309584685 601170219 970254413 970350477 298345280 594280251 141407894 450128863 321163859 391331380 232331082 549113840 455219461 938413673 959965896 960682537 949902624 990480253 622139993 633704919 234110188 486670684 312577788 675742219 568200535 936730356 746081424 775828066 525669611 526401430 987478805 987662022 568672839 861238470 463622060 921454248 400038591 834387806 615207479 853206035 687291474 798037479 662448761 721811909 906238793 960630286 415282306 604925850 356682204 596423574 73449225 613382523 976249746 999700444 899713914 991628828 358477094 875367466 293498346 475895194 228251710 278236744 414868501 723356516 404251070 455396626 855564058 942056163 722571837 806801575 716681607 891292063 561428637 848044949 315875518 746043403 68349722 954287653 379453603 632561748 313444879 855018656 514893679 852858168 225996483 386233551 531621311 900119078 871811812 955651927 811126146 931776493 664464063 862810934 725897649 985726320 250265647 740047107 912201689 984305695 711473795 750279643 763199491 963415252 612729482 632651233 202799561 440772724 839455818 908311790 587028818 713587633 470277312 854628310 262542108 429748157 333376685 912802953 290090284 316994011 432584679 508803292 381321530 826895744 18967499 976566958 666476481 746792299 387872568 923938297 46817489 342622344 540667805 600365053 393485262 403265162 430778573 722213555 108040189 958833456 36781287 528943515 867052505 960572295 345674691 351611104 280581189 309847672 456824919 876870474 622707294 704428474 701449433 722218838 253054882 858480035 897282594 902116859 871275541 896487262 423521316 994323343 289336566 365163246 186951356 818749525 36478257 375675794 775318638 851191542 78365402 415934508 193753962 785730473 733316315 773328610 316027954 563015084 374387135 454504323 11168903 620230304 418047362 753708195 402255251 946028468 774848314 775262859 545695384 662962977 513556349 537832027 749477335 984012618 509236858 884900059 467027207 892802751 143289200 382077383 417594190 694060354 968314706 999019229 563744949 741011910 221691163 700686407 619346338 791693653 493981608 968219548 958236678 982768939 237814914 686808133 713397814 871973252 637976748 936124845 15411525 230831633 776320668 849279514 134016449 165318631 703732227 958156367 835441278 993653474 911640789 986841626 17228052 23038537 699818547 853809197 873147371 882118585 347262484 580122290 109740449 241612359 990857469 997994231 490961913 637190191 803542340 986206234 889644216 952691651 767256597 989138315 896377568 975568358 607317041 746017910 332010773 888553741 288849028 421271808 518717467 757560975 261048727 662747017 704834667 806446883 924343102 932393297 773505079 800882525 431122335 831861794 485724867 627574619 477608657 642181939 306261715 334364632 747112844 820199442 862817931 899843721 527202614 593009080 480843122 699973253 170973187 883708477 516444916 548462929 390360944 892284337 955113000 993891668 381058841 586707412 957819812 998414069 870547908 944209455 196349947 229002505 860407157 931008306 687662490 693440317 912568663 972989205 180983472 303424170 329786389 905181407 14390026 562980300 764394105 951717558 437584327 980602831 782182732 812468224 718997854 778377133 986558525 993775614 352890537 666384535 979145089 993081234 235741860 733401525 328940665 665279457 962870796 991329281 964063459 992956193 189711522 454187885 755283886 798813483 910362695 928424634 492657701 594930443 563264186 744658838 954926093 994006231 950010771 950065865 106715253 545983206 825398652 922509411 907873411 919131122 97284337 982788121 63742598 236244539 579694996 580430502 550590487 994050522 936623164 940845401 297402805 979307337 647161826 908917317 285000438 717809696 117513163 717555924 178411963 881361005 128245675 904203637 599810015 883114989 811151796 885917381 497818498 750646069 718054962 855902891 607414087 825516433 508468653 911517246 956355897 968096163 210672356 318867942 935070627 984393891 697505015 769898164 60696572 246344768 364905992 623990548 577821967 688554407 598224281 778852980 121221198 393418741 841581470 899725970 120457255 363658203 873665698 879985401 572016845 911345390 740266470 866030636 760491598 875774773 351374485 870151495 763631225 912798773 356337318 726303519 753675374 757458897 579132530 887541031 471727974 777442994 252132047 441482815 615839995 938433032 354723975 742681315 985067551 993167956 559496472 633843420 79243190 728092566 545070457 931415335 909929011 969495556 322646343 863275587 7724233 970353495 826476516 964414619 565194540 814400378 78795681 574268769 393532589 728244999 162062799 612909347 932162109 936260998 753969998 912094586 431469 545369598 112257085 484782422 214723385 823237739 774859695 851232543 812224396 867337823 370130963 641104870 377620605 806345046 271002537 448841737 761473961 910664709 712344967 817898676 4162200 671294284 978551241 997353492 447066818 968950767 283018559 529194397 393507605 818888168 682877276 787632441 836288084 956867438 448345232 802920197 895677497 913517414 620667727 654533809 36947361 373553987 965505379 968802508 896680332 980935262 739083871 930141010 33833632 216499032 560232322 920862773 461913044 896594837 618122590 966926522 285029311 324753017 31078003 741124199 369381393 889109209 632670608 873983699 772840879 965862066 83809094 825792734 7190557 553527966 779539338 955676269 302415123 724751144 384867792 588480437 624490558 837410963 802894902 892220492 676146489 883786371 139612044 842337869 72073101 743912862 277491981 785232665 3374831 250799766 637235034 642472065 479821270 692395674 377094023 414614987 876831763 955222761 553397505 860102575 761838345 808409638 654760267 864941333 302078048 545268163 207968622 464018015 21461532 94009966 879914261 901373898 152743335 973675956 308119850 472845923 811530447 882792458 81585403 695431197 169009959 840995785 6704705 883337201 769512033 902663012 10618760 314666130 570745034 905212597 601053727 795314830 65782734 156503493 504143320 513620998 741931800 744626144 856522811 883221224 12492497 890094447 5408757 242530796 779141492 841514217 47207568 830380207 916950763 978084630 263590698 454231754 395612547 606923607 126107529 225617455 315719313 882883038 150142745 840856418 777172810 919025006 410092259 569057354 608227813 618337731 166598839 788771943 823340154 974342271 82926952 97628511 91027336 990574249 506794885 568407210 606806266 855856207 110825562 531016866 911118666 969956516 477205879 803087595 865506198 970066683 91309190 553804128 464516562 681826213 876395559 957800731 938048406 952477646 287850507 410620787 113856196 171075049 343873057 419739412 920057038 923861194 191635876 825231103 926644701 968514639 833872766 909654495 14544193 297308680 676818879 768423954 405532606 733615886 689329126 871302122 687203311 822531057 317593567 414267270 811751596 965965541 760977462 906206545 589382283 773006748 778004912 999196215 538084075 955618354 789049419 919876102 85800175 841877169 386776021 947185133 923210494 960643015 17057577 230308523 330582058 990872178 385508262 927238541 635638420 649036589 32863370 382028652 217203873 446144491 966354721 978930951 609812692 688781576 158324759 452020420 717499999 902553505 855780880 988684418 419069860 499632452 301727759 791866318 800957914 877399722 515272783 945188543 264873479 637726696 944221233 990856776 249639330 722002373 962463141 997774915 95504607 800385594 377823007 764469802 274039563 662052540 95234808 870272210 558318105 810728003 356574426 841641116 595407099 731306682 61868180 373451176 279176558 565070080 166265027 450820022 284487241 675005205 305737910 381430044 853533721 950413990 399364349 940310849 851491115 852074562 379125662 773082101 501257122 638635377 286722284 908486688 685341814 842093173 234283029 608916455 9800014 281870372 982228879 988225409 683955566 992348071 475259515 794099770 220524413 761738767 158331491 749101847 765286847 832891985 97852281 503066262 130742810 702663183 626118597 895630441 642166517 834143256 327841520 562134367 512658062 942494133 137023695 410836516 885382922 991873269 922615541 966634738 218906194 832129578 826990721 923557817 852869213 902947907 882194165 964800658 556832993 693850423 223987162 308770590 753209815 925463854 469835230 752438281 700800399 881100499 510884450 744141403 636654816 693870102 374751248 545201822 530113015 634147276 804195248 920587581 971964356 987784459 446148157 890662230 171399896 633871857 995754947 996197973 65167551 831768641 420989676 672837221 416529076 992558526 24301302 57687274 100219547 327235290 341925580 587732900 930004413 982405156 595471754 697776590 290784377 340464802 318015058 697493253 375929957 932914634 774475220 959636883 713189497 860261465 292845948 524213529 723420210 765829288 799286606 938978787 228127233 377677977 773428245 890259403 147940168 640867184 911211451 962546921 633512076 744146096 395529299 435141203 445886572 929737939 986478068 998298100 207496517 702601907 676099338 857310706 618484102 878575717 607741105 869007428 22693427 604824950 875661408 955438114 853077127 956897948 714493943 798773142 27678505 575413623 192366470 898322332 267004372 462059380 11713506 412825019 239180604 244322563 705354162 967438646 563850502 837664217 186811641 279038595 28889996 145489486 129191444 879988879 144916803 819243691 63118914 302608773 497791271 722023781 553651863 690977860 257129146 443908290 640116585 698181801 29384273 91368248 738514467 741396836 566999732 574369545 162859100 473992044 348005902 935976436 390938809 497668828 671885881 913515693 16212226 325184558 986275342 991258094 230990308 348222380 62025785 656691914 124388530 818842838 304491694 579708387 662511414 739448875 249074573 917827414 427928355 515720262 450699920 625232055 385911321 993488467 328805999 428482010 226363403 777007673 272802971 396728974 725703929 885256524 527242332 706227800 764792531 994987211 727846677 804195165 820208302 849013270 26477029 832467432 418661744 542887473 767887948 778123933 487202643 802533337 858949710 861766769 401065669 657461620 505281234 914304087 704191584 929354594 250887395 312729483 442470867 451332884 234100364 384952555 131641463 610194383 266379086 647763436 418725160 542717864 8704011 381044370 722032027 761423053 346515921 506031179 233346651 849579838 616542857 842305461 470765203 554661102 28877697 486520939 523043524 766799732 98319994 615122586 385740126 824546685 628751279 986750509 453726226 536829841 166743117 295750373 122144990 317973249 621915959 789133212 586943913 764412777 488450003 980617211 6473888 619480932 953555692 979029007 477203879 807227415 820317254 899934594 203901273 818077671 951406936 963955026 987303822 990487512 918807577 954722938 392312916 997003686 692017217 789263341 475038363 570844236 289335587 983517517 732480818 832347088 388002771 604807776 538623168 951577106 840635664 944624453 593453797 862482337 320477556 780615366 412378432 941728574 530541188 725960536 119737475 393419460 151137463 176994103 731513888 857738840 5719563 351927907 270588384 416592923 680511062 926084739 136140875 991882820 714855552 968500487 109252682 598200847 426555248 962219798 620921172 780588546 582546143 807364165 1095268 263021192 155942538 496912012 441428680 964194326 245282609 808745437 811064419 897831919 8012545 48869888 536192633 982090021 904278889 919369317 626211754 950153601 903576406 980804705 276609743 709311570 171059901 655842164 520316644 951567256 151830372 282015481 973106699 993707641 5808833 214569468 839770060 939931968 613191888 742184108 399139769 505745940 193224547 308978717 100802769 909473983 71300811 516051308 319471765 773653370 961436962 984019565 442697858 668837961 122991047 699523734 772179413 866721950 346130068 413926800 307689563 615899704 385875958 642823743 551678325 613030515 242501540 469454900 748663578 859638899 835274050 998121389 803991089 832582364 644044662 734026008 886027720 993725689 755591237 817612439 256188082 319480660 842457089 842747380 613299933 850787027 871015178 918111089 959170168 980883948 487121369 838195910 157583469 968676020 468053378 748544114 802082222 900673305 22033991 696530838 686891795 711419428 503247645 907515393 877315173 936447172 853613661 943540141 626963294 928096899 59530192 481717844 699397640 957934216 559276940 605262114 922797078 947048119 153116939 830385013 883639245 915294355 822288536 874220613 128770270 853487930 768644889 965077721 337538857 993027407 625048832 913566072 419988194 566365634 710107410 823307689 773787932 825669455 790005394 826592208 762194094 922421390 169918625 984267668 565565122 970486425 7035405 900227770 214884092 449698142 649150486 804218884 17737948 259069890 774716594 941442466 225806213 644626306 579844291 815318743 195660614 583476058 313029640 590530259 981164099 983058926 154972596 787485270 87441492 89731270 811071639 982464918 397912837 737431925 231415713 958686856 723086334 784595093 616236606 755913414 897936123 999919473 62052384 840125061 738228976 814709070 802982318 817165055 695727714 982496029 553143866 750150056 315519464 944949482 965668483 990734122 85427298 868266897 357063904 885822340 355143756 819892773 647521085 649883868 321356110 368527406 928285090 948055206 308224741 745211335 56846549 632862900 30066395 485031359 897364464 975858718 961724514 975558736 911954608 991873815 82132798 168576516 457676882 713832334 212768850 939792943 58053532 255861672 918016658 985452674 924971047 942947845 437130354 839062679 113413190 974014553 370237317 652784721 343855709 582381105 275224022 548058180 900918851 995376771 487578483 830485544 901424380 919729160 767807319 828561017 482945409 556521568 854036929 916073831 198185279 254916131 464890829 668410416 424764193 674725491 407443564 461788294 251293072 616375712 22638999 549425833 882218448 944223954 415559713 471514339 844668626 969420663 107354155 907777182 451773569 918120835 369227060 887610241 884500911 972678583 722929364 741999517 909959293 919722369 974661510 992466242 624635262 966091164 85929730 327832842 26819193 105575349 660447781 754711154 160737810 486157942 456813574 495691042 161446734 328099994 809838482 934428995 648069908 668955783 47988049 717645764 42652253 545124982 831562134 869448312 270739630 585099461 200309380 474628553 80821272 276828205 800340050 814453896 200842899 568826628 220450802 923045600 140615518 214382443 708112399 939523382 224582394 429239878 490528337 706812239 63550130 661843783 902255666 973440544 311078786 317478815 518067778 848265650 554226850 679386162 732470198 924595121 853726992 970059059 638729033 754331612 690055957 765086052 979758872 985513714 503408024 914016203 365841098 366297592 409597453 410390483 312471489 374883350 59907962 416532877 4788684 854611805 12105194 217572444 660945818 975680095 935196093 974280150 169710637 529625902 728116149 939079209 77703758 597255495 67356752 919762571 194997620 662303988 154917394 954728357 310109814 911326829 648325537 938002771 796055543 853887731 893950804 906808096 859105427 995300073 188166502 701998405 135019361 765172146 11934730 947657050 773462669 942219284 817128189 899736580 65819166 441150482 685705910 835190433 398979524 679455338 72845050 920854652 367065507 473764682 656350181 930782399 487183637 592891333 475229495 650533306 664902267 674721099 580987895 962580639 789072390 896999161 623703522 887291215 773971539 802590339 923705350 989895691 256136431 731710393 881542111 939849777 219556953 331172740 460385292 677009863 838372938 894534965 22463338 573142960 138801027 643884537 987316337 995220658 641460896 704468540 618118008 945254377 700672509 787016098 482094567 744594817 494146831 532969640 163453156 238772364 342178684 773949521 23890514 483752421 457316151 604181434 927950384 949143176 907940370 970177325 446981869 804085928 564503067 760781367 811120816 903397546 645411446 987199514 750053410 790738856 130027629 924333931 837753453 928529439 704274560 714310689 777603082 974242125 103011348 710733198 709887349 843535243 307935270 564763061 534708710 826811066 790371201 980318677 719424457 959055172 922222572 932624306 488743357 533998051 878262809 880306444 330819915 914030544 167114777 970327405 720224649 888399487 902265681 954105826 682305077 798635285 402781551 504316394 907058662 934175961 580035657 923227153 551905848 938969001 908306568 950629674 575995846 636255236 166136130 685667817 876087815 929589439 163060048 985612481 953575374 986829753 745939598 988321526 555618160 880058500 508011419 980129746 402851665 743880853 801052014 896965480 382970770 859593083 8642626 963314468 861190462 962839055 279038720 912478053 194002508 249754489 26768778 69281956 200703226 558761936 887398888 961075771 281120282 501949103 15986608 831071183 623689082 982065161 951422568 957229721 387704276 923511933 517733070 950987465 692373280 904271794 968429783 990450685 317011458 760517527 269877456 877475346 72071464 435190680 288190818 550627090 684729394 820098571 439479074 579049394 135809818 843470128 814057699 904650087 223822854 424444470 691539769 948187014 753642134 961173811 358989732 856194237 227091681 486355367 201236118 413254609 4874839 706271847 753778605 793718120 564665413 813642542 795577446 898449551 973265321 973761263 666645417 898164233 256762705 482834878 418807745 831346613 771912902 967069881 488896153 992329775 545848466 783002731 108978708 960941057 396567375 886378381 119839897 838056158 56434238 296353608 251572004 791804651 47323921 644674241 345595657 932845824 136072484 892197373 314233777 978786161 193168200 653906488 21977850 154953897 383723281 780912203 783403574 924192187 609022554 842626985 497620978 594676435 350275098 665596060 457129896 786852530 620578720 781115988 110320184 738862894 11364234 595516859 468625005 524455536 964543977 999333470 195092422 420165581 360631302 732351427 326715 552446444 544497728 634579410 984943084 994364796 72126164 101675146 649711204 888820463 849493153 930775150 177496019 570168364 952401628 956460575 813924762 817204627 548964453 729559551 474631935 840746255 813286443 874382965 787648770 961555589 451364706 454141461 575621129 668119816 61061274 162272416 949459775 961382581 824732520 855108597 37456854 277319763 276755878 575321892 820943953 957341466 30035084 479886100 904033778 929687161 234385212 743535626 714574770 954091353 454181619 456262856 449550173 842246417 51673061 781522262 322634655 356112919 89868771 923934791 75880732 802970127 143759088 165547336 216509198 508051017 989650436 997024009 421042802 764215876 369996161 600672840 17352156 181202607 630365740 755088069 950316105 952602193 363144379 998765319 190346896 196995102 364433057 991113306 744520938 824385466 490312686 511637254 458673652 847556303 869501148 977956819 971876969 987790816 6417194 746057195 786029850 980733547 4426418 296865984 167725096 809313772 619816597 647567960 138113412 230525260 547615979 674973972 716188514 798751657 901395410 982025372 498602042 559628806 828304442 897084699 231711696 355335133 411783831 571941575 147967252 562141183 608400613 943240573 508776749 683052475 418924795 568974222 304640396 992808454 477212376 590865470 220345378 412617380 961129155 993471555 473388147 598119517 771293240 869269561 402201378 954165505 987425788 997992541 495232094 577536590 396733213 421919119 324132531 401992127 286470492 403954593 481340545 868779810 662196636 895315440 610585992 690147146 246908547 586230118 530940662 741678417 726375527 897035656 332077302 769757066 557275395 943044154 901409683 983544032 118831392 496014619 802863427 814762548 210081121 947082422 846627739 890258976 811670395 843759381 830661740 836962765 261873645 291266252 670057416 689685885 548221053 684079328 752016146 849634116 569001003 609078326 634808037 820475783 705430089 769149953 144334958 363732009 25392364 879611132 356783871 407390628 575399667 836267168 418131532 940998473 873825104 940692722 220494671 487719891 981000279 993916847 817494962 852018635 646468290 749640693 479038404 512505280 987572968 995710188 557217667 724855215 153552008 354181651 536379666 620396355 584387001 600624223 192803596 245676571 988067182 996990730 26289458 689974932 494671520 738430531 821688277 850146324 994944944 998004819 367105705 403909429 864884487 910278254 340359034 627855484 850126011 869974146 164802173 223703113 524298963 957577958 815368997 946515093 984310926 990506842 848277060 849744144 136731604 394568181 953818422 957043802 256254474 339191810 231633278 578920752 462517115 835515578 609267294 670213243 6031235 966911253 535805637 683633978 820519023 999238433 237460914 983411052 618194892 775854392 525271321 843700723 715264942 943264898 638327426 639933869 169221803 811780957 313478375 417529962 597005137 777751913 859229359 915542631 310946169 331494071 18315234 794536558 812161664 873547862 441330409 681769810 415368143 636633580 359408141 784929775 648199482 871783884 408766964 986195472 291450791 571378581 37481571 292190507 992197459 998996046 617352614 702633718 798643553 807741274 687685802 770459470 918706731 993169995 471944199 699056866 594915014 730726811 960268299 965741789 242352892 491316472 608162136 939979673 445911071 704808370 324285172 559687434 639119617 658221975 265159223 317041726 147364976 621325599 784881920 787170487 734746493 737868299 872192155 943223319 341410360 800552310 514644761 976191987 526561739 584909322 826152539 908779961 629371436 645663438 875186515 909233891 665919167 686614398 103990189 671492754 549872646 867755919 240197237 444460013 651170892 808169357 285463807 472706735 448126675 842310176 746165373 965446806 345436570 597404831 423382728 821890767 349783267 598201783 879180843 973640745 159658264 648052442 274999391 868431632 562065503 601997744 768743037 940149529 664012867 681600433 66847190 329233827 747505659 844663044 28535882 924239907 859635879 905960453 270539190 518548760 432074366 461924770 71903133 721511044 979999853 988550223 758857976 887708485 299562329 563523835 391364751 704577168 640982278 978859015 288723355 792241835 769789107 823248124 280244182 920933950 517373690 884745364 363933613 755833190 666636349 705813845 562292290 704247237 345710285 643287262 358151848 985532133 684032130 884029416 128944582 518479980 895820539 936565992 628074441 736910734 373981874 851810596 708838302 737444830 71215411 968124271 190850881 402517991 82786476 647531553 196222320 407713557 323272360 346694750 199889479 547968180 426724470 807918885 481006008 561841049 773121166 941946694 889899983 968101086 12215659 21857839 374053747 786790082 342592640 791136371 328364338 425193781 240634836 303766554 18761464 994459216 717473656 781039465 76701302 386924588 93027640 480816855 333920073 624564457 46579357 512348933 179948189 957073645 135490778 781725200 286847595 482660114 774544001 948038106 582345021 665678596 314381888 924899361 76051335 862710949 395788027 975244076 649671847 902516648 952223354 955588756 479288082 924395069 855650199 879916484 156720038 930533952 803468401 921009054 868235422 953349503 975329336 996955027 647960457 974119861 921450240 922241830 521478869 869844189 383729886 937049441 336729022 386751628 784953439 833979600 384766835 386215016 809854764 827142393 987184634 989144895 259732232 465574788 626256927 956986700 919761549 930942230 522782807 774626986 155882955 624151743 630907722 821359208 849519540 856220058 953084249 982815010 381598829 956402773 119792643 946947058 15593049 159235507 209968001 472920893 412326234 852615258 524977492 861281446 45441692 856226359 366575746 572637959 664332914 919445367 936920035 945534100 104650813 122394971 873057524 971640171 662613740 760027747 987117892 989920881 928174106 989650257 848014930 860477098 872098408 961967486 128727264 868113492 589372568 830044968 914385310 976829470 797311873 850069158 136359143 449356882 64450914 403673448 799316226 973161491 292691615 412059227 219003367 666665086 209880124 527342031 611321957 889387634 901878979 938402220 985605162 990690650 561477147 609263420 94233977 362581773 545922706 557671814 511117323 998768182 76490710 902570543 788916477 955668471 65722379 237788288 186211088 550991759 425557894 692467534 225676928 247260718 262246193 983747583 198228247 348021677 822955385 891891590 344503705 665571931 660113949 941408233 573015963 634143207 311850338 710939399 169435505 287422178 216753238 915226198 240437917 619181639 585751759 968410312 930269710 982540309 20351100 414862451 99090934 286229696 7259475 610404685 284302952 371569472 463906878 604442227 532817813 671074367 538411093 629987253 183528001 205261157 887576175 979388816 915573892 990105279 567364784 589352783 319121215 920524370 452330260 548875842 979324904 994133807 529176337 921629488 824551774 952443674 694062340 707580924 769173077 899319070 379835458 989587242 632268388 972400250 833034733 907515126 722472562 847987753 252349869 737493781 190778028 359836755 916372696 942470223 774881019 904096784 905935646 965333842 974052118 986258614 272155136 400377323 895558597 992801339 443873818 758896323 814684775 887630460 633769515 666032845 24780519 786860592 137538284 915030564 584182470 994686831 177524351 946808726 975299441 997908041 187042187 569022304 817800682 914009747 407951355 856595130 382947905 514088874 216016259 919917845 222355469 907907130 12898882 710394109 371572115 534041097 791909759 884209538 792622918 872953847 286687840 414123373 576443420 907466163 883563016 953214534 955110947 956872446 598397330 624805490 811685244 874856348 455743458 544316188 984678580 999775325 7782240 340766764 278512809 520373175 267195206 574433662 642714493 929938790 775477203 856405076 897033210 965962187 529386308 984071597 480814130 935804127 921425637 956133851 433618680 877337693 575246225 785936725 370213779 619661899 723251290 874845091 506901176 597586472 147516317 525161555 694125540 828690760 846909206 880909138 74444380 174518189 592259450 970047563 481424045 655409287 701815033 778528690 589299880 782211591 696262812 974437083 361697946 798875756 672066191 753880002 30841523 566334800 841534494 854674661 162051120 809333677 18754236 761170913 504389125 605127767 702882882 744417047 332083779 965559550 973262628 977964171 474120282 981388888 20722658 829036787 590231024 804853822 492060771 728780606 575122236 831967832 75603315 573335386 636256990 997688123 959506661 967835145 877392645 909970227 254010178 892988346 261543196 776624373 835700391 964644612 973016958 998396609 110832612 125997495 855603342 924045899 127924028 440650150 164246298 392423243 866634731 937766874 406379220 833442534 934464604 941768571 780729185 808928045 61830513 112615167 729180542 751746459 612698169 747287077 271499204 542486236 107865098 294390879 827075898 874168534 59355513 615430992 166947333 749201735 219200114 802466699 550592723 576479410 379644120 449782941 820392089 906298056 313830093 708667266 580523652 976305138 973684665 999135903 216816788 639710412 652367832 943551645 944023131 947787312 736248683 996273586 533153043 738793607 639491278 864945645 689027675 879394674 476235562 526110788 938176286 992749211 833070559 938131263 799051462 986601660 835484395 961974247 194318219 871736575 455063589 824455504 588081267 879584891 420374425 495817760 66881744 633800022 662113651 693825988 559300385 713542671 422273478 615964403 627373863 747544546 826791557 832472275 367426434 389850069 810120357 851313433 631482679 642957747 920872469 948736643 644536961 719345523 591064528 841921921 581287394 901473643 991325132 991880803 442963961 602277268 787367982 829613637 39114036 606990457 871954804 938689892 259702923 746043456 292935110 715703902 152038145 397054982 512724561 660811844 43648653 715574417 989167616 999837290 141584808 719728433 862193536 912213242 444430985 680016159 448440547 870625836 208040740 378033702 479465 128743420 169906583 972508989 954864315 999295802 397862521 491817988 362795115 507427067 49108568 934957481 872614865 939001119 245508576 531785769 308631319 827816670 112310695 801472569 530213425 661190467 221727577 578108480 107329478 476404350 435035798 944700578 35029799 946653041 871024430 906316111 646788303 981575878 488814082 804577347 309607429 924003170 152905044 500055528 506371339 852152351 943714733 999015084 451044460 903636090 453012242 469014441 427068929 729055312 4042053 416971174 209905947 792790904 261552429 343286474 995585837 997072440 966197163 987332103 930670018 947197262 749607100 821344765 106209739 538354486 114287696 300385707 399583198 516330888 19518154 824388875 409340207 591201009 487049521 659801237 18069072 83243791 533165807 700822149 551122404 996028876 961197808 977972300 15665501 805187032 197772494 311210614 311373323 532839681 979528465 993873403 350338892 459806273 285742968 617364556 102494467 368282657 381595775 861619640 549434413 989459801 261778425 793474155 39934424 697652623 649124377 847599226 693318333 948141437 955685501 976470780 213748849 843406324 663787052 789436741 839684498 995477832 430764705 442445699 795496046 828231390 597848587 723426975 945743253 948391526 636952991 701227364 161336162 736338268 974131951 992947209 602962569 895079738 636941876 844166420 698403028 914827823 239894044 901524713 253916604 852000879 474413648 606787791 551694274 862898022 933157909 955583906 793496142 993803498 981596016 992682170 646055675 923007960 598200498 804268577 744951304 895152725 339640708 519271439 367913776 497555914 465923966 620424904 570669812 691902399 512571354 833754434 868457812 984000498 968909662 982790920 178754758 979105755 902483999 924526887 615404771 834427797 160340448 806375818 419743405 539505239 727782812 840657954 702111166 939930496 198601588 813261318 389193198 487836348 234950860 798395407 239277593 327278693 317409816 999654470 438139976 780063236 869767254 977753329 358426474 899061331 558878600 829256478 518227401 789567253 22611439 842477891 375070179 517755542 380047686 909173132 402991618 508754854 863026719 888793755 9246290 579752163 639235820 836149291 911176273 944513616 976688039 988372449 387116859 535166193 729602220 951767355 102496496 342944044 814032041 895600128 912496684 934627109 705581153 755124191 872495652 879734651 112185292 251034062 730743201 774120083 156536919 874031427 39080961 148463281 954674858 995499369 50672452 89725002 687896247 782780634 549507065 822486889 234759977 939162666 175067584 656368526 238705252 690783539 634629093 796653932 474990994 787764942 139263033 222841088 337585588 722690213 561278852 951705636 52018604 751603027 634427348 811790780 251044979 764301425 84856889 402697225 498971808 730325688 573644613 826987983 161329751 951291242 632510360 683433152 297473828 367960430 811097013 984419328 88495737 374111914 569592568 723242518 925621620 995389652 394458253 504957953 666757484 729616039 144748925 182979819 925663659 967476898 763095839 947420742 468241088 555540366 563446439 666333130 370855783 880698790 644227188 968848343 839057285 966138370 440290704 787192957 667456310 777112569 690090959 745885002 404520750 483341358 346177871 754348066 326883601 793152549 89491956 892802252 847008211 906163461 244242632 291639263 721054039 804119363 227348118 747378834 632588309 647518028 811996580 914976999 596644393 905306533 641934973 797960739 892072198 999138753 571378516 919009191 338495099 629323761 664286006 828978992 87745474 757920921 351043845 749885403 929424393 986934720 416140618 881112784 788111632 971031846 741855104 933905629 77982319 205717864 926881825 939773106 410050785 773005748 301147304 651588766 924593931 960063072 179731773 489649311 149797290 690361658 604170753 679695926 73937579 383141289 329757838 575081365 914352947 915898928 415004886 617685404 381663814 550159347 360321484 959564346 401501307 860999657 715200621 835101112 656553365 840898977 676340321 764985181 802536533 947594293 164428393 709525255 637286265 741198845 657975176 683415914 962440815 977115428 270532174 896565214 807803140 926288593 861984571 900388007 154408429 396571962 872530908 986820345 392571043 821385715 196929877 210422929 397876233 556327319 683086744 885354088 406840892 720359520 223376115 966971263 165662401 734404969 294877289 874457423 757797944 942610529 282369201 548359163 170081609 934734588 42029904 700599771 184491260 790339540 355503078 727612781 124427339 936479010 416278719 628720764 687661757 851741176 597560332 851870794 264076559 931426161 95188705 603455872 586191034 938560720 530046102 959047170 601716364 855107824 370835211 926082098 952931948 969013635 824079922 941874163 119553178 677559177 351409885 375092175 232181042 392564030 353143225 806731596 857804816 902940493 112932408 734773798 363121842 663559144 222928153 585745544 619919229 899857026 417938627 750720598 810137737 931546128 712270440 831579000 658174683 765284351 178055546 304123412 379947295 788376554 769407965 921335190 610542314 985288923 559541998 953290893 816437521 912895535 513828186 673823898 617918970 655424462 810068965 945555242 580619541 840631818 853307777 905579452 622876096 794030446 866475550 996716418 606571987 870629876 811425877 911528347 32887708 363927008 254197391 374608807 9103205 447519956 948972655 963957430 187279713 628650416 389077193 512979041 81261921 449668004 391228273 580996757 871921312 943104944 726336997 931325381 191404165 281300463 782268249 975342995 729331804 813731323 315681964 757632614 513167888 559949612 630706164 923838905 5754799 724759078 733643554 786280937 413100927 653957326 107215834 139335258 178566189 495909209 689832240 997087720 42845662 973165214 381256077 690006596 874362994 972963468 384275608 716454892 116141043 657857042 257954293 601210299 826715971 842876595 133056249 654761371 210866173 843523372 531617551 772713437 937922036 956959286 820532822 991778456 140361678 766891926 230015439 391117259 54997632 634624825 957584 199093779 289311398 625587902 293553113 736535202 529322812 736126421 257789669 870591578 225513670 431749501 383523136 970906008 601143896 853925912 914886058 961567401 915199383 931288433 51580100 884986690 504541622 726713819 566901332 921042861 739648001 858275415 587364736 669459760 459787397 674824647 842333317 969686616 29637027 582778937 78722769 241282317 808991618 814101529 997118925 998936463 83362679 359877429 351194444 518221104 865596322 885247460 963157143 982368441 7247683 649420961 671050985 804239927 860203944 864592662 240567007 708790691 612252607 856112839 363488885 545187114 186907264 918795731 834415261 841341453 504968830 541535547 651488411 781428863 196353212 912108215 769436287 970029509 302852397 437871663 797558701 799981426 791964145 982576333 169593175 659012601 529136864 633033638 536450839 728048051 706945320 770078115 381789338 576418301 634045027 668830060 213379137 583859525 950175694 999055874 655094249 734690343 229558361 677262872 924885820 983609605 573751779 964293052 561786392 911418211 558183136 970914163 526835900 584016310 653019812 959064870 383782885 751993922 7460095 499158047 364935603 385286000 287618736 930621626 299193481 532660808 877455003 985596192 893972908 950411950 102234084 248621315 852211371 876856584 574335219 833309884 874096128 874443857 13909301 490977537 490599306 746102616 405592461 621628960 785149497 848389769 705302536 735676872 437654771 655866090 511661252 638460737 597255671 707868437 99847832 269272533 668684491 899432774 321896758 524522628 782329887 867376824 517215810 899740979 879248689 925295273 392572886 773281016 644481252 967046644 378000619 727795535 660924945 731121058 95325823 454762581 391025249 517673010 357725977 368166099 431994379 869398587 828716983 911944693 348502789 718593764 377170827 838946525 411002994 988268671 75694142 667832771 863096433 948803838 193912868 314625042 293528657 635402454 61628596 759142979 29797948 760577064 590027726 904795432 318732205 443523166 830197874 927234772 77154574 372095926 544475500 670486516 156482831 445987533 695535619 833460790 391400757 954004732 59172156 213664103 904416189 905106838 640493868 693216234 256379976 431707692 912900260 999887744 477959250 532211569 937252730 962542235 683244193 708545975 770865271 971949672 298095485 734637161 630927222 668792228 449546220 637620145 902375030 930808825 561068228 854421796 602187254 814499428 758971315 774870022 892029579 906913189 675360449 866258308 533255463 930812877 469426640 625998188 980538154 996979569 839497234 961754771 52347173 112463127 383792626 596081533 308019336 730920799 254315978 733435664 35899088 572730007 395219 533278913 602355681 934872529 1086067 449597083 996293411 998675390 872722213 880036893 132790893 734200117 147385437 478745796 938786654 999711639 381458993 443269219 697366170 798432920 590181992 602270928 696555943 702683822 736829334 742362310 754392848 872033129 374377735 896045950 278630661 592567010 782039205 921887058 412558905 596245699 595191482 799431461 340150689 483475002 404291461 997786248 26064661 738277894 570737816 592737809 190271108 367672831 112249681 310696547 142350910 386083975 506095116 796995622 302862165 625820083 246850114 941804424 106089492 319193613 188570432 701693852 291211153 297703986 188176916 460401915 978593950 978762375 350824871 614974612 457713663 796084271 309098720 821931401 619694661 690124957 246387694 317140718 424696807 794209070 94411857 98839885 440271466 943770576 168463691 767694827 597105563 908538321 211340839 728916064 993391989 996131737 510036829 867917229 348124040 747938431 919033893 952542300 326674232 454652338 249893440 754882216 198850953 394836163 564538420 738832203 77650669 461447866 114222659 676661547 564118445 904449242 909172210 956938089 950730177 976211256 379820558 594403451 563933940 746975036 464370926 579830902 97783972 770653880 125401180 551239891 383172196 675961865 541955799 792815091 616540877 752885313 174177251 515688760 615986849 962900315 614195569 628331022 112346929 947088213 171804212 463556193 631308118 673573215 204751078 420082920 502538108 638202404 439796672 557636937 907906438 964543980 862829430 971217027 996426264 999098570 43710924 871768500 673161333 766819644 529640220 660237118 75646401 164474125 966753503 986807727 6606446 422872978 92057953 393039989 502374450 569882151 795657810 930918815 59529546 238541786 236016690 526044089 538080136 594566516 612493102 654159745 809100442 955890561 126931160 643806456 949134175 995224751 546408297 851455483 705680299 750201119 244455369 746688070 646069713 879767752 415345612 850499211 96618652 935224935 892675129 973016731 429165347 997630516 461511774 663359355 673604239 697773904 595905863 640918994 238092206 239828298 121624026 184625310 8287572 880005371 959218791 977594201 254586589 390215746 30706889 470185261 548330705 770669307 711031750 911302410 459998760 796469228 635950421 904258629 774422346 828895432 949245231 986200223 548674607 604302147 662230262 775123612 339308823 932256631 659495496 853184749 641639035 783470953 64083979 834139236 138259623 759223159 360925018 600425702 903363176 946325859 138030306 719602092 512082952 954637345 848889077 919041543 749500420 850447394 338219665 614668727 471119088 659781532 158608469 360783817 211272742 544060339 963483349 971298592 382383751 883907404 659463805 748858395 567343492 867546724 372563361 954135082 785412919 832961844 296307555 902879038 535860436 826956555 323555739 382601390 648530403 696516159 966498085 984523372 120728007 424737876 10383597 708068899 806682860 990971434 915189435 926841415 694403892 896226207 288456383 787805031 480517804 609624838 590463648 986919496 652086698 671336740 817783049 923447602 57030277 405044293 907570223 944541609 272944291 865979979 413453865 639182732 302545771 674157119 653563769 908532667 504613884 934370526 892922687 904460452 389067345 686210762 3810363 932840483 462726284 558302590 165768061 454049618 591568604 985484160 848832541 919639465 210563070 773185516 362275242 536025033 753932538 968307656 866499340 904556175 804550904 815886929 676967230 898873953 670751608 805417432 521591082 730764384 600651895 657267418 803736080 855294280 529034372 684532204 366388791 482682518 788264429 935182417 923024528 988414388 400841404 437545672 755544390 840581146 626879433 853746547 779251521 965477625 955625762 973078837 78702853 995584485 524829174 530066215 287254280 465992974 653352791 996746827 144715690 168497594 217120978 593765356 539593478 737482608 861634404 974369774 269686709 746026855 256780244 818968697 596494995 944856929 340186666 838672285 674776180 932334125 346447735 744376605 15808250 259390788 403336672 559786903 793428932 841138994 950584142 990531537 63121641 320110118 754141619 817277047 958855120 984886606 310964069 318791469 518919026 894981560 30582841 690594079 206518709 274132285 304616946 470651761 175819785 550243552 312652227 423713695 955135084 976221802 845998686 886856849 33374651 334293741 688141539 929279283 728840184 734573414 745751502 947143218 933746283 958939863 956777233 984554082 946888104 981530327 2168786 593537399 476222739 650310272 385678799 626229944 610847903 869643324 418503604 888080627 668461320 752821194 381364945 629321485 136701383 235227101 209856497 950878727 394954107 799316784 151932764 837904313 492137826 994777441 830537902 960765957 422286353 636218729 385166835 556319895 271615682 837696695 581832498 654274851 674300609 964116575 277963377 402087186 508374919 567612864 192783385 823918233 696056773 888753943 540246704 699299328 550718129 582291945 277726741 349370493 341432722 777613571 407152027 705290419 711184530 720134284 507299180 950619852 292858767 654253348 71825855 105575693 515285814 789851965 600772163 739404987 53466765 258721658 269602855 724342259 315608641 571838521 290999443 792285411 173011492 918200466 669936393 845673844 937182910 952742777 633988945 988158452 574097816 918613557 829218520 949209241 988034254 995827245 926764514 966683355 241244343 441142443 571690960 859360382 151656022 952732772 475013332 971035765 845653078 994599341 957791412 992066185 676097182 808811869 561154623 851760438 302746195 755445893 74962353 914701686 275461581 407451914 38466270 310628379 37860241 918295814 86446589 380810046 707134975 797916334 569063669 885384888 215425046 465168409 305270800 715671295 327043438 342691549 125288830 726874063 746305383 797858659 652117383 756885926 550590140 826592274 899265291 925817755 409588047 753577116 152588 271655293 733742989 754979247 160790401 361449068 40527320 173985267 185206556 280822063 323031667 420051809 931120041 985110589 181393174 332889770 600261475 885832377 884091342 983312795 804147539 888679607 269935131 435831540 669162976 977959766 552418993 991813870 574057455 686397454 197786554 377312712 615151790 797159592 887454209 944529840 608300682 639510474 743403729 874921901 473220463 809193820 921320698 985348004 403645987 810744749 788834764 894186388 815373033 981149780 272705335 935126407 292502412 930898728 634584526 903156150 412425130 728299880 593374162 792521949 533031549 587773289 251788799 351599591 671394412 992504037 470752680 548524619 786101162 810938322 964493960 992681516 841299634 876364805 593796636 961019719 161614933 873337531 875040902 875231103 716493931 722578584 687693815 805530253 69367412 832778650 307674140 452857592 584140295 956182462 731781599 935426960 408573425 591309264 90328244 848949617 261433989 875267927 276019936 286229035 742277409 849374897 470250528 868154325 334260103 440267042 669503661 873280885 830353006 943841595 570459824 742057991 773571023 924019589 469254296 554134771 576505262 939455043 994076638 994503985 961454184 991668754 850814210 965524775 474366428 691440952 952543139 967032340 756337751 993674451 166083401 197618989 358540102 682250675 342390000 584359400 658683847 910939243 168729833 312789913 938504149 981670949 235432161 256542279 983951322 986245561 298880884 614849185 228619398 467542744 288064889 481587228 565588114 828785423 68741539 962354920 651879955 894072014 977083295 982978421 589189650 651085193 348920563 599616716 558775273 838047151 966027788 966359788 157146014 845961229 463023222 589593793 908129715 940590082 560749307 723218560 42222830 352786602 513076396 527982230 742071867 962440797 779359880 835224557 347421321 743798367 588551720 866126608 624320550 933256353 860963595 887060887 561659655 906329293 187913730 913451538 326507049 978280377 227050872 391685419 653227266 909060752 147869390 348795179 723425229 943808187 555683376 744609826 142148984 367730490 58913168 658533061 894938911 952611354 384557204 904152708 909310481 968664209 338931749 346431673 237398304 238309079 454572601 740103467 326668961 365888204 974752117 989112625 114368150 367085961 597222389 714294998 895380493 985903472 184942949 655826458 521226402 908021126 268820641 746815837 426764741 684205262 259128730 757125809 463037612 668487982 98321316 301130894 161133425 839289688 424753469 672044406 6308579 169552116 240813118 259343372 283793519 345926186 738273914 805445590 995882430 996599229 816128257 867342910 122095300 670159867 539367434 789074061 807987075 979342172 298456414 972125685 539366529 687551169 381389095 746674174 564578184 980776196 887674571 992374883 809062253 992245919 287274532 746849476 491314590 848184457 674291536 853170870 454602754 803976610 188251818 992361940 421162356 837128388 917940775 923907479 192592827 657619037 198057930 733687633 169955502 250128588 617843517 874265664 279430399 963274702 564095506 918724686 71409613 613381964 887716027 908953847 109509041 878365204 35638471 206962581 863843923 895597832 732085996 844500540 784853782 878559443 356170720 751510062 621362383 721391382 649418027 786362173 51238621 267484387 978047048 988869135 396674282 491334766 142088191 841263756 311470285 995150067 110882239 227940068 977974051 982061402 660596724 872471218 966764284 999699110 682507346 989637023 868793558 959471318 598446641 838547858 296848847 849462478 864707323 918211927 864667443 927268797 776199848 859441823 316065328 780140085 47009981 86121282 212757783 390151042 158596933 389919181 221027854 482254191 364639004 773050118 730727265 894560803 409858568 728871880 422066874 691625521 58760461 848485340 962952945 985215611 528586082 890098737 336106997 556727029 494064634 871614991 901880884 969039231 675964524 820351223 269672480 540929646 705004454 785011619 100028023 129229206 276046371 659115035 284974320 455429573 682543181 700627224 151565436 307902774 764991500 902757655 547591978 624464004 783448168 797018210 698783072 885555768 320395542 633620551 920641912 980147233 613679602 824158300 248981345 280643252 681452104 694398169 393820292 609141396 37270110 407535012 7554170 336485887 691096575 930509587 742101589 897953918 81286892 843455283 741427109 931182826 619091825 890659239 218137028 681177719 534577494 819038198 921714919 983101086 695549852 816193975 154850611 535931860 87707093 637182613 148818191 410745571 983988566 986600403 987168423 989266245 766956650 851176275 459661214 548069709 679834004 911451352 807174090 838987155 518632980 707513252 96275498 627959075 288010915 760911404 741258781 961464777 474422866 691462327 176566911 646098170 26991964 917738754 107233661 310749495 697973147 920217050 534886794 789318018 911774276 967074213 723871144 850089717 681327820 797690783 56582278 137119027 800231 239386402 686984595 825975872 122581475 458773371 129566120 352988814 556749495 637919876 442371549 893753734 280721460 546233699 410346165 924460134 666538302 776496599 129834172 982920252 296721990 661862033 263848877 279054128 108468144 592049811 298778658 696990231 97686406 499807855 299539297 963808918 403605518 613280583 36434393 431303822 92580252 394894707 717230086 865526410 816879483 912448248 734226455 944981015 910007173 931979621 597019525 867343541 963878153 972281030 955121370 957034133 456443050 678159252 415971850 944958836 845408043 961976409 560886505 606507634 373732547 855779106 477689987 687701884 548390186 670716756 605655234 990918740 835782780 987688419 299359494 654051099 100304210 561642258 549747325 739306396 177005526 942736187 804766363 885149337 546270127 791390366 310229502 913476083 565732984 803301849 415581440 829452861 888820114 922067619 834036339 990035438 375422945 480871531 949529376 984089902 917735796 942890029 604272038 800541716 887148278 916807053 55690153 621763528 107027710 956424180 918504772 957365765 333978012 686341177 984057760 988617579 735700840 874624871 362666016 711846600 908267515 971213987 765302872 980229279 305049508 852097962 572761304 637174634 421616944 847546746 451892118 487551388 753956049 965967398 103164814 305685175 165651752 257439450 622402169 902639274 856126774 995328683 598270523 611111221 949882982 984485350 95530897 898384898 843747252 856587499 669112858 857917418 349142789 620284296 70657832 399548019 596392999 677525242 452798927 849798459 764705770 783887576 152685331 892642647 646659268 723615040 688056985 830702204 769690616 781123387 791380325 913783674 345669665 892159878 509637701 698482891 829605533 876130415 289488315 774114927 886544658 933727259 588803366 729231439 57384263 429277198 705894957 706492927 727728229 814548901 203388180 607358271 247815959 486306324 652354807 972544637 254094495 318024887 637908879 893983810 62847537 907977792 240199709 348511498 414104719 847352269 665011252 944930811 917884922 987997504 2290 796510838 238590686 708990935 818332887 936197764 723725181 749996820 443888806 948300554 46851424 837479717 643773905 677686467 971799523 982092826 227534897 823739593 935869638 943252747 229150237 537605144 676341616 814654907 120123217 650531898 538755842 961199929 957675687 981878270 574989060 628681626 39616799 133514108 512179910 736500736 136072008 796393910 348715160 836225341 970185988 994857848 631425023 807832894 847417587 918965571 113261122 471572168 142399056 383358007 933628772 946908908 826112571 870454452 903284362 964595315 294571889 443972394 931033338 935381575 930259854 989078547 351538096 805800676 602346502 645532251 864932650 921663743 260708827 413522895 617570357 627633551 778258898 909908347 118889731 303544804 984421857 989730688 455462947 793172530 548450316 723399758 590500294 651433722 636184937 735945981 6065408 629113844 637067948 962639795 421010779 934441022 888637544 965652642 632802970 950915981 541225747 777116506 196437460 583729923 178820657 913406114 493728334 965388083 585872797 989095832 736865529 900481621 147686516 260605830 625678902 941971643 822915512 918549028 443203043 537894189 498207014 771179156 260454879 322669955 483623716 948673754 804328656 999202700 528190582 949405523 9039404 434143852 975523786 978325638 803179795 922324529 894093787 895141718 173089593 753690022 56161782 986626279 476597027 912065427 176753563 536019168 215326941 434729854 3322041 931165429 963168834 989035529 68098627 561284576 113694067 926485796 571652144 869196478 247745778 520752027 771090524 999982710 801459380 894753126 428236399 967354120 278279185 734867151 87589867 348244575 953372562 968908680 414899567 519749363 854822433 976132610 513865463 883492668 773095005 998861019 364834176 432481854 836215890 859779197 946998479 959759753 903014050 974157509 547257986 704434939 952677753 981603993 510241319 830280019 761808806 830804378 299694123 675048974 330516997 984919103 618571410 926421403 355943146 496834661 835207737 867875901 776315729 880054511 565820762 947209012 798949520 920944305 464392240 655830281 71320429 322028912 690544367 696427922 744588594 789900641 485371714 895120489 645775871 875975498 541082793 777961418 460161693 722781314 301247626 810186875 901786090 918708346 134950033 872423868 483547396 609231315 752234132 879883827 621245980 770000472 561338642 881312892 792810485 936892388 691395398 974610240 145838384 894107247 839411652 960429157 561869794 614304204 86783724 644503691 240643493 767486366 639965244 961874787 416102319 541244956 741879102 886685283 111355475 580692945 41315949 785976894 554549153 743054359 334751963 600286355 501709348 859334458 268127062 358614941 202233030 636159961 301569289 752120044 593862848 773252724 822008502 844342031 161051333 508957439 68140392 473618252 325758131 473242153 58949721 546686052 203342692 607607338 671596978 761521814 467217898 807221719 962164494 997851083 248902681 740836314 557601568 716260490 965687551 997029438 397644508 638189163 873806773 944035795 197036330 229237898 588711889 704316111 158674259 629577397 725946863 772991262 595990060 920522720 188537170 219953802 108345357 750748538 552166459 926266001 623960231 937696416 547492316 773933094 839715566 954123549 158876260 421545903 324582595 650150697 337420257 424305069 645687527 767054573 188305022 830949501 167938401 229724967 16880596 97495553 745964200 926187507 99344441 574403350 922482095 980482679 2651505 593468150 791479798 814908671 399694240 481937397 287009770 853663307 605410803 629900161 898804283 946415480 532065735 559820630 722241841 823164163 843445993 969540309 508966623 931028376 586421285 878186997 985127222 992703219 386313742 919890286 190359766 918040713 679624807 920503510 838218244 928622051 253655178 870720188 350056520 351296781 943215787 968770906 902811977 907405810 235639545 307769193 120294757 496622431 22540783 133651834 817663081 973680667 759679835 844661572 444622161 555432871 281748382 502344262 263853460 756295103 381267093 659144283 355795132 928986735 712614220 818077492 140619366 503367368 908124220 912524261 725184286 977743591 860688476 966597321 666381476 745053719 78838390 611302777 57646147 410119754 277232571 445592685 918300911 987785791 496356175 807623065 541232220 871690605 841706514 868881940 53462793 232362786 562673855 697860865 384398507 809503507 491924156 725199039 622300633 635575055 159803538 458597040 723977312 987451761 949716363 973641781 559629851 718616007 800026878 931511301 850586063 944519103 872989696 950222636 818064318 848912093 861356310 982830798 971559099 977559565 20013366 303762772 863482765 930888788 642372022 873773111 613691429 635494880 486564443 791296933 342212596 707356158 455948214 929455483 105296286 369122084 928719998 970526847 496706171 804983162 300529142 809245982 928781543 978600574 978822859 984532957 478241329 596959638 596637635 760908377 76146033 689157820 336151583 504432723 148680713 451617152 469521348 481544955 310312021 773838744 546013697 780932276 560944773 599934205 748759185 787755482 821971354 841269634 688479023 906411712 130222517 190856967 374022683 391743458 444372622 580217417 644841993 893496228 632706607 797374380 647371619 844945908 756060206 841735114 929662461 941012362 37308101 370720244 610339833 716068672 151184663 690819433 711155030 813389054 750596048 955104670 550688101 935247340 260280501 315463039 381968019 544192510 154944279 604663556 285189960 394868059 265680948 883956388 332361134 443851748 3974075 194570529 707393349 911086108 737331184 758193343 933933096 984196150 908999192 937468436 951095328 988217094 460013752 656766351 872968916 948440404 303851875 864047231 913585007 989412259 200719876 872086101 352378806 540996155 401224612 734398959 703715819 817552302 467690671 874051743 828936658 837206594 678567597 976584354 871743063 977178668 545795356 747424027 172167055 823661266 462569370 467893002 911937452 952588331 749873190 750280915 184126064 444764288 513504152 877679482 732434344 840674954 612940087 934553988 318378423 475837478 375145228 921596110 243292052 760922580 840697986 916143044 171172064 360564175 235715681 884323336 905572788 953216548 641055977 965308999 529767491 850359241 888566580 932917701 863468035 968292519 182777723 201675641 702059221 843908347 549964328 612636043 119883427 686801095 6659018 594392949 55179117 372759067 18823218 623532582 2432381 97483359 985930267 986769261 874912066 887456887 18549918 783846832 194989224 792989888 105380370 154089539 795531812 878349875 741331462 917903117 993262985 994688860 575376238 772585641 477440449 520220218 985648506 994668179 560185390 815062867 762585877 779122827 265800811 661235728 481502398 507875059 983800628 998793554 901795993 966275572 96755150 363709002 512840938 708827201 210803894 652090370 648828253 657176702 83836068 85753880 20218834 418935976 636171743 762504382 519232186 921559608 194530316 209641114 963074455 983341760 620009317 867008308 650432019 882654858 198018900 966394186 93130467 307179270 43203355 181507245 459888547 784895263 308500739 457786678 729896173 997007453 480134280 828838127 732101338 749742342 212211026 567215287 302527148 597155677 422416528 884657169 820121719 942832467 105126852 835370477 601425247 801523482 252729542 964802400 20713794 546531590 677399191 757397902 10045607 286460780 809874243 830362001 364005283 878249776 153179263 437892097 810077906 997409449 525501236 604537079 243310046 441312726 903972992 981013762 265419323 785988402 773337670 872481939 658224663 986416367 482805352 745337705 548572580 980729217 923295703 944110786 599838118 643618975 593013746 847378277 557586013 871384732 304146958 883237848 873875180 953375020 214743966 715242807 834283999 886574085 301758634 675003822 379979908 748239404 232804313 619808742 393780410 780456010 318236493 382652460 561238085 582831839 45939893 675407540 921691631 942126338 889314059 987233742 485963499 940503191 64446395 352500975 857413936 950877992 358168588 840816013 962706515 971102454 954622028 957046201 337954766 968692146 518987520 809939730 161318508 580400598 17990948 898459558 323790234 832066879 225738994 958932649 444336478 501231567 849130658 892705157 216578514 353282475 289789331 891245343 440516685 969296027 232899422 370630454 83257894 142924842 749189074 844444709 432822786 662251118 440816530 822125689 170265400 263126300 11103539 690742284 550980460 847767282 645342322 798450713 832947999 851382152 469713535 513801720 281602573 317732273 201153973 297170934 693868017 919627482 677209959 732867846 958753749 989056040 63818684 842931077 774141549 875640358 438353218 487971327 818123719 929678687 590204039 867346962 128318675 578548667 183000323 268751141 56009221 181716228 187409263 253999535 772204530 952737654 672909154 751070652 67644915 495894276 6134992 865424522 608460245 827141479 197928229 398445586 158111640 547856564 135193689 148198933 261337124 563462639 754403869 764727274 289035027 685838880 305913316 575526618 577550397 700321191 180964040 694940572 570657990 824983929 134178152 292131425 870797429 989377406 939760930 949321982 673126977 995508445 986695007 994754473 722246415 960679605 840755934 942905994 675699574 920513716 60912773 442885833 601466882 843786502 790820426 838468206 796523149 869104489 382148057 790359711 978752799 980669529 724423725 868692072 681933699 826308524 534983576 712038904 426016589 814876164 94768017 773818884 177012489 599800098 987044936 993825329 602461014 688029274 88765927 494822153 467033733 532591373 338778909 973097483 620056734 866965395 817607761 985819556 377103511 690087446 212435656 352674513 213758818 748274520 635189131 641213379 259746551 718235825 508997188 550148273 944312772 981421132 655755131 909989635 711222493 810533228 833663304 833997474 233145434 590112175 882104183 903469411 326939149 632012857 130876282 818336525 737030774 824169644 957560294 995749932 958986361 969693917 118938929 972108862 729501980 923886973 795703808 933601070 539439487 656023208 49466209 577326088 582939205 735920866 59027461 787913421 692288174 960983479 401881835 667813230 255922040 948545460 442733684 946872857 189393938 224479368 965670959 996306811 881488285 902898538 889150042 916035869 320622142 335061273 244493800 366532608 955609294 985112654 918046039 951752829 762634652 892821700 169265628 844803119 259426718 656148759 273489818 891362592 699722959 823179789 301356281 546738587 237607343 386175670 244388830 468347702 777566535 903300948 773161540 814350895 842858336 949492117 42758847 826719994 148252976 358205225 420846280 837407715 56007074 836034595 690107841 918473972 239604244 667144111 632721385 897471509 652515680 856615619 814585453 857145500 232117095 666006199 896974069 990045136 571708228 631004772 913833237 984513777 3651566 279680746 427289945 428107669 205408622 923594606 639990594 640178520 380464940 466095766 56710768 65263261 409200730 434750448 90145201 235045562 397881179 955332271 16775806 119662919 574700429 857941837 517228468 787917220 56997777 291247062 446697484 897991200 627040736 657971076 746702795 966287813 488410384 545535862 867011936 943165884 60492085 406667293 482479770 647521926 947201194 960339922 474181097 875558262 895870514 941680147 231442316 807183210 766432791 971476118 99673396 435349573 838077430 942020172 301731565 358688282 705943418 858200025 44899800 565578319 941349209 942973464 621952590 964954448 656282196 825584084 232848234 342242436 595100659 814539735 428416800 993863924 845950153 919316554 211946950 686959294 918935517 997228227 847729458 907194130 574692167 761968484 948422599 982528314 985877652 992564107 871359580 976501105 856552216 908337517 681704906 783348792 476697641 863795376 82143604 330797785 173382931 769902583 958841711 996093044 747857014 962922405 75492152 243083858 195601624 414044014 343409019 377271211 372865803 735977011 68161265 139773266 846879994 852879220 715257367 743593762 329997476 706297437 52679908 771233012 760004526 804094531 414810818 853024152 730443217 783259201 192619733 963592843 931176434 965283884 934095620 946340500 660135934 778509060 862932225 949016703 945786680 958076118 448131614 889486462 93303098 497317350 929705844 974974920 6708493 555127692 367169782 813362419 595095709 691677492 690544298 822017167 213948049 660561037 907869018 910212640 127923637 203175100 338678159 802243513 729867136 908877718 917899419 928405178 148257774 818314328 953019465 978700175 483207357 483794290 578865786 795764075 261888657 362146757 533440024 835583832 148410154 316815350 260994046 594669412 277261088 319181472 418267451 640067331 871611380 949459818 574733528 793871935 460292160 844634630 323252199 825164297 356442064 881601762 810488069 961335211 503494717 547031071 469393943 784209760 357006129 460087287 326244430 894944349 316391697 463715013 61688512 387362264 893747938 989644988 501755026 730437953 493841 706803730 430634708 936520911 611161349 653472352 619698541 763413712 489867385 561242124 211566278 535960256 897242519 944262501 223658387 556425954 454350720 786813871 670973631 857743226 675050592 699189880 324290001 524352001 658056370 884462211 168790892 771342690 545410557 834885354 392799235 914363649 318077014 533573232 501216442 765794345 627462028 957317549 359175798 787569160 694792251 720597780 172928345 600486133 27144677 169723855 882505702 927170564 444604809 807618730 299909534 857775752 212372200 621137279 88600807 772572087 378163120 872839212 510068108 996933304 45532278 158946042 33164462 942757910 213196015 302875750 478809684 609479108 517864212 543599820 509316000 608685349 360462684 604414873 937669363 965100740 674041021 882784581 17358351 961538815 969255752 989850140 562849420 655208630 420512337 611361715 55194641 936325482 397611595 405472650 786211511 884164436 581465136 773307518 127288636 590875998 712471323 724678397 843946858 874799476 298577875 585637406 373371062 423127769 741252697 835404070 597122278 636784637 365197879 934242035 854183735 906198114 987352269 987357520 874625084 924656031 240132544 310185117 347553213 475756796 914920537 965350484 348298924 955860458 253527632 441170729 400396484 621849960 439029617 689875099 155827874 261552673 696499550 753677539 532093494 534424740 212049145 234497670 393744102 525360573 228620243 577128713 143242915 812763259 300276270 313714208 581991361 994783407 435736731 555247421 296635399 303615137 982348689 993234321 60898902 667545817 933358720 968447060 435540281 662594559 854926530 881444203 442517135 462202035 762636135 775433762 92412396 456923481 33889178 92514265 415152160 873012595 975343929 998459169 601867289 983151117 823521213 932371550 845562975 957778967 355582165 462750106 451055542 861181448 701142056 759671373 855284384 911582234 400714991 788129720 990183967 993200888 746071818 746750553 68133208 734269913 681094511 947701602 701688843 973866108 414356980 493726829 225084493 341962066 203943004 525230019 178492204 839855398 999976752 999986269 971579814 978731440 672237525 938093185 46853000 170960719 526692490 793784861 97847615 567994897 915178966 966407169 183863344 678392733 886148311 925034754 391082664 451945942 484138892 595815262 795754633 840137699 563971155 944815685 896584183 951114629 622647738 896832301 816363090 850658926 628304468 782160918 517075598 975356154 71247745 163690839 145889156 898895788 473006542 581875892 205175908 291415271 880299445 987638309 626839867 993113070 881523480 908862949 121453275 520862365 887711972 992230051 183126950 715983169 607405659 993158807 426994182 848235887 748277477 927083030 810901371 946264279 240853455 746796847 927944680 980956354 974291207 987773505 401121871 533113110 135458523 847352266 50583541 502590102 960215459 967505537 183067443 695641102 149052325 898672214 285544359 819152013 62800594 122995171 566772826 928532747 270150589 577755427 845226197 887676202 120364291 649021948 167436834 747165512 581266465 660655655 763735011 925192270 904364094 925528370 224739182 747010527 206837913 595262520 755795432 871925836 666939563 690740736 746983518 969616679 274402883 377663516 624359864 717405693 83228905 107816725 626700048 636028526 932109013 965617568 867435951 879279540 968822108 980312119 488140565 527494087 858642240 909930678 995898768 999372771 136222767 394745109 501272024 911716500 690149845 972179133 63816120 658857422 53788348 430543472 637885227 994738453 331173719 484453734 312562563 646546019 868165802 873064832 220723641 700576372 41822674 208072459 929930815 950797630 736708729 771543012 622148535 813393778 770526648 985416973 397745049 758113829 384238519 646782266 369647071 771744915 657620089 970627327 390149823 402676840 391405338 628556212 828704459 967607569 518002406 767975402 982496724 994054037 426203157 968856898 819541919 974098576 731646202 837065343 870902991 973942477 593581274 630704422 713027550 820566794 34594878 99656890 890931185 952260879 537647953 646782295 779321953 859616336 761111627 821474513 278580530 443129389 375122441 960749798 688836657 858646968 583684021 728074953 550835898 757368596 365279547 911429650 7212715 780309225 223033431 279239817 972781000 987255142 357224961 394128677 420938575 916959979 1201726 661003130 289019319 963343640 601057222 935493925 284576770 918141385 882271440 951526214 852764314 889056309 80522982 359400666 357259235 869550817 30799144 102157029 675709058 788404231 614225828 774319564 335975921 482615860 901210743 953204442 676461949 685505659 441771940 957155423 376904534 538044418 718316967 764267756 978228635 979633792 177706086 615941745 952875204 969509598 586583827 758006056 91955012 804077530 446549089 870468177 134338252 776457235 398139827 636561622 193516159 612279309 772376576 795769905 233195529 555953207 549293496 902380827 551630266 595805466 761257364 877817622 784202593 947974038 216388301 702691581 123046770 738187845 644549225 757449767 881088270 961959635 481201042 923979015 191385573 757496025 544616487 789453943 854426173 881622763 207409344 366201273 741172115 809661556 767186971 828970412 572874972 751632625 747211143 812352041 521165198 714340209 119833100 783599612 20982061 930160371 752125590 795325519 898564326 903657896 871749615 887043226 932801428 985068775 776030450 920754132 850790855 913221513 875849080 979343390 676451511 683357424 989186321 998823858 321774746 502035367 553794253 561970448 614484682 855889072 585201599 691458346 740436312 885392670 371510215 671879105 319981932 902387814 126743697 619147097 328917629 661467311 862964091 930710707 587626985 652608337 703258640 707544870 611817705 984397147 860259798 884251144 621009011 915074352 170784270 503501420 674472214 940027522 462794053 550849252 989064205 993853282 668893237 900372870 108796029 434464275 801588195 890705595 324138184 532263645 593803367 667135544 757412098 787463165 242975597 570950119 811539548 872663878 223925494 544536097 211910130 583609823 862407298 938323995 780880171 862024305 510889745 923083278 484312035 971040502 612040337 641554618 813851491 840134138 19749178 299601186 111965468 208652461 135416446 496199111 357645618 925517722 224731677 470272018 258423662 323987849 978462766 984200965 725711569 916746459 332198455 979912354 518739700 966786033 734942802 739487475 524517638 656847625 165134788 888157490 937516151 947594064 744753537 957337560 327881163 912275470 404037914 479226633 36390773 321888163 7220864 366303710 769860418 782626317 165866398 268295279 127916354 908693108 94280120 768492903 127872728 699312958 474314719 931527855 929929813 951117155 215947441 332447404 805836574 963708358 607351565 654831287 794166393 868870421 986475823 988320411 82680259 93426763 728980339 910523888 655463346 800209097 676981486 736798068 154168097 717890731 272523738 959208504 979162305 999458729 964819112 990363379 844837345 981912777 845524507 920005719 841635604 991081912 910112085 949670506 657218589 667446031 878092977 929446831 512435207 923550012 542877370 686652521 774354501 808304053 803863300 851798020 521217502 844740768 553086541 972671686 291828080 809270680 734827351 798206351 348153537 984624854 71218852 727985250 97406692 224598858 519252727 785127135 185918099 700907284 501771621 748550236 758734283 876380716 205527602 252460680 92536858 523923200 781612557 862111829 500673374 753874300 778389087 970755548 120893647 290445933 107140283 714623442 369955283 623170716 782294784 933507523 792718163 810621853 355663374 646725463 259998729 469755703 133771450 791166834 723893955 947617366 340655214 393284552 16121823 316019528 287954875 509530454 120015231 540432573 162641946 502959302 277856219 427096461 340759758 616406312 533724431 972817638 458385636 963441258 403696046 666922187 799975730 959507753 188740079 752401439 521730207 660492278 91235452 985444890 205453945 907140217 71995571 289162517 220040579 685121654 947905337 970540594 47332206 865551465 476265334 862077607 494054 288721644 565589762 894461856 834956632 938614814 332198356 501739321 978763458 993249518 844430524 932061457 30142343 172591717 406797164 833326463 491581038 712061742 561605701 829925131 979288715 997938647 486041382 509157724 564493622 746876187 684057594 833666974 732612349 754530993 691793120 794831404 308637873 517810225 685343366 728659891 325440189 886925597 193369507 527402859 484142970 509507788 681486881 925952172 20691605 41464174 268022965 791057929 710998892 951786731 915609287 964947270 951131533 956518579 521675624 971067634 379889153 633571192 84937205 758152203 519303551 918867967 441553150 471942968 483671138 712018141 874855742 922425800 516174826 844699347 377163505 425388239 747696074 839383460 400638149 476526589 195146608 544185336 922114281 938155721 408078718 580591129 486629268 901022577 503293973 618152050 83537539 626423139 595103792 895054968 919419138 983643451 802859971 999901325 764632180 832263591 471631585 560360565 793375278 892339883 763211035 895693551 347506952 572831366 91253087 545991625 298698415 939717972 547775768 899702128 877408111 982935428 421262244 715359886 879147423 978207075 596023916 683177813 491082314 876547305 193834574 534553950 878629313 940204416 590726605 982240194 913102925 919830209 848822962 895781841 401079934 878387988 937915189 975146481 221767337 883929740 149603845 422247968 190730189 604080219 359742878 798310912 759966901 956304005 131151443 591138266 354373622 654491701 377429420 950521351 416628164 750132245 900505107 955262701 411315760 530845334 274784226 391481182 222921351 435811952 658468687 799085341 13818747 570831873 354635409 604240286 200810053 401914104 377436349 746093664 899925722 947387480 758323731 918669144 146920471 578786829 861792466 959598832 184108546 257229690 559619529 917054111 982696042 994209477 473313220 970174934 272742159 456233848 377840309 482478852 703398874 998271667 769764895 778293907 728419079 894655116 16341400 519485372 24529678 773011186 648632419 816835404 317694640 638204277 45219214 317854432 65704512 494099203 770074831 917558161 342577678 545054928 795280349 847735214 81327074 624034449 676989022 706460375 845893650 847188758 423571808 829932116 530973520 928737020 290186176 299746562 955157896 978768666 197828332 543111585 950444428 989438902 526227035 745940911 187165222 526425663 168161221 865112517 103496261 418006774 803381483 935519182 757885786 970060029 449171549 719738401 348786148 541324021 20260394 666805868 958885416 996604431 23711829 385933133 727210541 896956199 893356391 985858485 559956162 589211571 905296416 931439943 340865653 755620409 711425765 915781934 669145112 914659363 576176257 677233611 297576240 344298157 89794703 621592970 927951194 946127323 739143806 900981735 253952094 307152363 212317439 573824861 4552545 708629479 502295735 685489927 636423753 770262681 355932219 697421807 167111861 997027899 309052940 993142875 752608534 990453539 554169824 885588943 10883985 331116922 806396872 834575626 505999413 548167686 609569288 690599793 322480976 632244999 242595216 643521471 687813461 877656510 841727417 933557098 274122310 768632407 58160528 827726559 821521760 967960173 426570609 736716838 710137449 997181750 329659220 742197160 713307864 766626628 743031579 904414054 404523580 433235303 955745678 996141588 181460512 477574571 617234411 628410563 515417501 527719625 35658277 791321009 734836773 819542183 308793700 450637635 65869968 881025599 238928239 513320298 975952940 998379727 570902397 721026710 689722314 946938586 772123795 958084442 687518786 948611168 817654921 865236955 181928160 189888725 683529441 825538405 15730182 97061581 296654972 450314808 275752526 441028803 381855014 821506493 737211687 777829222 361746475 451746022 641047257 908710589 421586966 771811017 526573400 844060363 580451801 823081812 396891516 787624791 750278240 996806176 654877013 972409203 670602710 694642194 373889866 393972403 893758807 963590681 86863714 199822630 559259123 806094277 510411046 588827322 147438688 461449667 546967486 933674118 736598333 779786189 751583788 865677218 673462509 763199881 939427498 993685171 936923965 961210855 990286443 993955214 979677425 991814282 601582954 814908697 419637733 657594865 416810729 564960230 223763325 837748238 272106930 867823009 921263153 929691418 938900357 971946270 203058581 362822404 113135123 432348142 640691926 667848430 237234364 957578013 425784492 696069931 218339735 467314738 858632803 871803044 899281847 979212200 593416679 754500042 410217024 653316336 527898233 980605116 250042110 931519584 116245836 762552330 535693405 828219394 312070463 947169816 767863998 869932698 665947712 745219211 459286668 562138483 841434285 842719529 326329258 798939022 18153690 814407511 201106124 871954155 992257991 996968209 421376495 558307508 868204509 923831120 956735817 980482402 658876699 887712841 789293610 822448024 13791384 663057168 928480196 983612665 38989425 984184061 373842217 972879048 546258316 828421924 439097294 881226089 928228091 998541359 708489242 718655177 631889305 952411870 702770335 983765617 626348989 693813505 329357153 880836665 525449534 727113762 776156864 891766334 353649005 483329466 524257770 813300299 295772238 988542549 706133922 794059132 488228167 812690633 40797417 314062651 354012092 733857443 9216896 126129307 263952666 865444834 170297360 331160531 650715853 722242550 277844295 831421418 183258092 868012692 218831841 998739057 477501724 709600128 737118390 790175756 342312286 670638501 348726966 602382252 784527663 896477197 392909862 855372816 388571978 857929149 813580134 869483527 806285950 855900885 142097071 484323820 757192210 912052015 425461688 552597746 870275138 903633539 766108455 918420906 839981580 964403281 926367646 965501137 606225204 811641133 301328636 873163644 837952218 901964761 240096378 539121136 997349487 998475411 665848456 934772492 419754504 637964344 767930095 797986372 315801713 697348950 997874868 999466727 816009795 838235614 820432934 929287409 737858334 757865420 66478579 386276730 442353176 705289543 601340800 901185605 682348648 901277032 501506840 957786500 563713803 736258987 201189801 708077966 10904093 805423298 993796615 996566115 388177474 867076632 307724387 612151595 708322069 841965217 444266791 797359860 976392469 991060086 816852471 999974139 88841448 590443588 477493538 896314525 212407769 645187218 291490185 382080898 896635405 954517585 547930076 812265309 125727490 513523832 814228884 933537621 926706045 950711860 775952938 894190857 480437905 503572781 453021014 506644423 344397463 847378367 706001652 744915989 190236723 210300790 948578802 962266208 755844712 909520705 27297114 384845836 799558287 975914063 955738119 969591730 415657739 842855122 807507174 829243427 261688557 595875201 138423600 929157231 758237827 819925120 614599203 781828058 21462974 566295091 331507669 521820036 653735434 915881867 607218957 847972550 836938271 989804868 600489749 812975748 114143832 190686960 825321691 984052140 573957362 892775669 270949368 580824406 782261630 817961592 924782295 927869931 554051307 623066192 243834589 748342635 549900567 560210345 840140422 945315610 306613472 491478883 543834363 853156279 142834922 918138300 190469263 932682892 633040283 670937463 831707633 869132483 497120688 570866172 102654114 324432146 968176552 971565146 328320006 967410464 855598639 985507207 63698288 701581197 891639506 991203844 473687315 850877751 478482910 521625413 388148281 579738790 833995154 846289258 480927597 816471277 495859589 682475817 550864324 884179001 791290359 848715732 115025116 353914047 105289210 142840079 727007394 992608510 925208157 942037980 241456621 645837805 965790669 990250958 410048477 747851973 535370984 864251498 573105954 918481251 827314698 987582258 296485627 823813745 159788753 501968666 296173442 762307206 623205125 761590931 293996788 839078849 840724709 858153969 497968097 756818036 774732005 823940620 291604442 587152559 416819291 976398714 258182764 792691974 385858680 933264228 831253813 958443923 568721908 983536084 282480180 618951248 189871040 488648856 396532158 867508002 278518650 945078423 9166578 275346238 973580544 974302678 768104650 841608186 358722890 742289406 919221021 999405724 815746295 980220304 179696730 352599228 371124410 739664454 468159381 880758653 434901773 576777414 571514863 817660392 886562496 940157160 236245413 477368631 435520491 533860864 137057492 680272474 122585077 916078164 566135836 864388105 615017679 857407998 535780009 549500919 369341494 868079604 867846218 981167270 529117820 970728037 200360085 871095368 302184139 678542425 98816070 179145527 577840233 995834883 155112974 544165623 953094448 983703263 199856116 431801392 67034781 601864996 27479794 662810240 882732463 937925967 918186629 923271608 842726757 872408230 258746865 546181919 158847735 679899239 360477365 484946049 294905203 522445403 443574692 505887688 492438252 946315665 55874 709491661 710344360 914644057 687474731 932215554 74899752 321676470 452859700 542892286 784826050 808373046 41390258 667615987 879751825 886687698 76510562 244273057 533450601 701619463 384328631 991994891 148357553 552968659 282364817 457053869 705502890 960113656 364911042 937065015 93382386 236310336 172688335 544711505 422732175 686317278 82834257 185923672 673300410 843871952 805633225 981160964 211806445 452481229 29195186 265689770 804815932 863025301 641844776 702128662 125047509 858541080 477597514 934960524 116318539 543636740 317948334 936432970 723690180 916995694 42559455 820844399 365645758 693568490 112489681 362605089 275689821 799146449 930354435 932220692 826063497 839400685 740316186 817439591 640218858 807135820 976066392 998406866 37947286 124889836 851920822 952060816 617266162 994999283 283819059 357092492 121701934 881026798 358161246 511729255 882217245 918946989 202097703 692537493 458315966 499437812 720889469 734308665 832472806 899860836 11045364 463328876 66788762 208799195 622542679 716330510 997783409 999209700 903803673 953839602 35586500 964342996 33539364 161339136 206111533 684126962 898104047 919023636 619632004 624638021 825320742 966295898 396579402 988387814 701003012 822451223 652523231 931658304 43361822 749188065 266256303 477680021 49658822 324559745 229216050 820990688 175744350 397529015 606166227 801761496 265664807 507418335 255894020 462958628 747167987 989334033 863370413 964247838 656003227 985021246 224607629 428677421 987231939 988067194 966892024 974682836 842363007 960684158 300113825 977880490 198567135 325236657 536656417 777774804 585264135 842071217 228309613 807755410 342281886 721280752 84887074 634066919 83794769 113167412 861215576 963268924 590418954 739265073 480963985 487946102 946650766 995177844 591660376 774830261 407661001 851723946 516927909 877692375 861647957 946250585 67099238 223628703 875501083 910065872 171899084 633198958 464886928 530906093 890841841 895479734 978570613 979122378 25890051 734728678 942952494 959512262 725954506 988298050 265826652 538070147 2735660 9184659 420033860 635761127 246866907 661690739 500750862 656360713 425939579 985123183 718743945 840774958 575376718 754003199 583144131 856371429 527843583 538578559 633438073 717322120 385569233 533282929 964380950 989801307 803077636 981037049 42961566 705208189 361273130 470674129 543676306 765865135 367615660 984672648 98673649 739049303 523629879 920530115 124036346 195431506 714784052 753001653 703214004 853507839 106966151 244202407 658085472 794892356 595657097 734488256 659887762 687027993 498507478 839294246 806401017 938847348 607610500 679185047 498506059 528366211 621723564 956637165 239384971 470641277 400647342 467096831 861403097 898175050 613738233 957354294 130785776 765501470 379734004 938123825 503800409 868356655 140936496 232462784 235022422 291090249 483426914 598353056 263755518 521915923 974044798 995004374 32476457 526478827 114504770 981103371 749944585 833472995 703238106 952905174 706709124 748115627 939027857 957869647 40327054 567163714 85492164 656396892 423094023 688285741 350177506 415050969 142469394 784249610 329972608 957832133 966283186 991998121 521231387 872271951 557018784 704249563 325071026 741065031 991905569 994797061 137491787 239316783 843284475 874074149 311904051 481329941 865514049 880895409 52295710 148329031 390299262 512084230 523625445 528509088 198673336 292621069 982098170 988584371 278601198 732124429 345063832 697833003 606277368 800078253 557919131 827585347 127492852 981698903 150193110 557525744 205695968 739072209 823874833 884426757 276534068 843741336 258066997 304614213 690250908 939530576 51297321 829450353 866738602 889298938 498934934 810870107 876044054 896563765 433641106 824730715 62165579 305638939 226548835 264443498 70016202 349167176 9490154 60136143 10597904 992640352 454868289 826110090 77511395 873397318 877108114 952555610 701709182 876902924 329760145 413909304 666869330 929809025 364280722 686237519 207880342 529805100 64955224 204856066 617847885 943351100 436177055 839571767 41973879 733977502 498700974 895184825 442257951 986113088 61301595 265306760 842597383 984241002 956009567 992425554 399512116 769823740 694585822 937070525 609835995 773982624 16216039 439210259 554072274 820748067 778057314 952433435 41578282 485621312 935236203 944989623 608092973 759339300 552842082 713164689 552197954 625451780 837422838 900119681 542717377 680934287 855045165 968601044 960291605 986960465 124139656 242615076 940880467 994293405 902405442 963454191 286520683 751904808 416074983 503749128 22933827 157009849 201432193 749015332 60827776 796109938 255572143 549005532 270412407 633913016 562455526 911335848 83334181 295199567 428046469 490127557 713243703 960072673 781063736 892280178 451937395 805021725 728901677 801386010 926748312 997463146 66501514 609165315 373340457 760918165 219965431 700808568 754009596 891882807 333887034 611319753 626491189 734102891 23083519 903598453 841344239 878583482 763776972 900327582 773925980 978085114 465969696 815101519 213768419 519312412 966167008 972098563 825926532 916265537 759419720 970505374 809682492 960662403 155116168 876620293 128147177 261743505 509839091 760030083 706992784 990368517 616520628 943786603 710195412 756450823 497152688 588706605 780963511 784800413 542335043 557520018 133331204 634690382 345000823 465296482 413534731 896338038 213648542 637598082 654654182 850999182 506415801 978522543 294245985 958281509 319355985 355441905 768043654 933729183 780502469 922999112 569559161 901609331 306686102 620540190 533712091 918126538 806278450 994329592 431885614 726976265 830309960 975631498 110267453 578473663 810940017 893127218 304659917 611727088 303525737 723348767 639910551 662477843 304803575 901402562 582773523 927997302 389132131 944051323 653644757 831574953 583750720 695774389 379134257 398905156 941328284 996130557 659586987 863478843 236234236 351264548 969506430 999019326 996957497 998217003 316523480 376375203 674317411 849390771 161764328 684246311 971982805 981182295 845384503 952430615 814664398 999384060 639522959 880135093 590451791 635222972 232683262 269026505 885983770 909110241 394597715 707003365 426470895 655251358 835282609 865380375 97651906 226389793 609688083 960189547 837615477 862504985 420731875 600301554 590425448 974354489 71416915 140641337 960665818 976663798 125683596 165577567 456855653 695231417 573283861 912188588 498437653 775822453 337246278 341404458 877073510 943707006 213375102 881103014 174461597 434639120 5944865 590268963 51837077 304042884 32514908 441942152 909440569 917088025 968178587 973622481 815342663 990524656 179077921 519139930 317688671 975051066 337467719 849131461 111215407 148996671 310930030 802627913 480664895 518176946 813601257 832794992 587537042 802833226 476795577 797784690 352608858 657212766 517672886 836348108 804702310 968030663 190188964 473348223 338850503 799924107 905964132 961352685 828268093 986017475 615062134 685161546 258873975 379815665 729446042 953858620 626554588 831219057 411141030 416809587 740933637 770945993 185426843 656625411 147364681 240351611 60490663 802376432 731747466 801593110 353689094 821715751 227756776 568746222 877067942 921978596 235663763 259144774 664464892 752507752 93498926 574687883 735841798 933607004 744191453 934368957 720103043 794678370 781348899 914875370 114964537 653031058 982191002 999848068 378407727 787183523 644206815 702670070 440486040 678146146 802539120 848866829 441290696 476031672 145686306 296693282 352867654 747580549 903637980 945746986 878755939 896164928 575846492 707028756 428083296 599719333 878098660 935051639 74607277 940798845 939354339 941749460 659113771 764388682 710100454 949659325 477146419 569767071 919606867 940347846 370974647 529529062 91175145 178449814 611358041 763195808 295858600 698123210 251070705 421138289 962380433 982602656 206325387 468351179 682292435 986267930 832822922 986616652 686651297 772593354 114425035 204262219 875761588 888733584 696586018 817132616 15023992 965689144 194722612 217914779 325223038 811420453 785455843 816400153 996388516 998877623 250276731 908629725 157580772 969786716 409450060 906296966 101189613 388605952 496090391 919457521 837699017 980844316 291990093 845215644 971519924 971816073 812993864 970311381 666983682 727378467 849719140 925064488 817544174 972371543 427218110 620586254 971880061 978577458 699726081 939879269 212711 369346308 616978091 768485462 268075649 996364347 485278114 739838679 375432322 653637060 776199965 874664278 73966700 340525030 322567209 529584251 392967050 991850417 993983608 994735263 422658018 628598521 620277181 761909724 303560988 857580213 553176957 676759960 347874895 454133303 556443491 880867849 42598263 655051773 305223070 918258991 858576493 985048075 967928276 980151890 595528283 891412900 820863179 933799854 626677765 698039712 379275135 936731537 212752966 841241371 787607681 834517021 653086231 834268755 657219179 772537026 168866974 412673890 764404889 969235440 119208945 310058615 823294235 923114239 131778229 976368176 123629569 476321481 173101176 190230092 129750425 359984771 124019254 768036273 134118137 285417654 533606666 729263549 575183516 974618593 866726697 944754713 980895770 985769175 829023023 989707468 367004304 766378962 388989613 967597069 312301658 713747673 935476783 950066525 32281412 900612783 610641630 819691611 123667105 208618734 512370435 523674587 252710619 445826183 586443470 757185934 29335294 515217595 699734386 743334488 338501159 399639042 389229298 517783550 746489388 990713654 7822761 455311415 178853720 865303884 571360802 883941797 506506846 871060126 747529068 961463786 264940511 659316944 872861445 885058886 24684258 192827806 71792275 515925704 583188584 956513722 333371806 990550918 941656402 981512328 797736246 981802220 114090286 384237389 276229622 959520008 853050966 963312161 677790987 963232351 794511105 892928542 670048385 840350533 566236491 697605383 439030861 785387538 243525003 731803454 746966749 937421064 630717480 643265277 973300278 978219763 983740996 993691404 410266347 697172872 783381020 931463925 419080881 704381631 20723865 938531323 758493789 919755490 675583580 809757058 829161095 856626202 868148433 953352962 534318876 840411069 885821745 903240772 383216452 642475681 261793682 635688963 59164107 249906660 78572907 599422239 342687899 762893748 769077259 856207926 821266050 863290909 629301461 721837483 564686113 661182906 859451731 887372091 348124020 911764925 219153120 801019632 856006177 955449387 704715801 811553840 227065549 261488525 772616751 875476913 555375819 838482763 696922765 872871950 761920055 773321354 177934453 961928507 234849554 989693509 584434214 924260629 742800985 855048420 652241079 853661209 276235661 653603839 269825126 330403387 168534218 955295735 823277210 854628895 884160900 982007606 933752687 989002839 320938307 895611079 112048410 617033716 506664411 963730268 413877742 668879653 898002308 946262200 210240131 339378096 154520616 402884810 794986360 898161522 186445569 677717165 13134663 189070708 437906052 683685935 302196885 324905097 363448112 717029865 796643387 821311306 566210149 743157142 598058028 613809042 631826165 930943640 104886138 300182919 536192940 894961126 313892656 683290936 32565245 328266060 918544561 957094861 860765539 984624886 380011221 728476010 682030923 955408064 766296036 879380021 670716555 971490847 716207986 890484744 171982562 236801446 890646094 939898631 849675943 935709014 314185655 644803742 175513929 515085922 188526108 389982926 456007867 678173093 680881568 793877381 451951184 789854066 842606984 981963225 197035391 715265685 227620132 659018276 274922912 917778129 344356055 872879368 205990715 504309968 121364482 596183031 258719185 952043878 525059459 577687811 141415056 952200553 420116964 526736039 718980299 941694315 919381699 967859584 649993398 836066026 836788210 863536054 50322592 875513222 146566899 926956142 294475444 794180477 435227774 547617457 604014768 660455362 678016666 681142386 598488414 984994693 464782366 583512673 722816783 881262890 920849154 994691316 781151813 945629983 510426370 718103928 102260671 976082345 205112900 447155292 508387141 923637534 72170482 345477332 739898101 967183689 933939167 990952382 454972529 833525325 255246207 800879841 433275785 859915540 368761896 527270821 762304751 832250516 697753040 775589475 51851197 831568938 314102523 386340111 90716964 880084869 858779123 968589944 780805092 868533730 868976988 951678277 135336985 963339911 696380559 906781449 951587350 996391169 903963297 927669108 67329038 769999216 750742526 789894719 437651766 474258900 432661667 482570673 614240594 987050391 538327298 908976437 28369807 770675829 740372453 903943454 888382545 913210307 551568214 743766454 877612102 884389880 570694425 829828312 325762390 725601856 414292984 499445696 368383993 995222134 263596680 519131442 397949 919109188 884200303 991592033 911668385 962239996 742919164 831812413 891129855 895789523 256977431 558876503 381448252 985294290 462635436 493599984 954389980 958699273 182359970 936245152 669447652 778077027 161898733 477610056 47668496 923945791 329181184 547981951 804537772 988330773 173037994 512230456 72678688 149370026 568098738 900599815 970198485 983968440 161305119 264577901 47695594 665083789 901765133 951700362 862607230 984056491 843172596 999581417 651623813 751829472 852724969 995449304 368718849 733602374 440329947 903402585 157616873 175581004 320837112 556211935 860440977 965113974 818869567 962645643 393697336 613750903 803243329 882595458 638202226 965660518 809346215 990483443 207312608 602585157 195172567 275238771 333945920 751987128 504587255 812678196 931868396 994942856 410566715 717193657 849131066 967540331 450877146 757346820 435576872 705507486 641437287 696118124 552986161 554411296 655888132 867702756 161058306 457519994 890203391 917256584 384177082 551491242 132779084 829800086 178226027 726441041 963389718 975273997 420198644 881932887 382572774 438250902 12228562 921287184 309138821 410814899 441676731 918674572 100935841 746818553 709544451 863187349 1827654 362023321 463573355 934226996 248345106 378499221 144254137 643839986 994351324 999291843 850414109 899285877 489260022 573165897 513372621 600698503 426734690 834472427 233071062 396322006 348583483 565971902 456176836 664299865 836565916 845826266 515663279 653084805 314689293 546171496 476967281 943421819 643636913 692510277 448747762 516958247 608054524 907787431 781919243 904706958 522550460 616265896 377085746 487343827 406842599 587789300 701238512 955167216 704787075 783980967 972035803 994458190 513031699 993672932 71127747 904285121 435264312 568986851 848261142 908276280 726317807 992627489 654256522 859830434 590115447 678545416 238450057 455415661 576727924 932920668 14071171 141383515 383911090 850746355 272345533 331218091 760866411 792870676 831529644 921036030 26739662 290965219 102082797 144186315 860817292 877367818 82165868 290020351 134544402 858139344 369765350 747229849 736037390 923420745 862673247 898024142 642777115 692577046 910325709 978449639 44894918 925213943 722036253 855151038 499374892 899962780 740880767 912960941 160835128 392262394 984351382 993054742 70690450 558816977 906186753 995468127 471603380 696393291 312194072 858646317 488017268 711307651 810797644 832028891 506900484 559438105 825041795 841783750 53452742 122418548 125887976 308977463 688450673 726475551 894094432 973978403 662389246 674749009 711309780 997821169 130336690 837172869 823579139 925484563 229828876 787821457 562984954 790805726 134493322 409230615 219487404 570071224 308952608 977946385 700885757 713053160 342903577 689246847 676739691 679519808 694282157 837891718 896169119 954907838 157253542 899409940 852057268 869335322 333534282 466371852 112599663 390615794 217515329 961230096 170593621 615095430 111906412 261271646 653797753 904859019 791627317 816492219 972168249 985919120 999728365 999759568 536141286 537671817 762682995 775435289 311393775 621563185 655176760 661526470 18137507 362044775 421713806 459161152 849501331 862395675 809790064 975973083 210639167 473211018 583564989 768198244 338114321 364850259 2563642 136522034 636671536 846861007 632711089 723134852 973849207 999320314 973250349 997639711 29727381 697185525 499622058 874099657 199052931 658223736 701590047 879140950 370284841 692652947 463989068 946388911 529366493 764158620 425443230 666977676 766662425 975529983 848116798 997275608 353683570 664689932 588356921 976159116 218887121 385240088 405574338 458306653 868109722 945149632 251794056 587552008 13836208 380862440 537867208 830786818 636256062 912871878 215388898 597262462 566415594 616181555 912429537 958240178 785003722 923895270 389312010 854558021 294710246 829253247 286006803 736817514 48881159 835147965 649086815 860789678 223502393 539515200 248570003 321747297 747978090 917063064 888609071 898238914 186829089 931229307 968292824 985852766 62474202 516320978 950218430 958986735 469452079 624966225 445968168 805769924 160714191 920778231 480941579 574242798 758025421 908661410 578089379 625522400 604893509 831176086 169584350 971371805 684346050 805099120 384239581 493633824 50443175 719053429 480346489 485407160 181498527 677251012 396266751 497551586 891449013 907236944 650382058 656368351 561979771 651892061 488340561 584080907 828802622 952567867 274654774 295143773 933375763 953738317 105485016 182173966 423842327 701824030 603081893 739203325 262169336 653081755 820507990 928511739 951648497 997374814 839261857 960294139 161172670 957693620 500173525 976518635 386656859 756319991 564430712 664813294 825389988 892344342 355506718 732480939 907407850 997985376 423829123 804253658 37481974 770566406 728701886 794077328 669930757 732704797 174485772 289552051 167062139 232971938 679204550 719499933 369082650 390345291 727330226 843628849 944436452 948126840 115916859 429762256 557902463 897491435 552512463 702208585 968320656 971466328 130252271 898884580 216927416 360245907 142139060 313984720 568783650 606796588 712977698 914494047 206006345 899103317 495381769 754274497 952707167 959939346 858803838 946714024 211954244 906884658 69975410 814290677 35748778 904974560 103240329 295898270 962031106 982491620 311284973 727986829 340460498 403232879 736586213 819058177 619721716 947212934 582590642 775427639 264969360 780853039 641880472 768407648 839851197 979638384 49107693 935516263 957254767 984900525 410975617 562632276 601947223 740946784 352888550 884156012 371981782 780618252 31445999 944960065 638052830 889780868 446038717 995676444 597066094 785877080 377574395 391764973 393689540 897871420 117647334 446678465 537607783 760016795 9682295 62900269 920971319 946112303 149162108 614030941 949388167 977529534 145892547 278089093 907514850 954836215 398002891 826807978 839488760 866355782 692100090 740657625 985138142 986438390 511905176 740277410 524651311 913407394 945198748 981839872 607297717 907280724 874720732 987882318 585048270 763915901 312599607 982722781 580116448 757688189 639415294 973139179 626347725 881546638 82053381 217449519 303626152 664100165 936827151 990561768 160382966 755671275 565584655 606964364 112226123 424201766 960956400 973047841 274149204 882316367 897026339 925606235 291691428 903547349 620731576 889162798 27123430 496645213 798206783 902771996 647420345 961082305 294120041 382278772 414809176 999040866 89724643 163642003 261953033 677682909 522080657 960231222 163099329 324799251 648803000 826528298 211033773 410736647 977794722 996191069 372905870 625785681 173881222 914342710 716351667 814606239 983203306 984281130 2947858 619025756 88775784 753680766 993563953 994478259 16391219 297860738 873129902 938214821 927068696 964221521 677050425 782412003 383831052 516935665 435018116 800738503 693733319 823780907 83581357 221276326 236356797 984119150 514661363 959090698 838526697 902053352 139139883 430936134 642427197 922864020 343940798 798215608 154159417 561815725 14659237 369222006 976780611 991356751 525587212 983797230 147211221 254296085 306567892 356752945 270830175 917271706 638170704 655329305 764294609 840564368 950128834 989152647 498283074 989990122 13257608 327859418 280319571 590504194 112273723 710660924 190449556 897284154 457170739 575208841 128744143 778267110 796938992 996610285 532925504 922915262 626237171 805125373 88541106 847344356 614694136 928483812 232985334 961941875 839883973 915419531 279484217 840610358 701944862 866382143 545864521 681172074 578575415 772063220 400713768 804903397 643894141 949676608 575275336 848923123 762224773 930466199 26539325 809864959 42026065 853580503 620278890 807439492 956153552 958336838 772864608 954711482 442831496 486139386 955849411 968553519 968295624 989413043 904505527 907836421 654126709 699266798 60662442 332441232 630099865 828520610 628915819 844367728 995015356 998123479 127119443 554409190 858956937 900022216 334384858 921451108 315913583 807243998 601056817 967985265 317285833 439170804 514877823 874209647 381669842 449826723 258181908 728017429 436173644 999967043 293869731 612133818 277951301 558966516 366018762 435947542 857817370 877285022 528388190 902076929 300269399 529952197 673927219 801800726 204824505 311003550 213095570 681721891 440112606 554842120 288183555 465249561 818209565 821724982 662979714 803269805 425827899 969933949 202299670 734530600 636650260 730421297 797978747 977022947 84028804 664205070 854609011 930480431 400705642 803971779 960689937 967174972 537242994 842151980 81503000 282527132 456793761 488697960 19708125 831325678 638531750 983070048 271147133 610410889 119969708 804113127 53212640 114599398 258375404 920803188 243635959 491771886 130091166 786682657 33580869 373826990 600292519 764996448 43069183 900482921 582560670 924576304 673571992 939359952 284595368 472756034 869456220 971287760 608130027 869685295 651609254 666451685 230704388 680121500 734136276 787456751 326659617 491545855 29907022 103090378 709918584 777978745 957896117 971388329 989585049 995856274 886510686 982620442 801763846 828538309 30144455 598226397 333736014 618826246 685169994 697370552 380600003 990096919 389524757 700963874 528426159 979673085 822570494 893326368 65193128 594251526 949013930 979823819 696901178 911267630 80446608 765134204 852788255 935589311 285151929 443277616 566558573 807435732 684460094 731562584 585834491 991218911 476906780 661286970 853335010 966018879 412418455 698804357 473395755 985933099 918469711 969288119 699933235 894504017 143664627 853167746 726513197 847368281 41378209 730922937 268250954 519525045 497131152 688134050 144189331 227477789 546359684 858129696 976019031 993750452 428331345 428935685 149582997 615884635 752685279 824010347 331522064 513577452 83489732 529336192 762737215 818613051 735733620 860298553 119894160 151546699 232359329 329256203 811449144 970920981 132092845 393206820 890851358 994512108 318282861 966411089 523229979 856452953 616550277 973276293 402840811 956904949 703236198 840628229 487919340 869327413 90101628 460527291 887474065 929908841 246571346 618262753 360577698 413644314 564009444 754596795 670767421 915313660 930480449 971107479 702678179 894500596 133247906 868651614 392922963 562091195 274343340 565048174 566759586 764954701 422583689 876228745 847578122 848760461 322867680 875612398 778880241 995370991 91228193 127368597 11528011 290999427 654612867 654989433 508685703 675888183 817031547 979618555 600877835 921251765 51412958 375162462 247227701 504513489 275444890 457435170 300192892 716665838 512843786 943360890 257868200 886936676 540478438 851909339 700152080 862945652 534849485 907547904 981822898 984898067 655806769 818271282 504053286 904453021 603230370 953143516 231392190 540374016 134911325 486588488 112578659 868315311 248016860 660656366 570643028 934721308 824773872 871295132 980190194 993315004 529420196 890561124 984546892 986724181 64658702 910111318 418775659 695782782 82044532 965926897 540441467 852367960 357751290 878499749 9402602 848387971 466559531 744046370 721285968 840597276 724120551 927940978 862801548 970834166 200139572 854517968 558430714 810966436 290143346 642226714 501211007 984717476 776538945 946771962 181302280 637860603 203836052 643195652 480836204 714064176 152107681 749884415 715090046 836945527 277778741 576669099 738148732 940879461 496590181 627562405 600003244 983303516 34900933 51977969 806034682 950775812 326707973 500477441 515876664 999343576 765130015 933137420 18242884 815691020 397498322 869890489 128151813 256669669 643366282 735537945 192352557 237081442 938273907 940712881 473655438 913402498 808395159 987366256 180305951 389142892 548121030 777404346 104301375 801920277 955376827 965158528 431026812 564473642 61612697 988138075 665338549 741058375 695815823 793857501 310249359 821205819 369661994 827746353 492583247 599079846 833282815 875303968 318919641 475873220 650540645 897390058 232171250 757344025 41941127 808305979 815131675 839673485 811127429 954293879 14530372 304030911 328237426 730646761 559460722 877846240 436369917 661729617 691649509 866465931 37088479 456303490 14496368 936820046 799248267 854853039 54996361 296100286 424511505 478045697 409405641 451587008 887304710 999653708 25622814 320676271 343187183 455112301 765335124 929980384 260699924 664310958 259462093 330811289 999668237 999669580 581735437 826633201 631647383 942769806 478129938 607959247 96702944 153323034 270720956 979592784 660107770 768297910 718841844 862934435 246658063 983261017 193044658 386958171 448042465 990956331 283113383 592134330 78525128 609795458 594607742 775660642 152174307 757781249 142006061 980499051 649673353 799689733 260374938 317756390 113409045 656724784 81080874 365846963 182841442 842110086 606227606 850071177 391067492 435275279 615572978 907070624 714690856 811798126 616207446 719693817 152245362 615301602 312902514 869883619 331649497 473634568 584876397 731263602 138737646 570626891 260525012 777311190 55800390 879766123 916739159 982933336 88775909 620043397 36543843 473546861 204544899 998862765 503684441 622813643 155439084 791815408 881353296 915134905 561717037 640486354 283094298 659270030 287276440 460466695 939251550 982577034 329210837 603534158 664524835 995930474 386506284 704727912 419333943 839572455 309229187 697089448 422685767 993093781 503744146 610373481 768731291 959460980 722649903 927085999 270746075 554726382 741450085 790813105 144677900 167510542 345038517 827859041 383938017 932199181 850342367 869889587 33208872 529694791 497634372 529287130 75454520 921609974 411431508 519747722 558818611 630928870 889269580 892983832 629895593 898984235 434363128 987104871 13020498 350010865 527318119 726128240 554971909 720909579 554579607 809377557 346071549 486593165 653177017 737773923 379020173 773100934 764288558 796462887 626881092 745993916 814909949 954947194 490157723 640177137 176045174 366278306 46466687 786733930 645099983 931433956 60718635 870947022 738731133 819786589 987772847 992534749 437183827 771297175 913246534 959078918 601391954 605167742 656940477 716833021 671873497 738379028 698563314 755776706 277651853 851013177 363324915 485290555 755506682 959028896 791125214 948537593 118624542 608971156 264967067 606546039 333826883 595139400 529747473 856506321 908879937 986056040 605297350 990326805 94823136 989793733 978126916 984886226 956681801 985983803 696845480 759987085 798546621 909115490 936863789 988732193 521944345 936668690 587864652 974316322 117263710 832181394 535384071 686980490 387021444 833046591 12221329 984060024 729351676 937588154 336779565 394743372 558198115 697363757 673832952 862696932 555091231 975693747 453183308 624966013 104131116 122272040 801014580 982281983 850489940 880298276 595827994 774935152 240411165 908282264 260341906 292931871 588595390 746111893 7425633 287635587 54243847 322909755 874504068 986296164 520954745 922453758 309087371 891212386 562306742 855031022 404942066 817780580 106287691 369246455 153872164 436496901 750843553 796779177 805332316 902508113 12155604 216794902 600085286 642017942 926160508 957903334 543907152 868186442 425357502 798715057 25926421 152591934 254933757 970209779 467808784 785135360 106198629 566355699 227405351 279911977 973691073 982383723 119480739 746722402 275927101 632881834 350879464 903607902 472320574 505671305 500774965 986130585 24567966 863672806 151930005 232444526 710643943 871692261 84901496 830348161 666492356 910856127 608314261 678290080 128731458 424895192 860458078 961800384 529066288 936704742 482989211 664704147 97682902 657901359 781230286 864482267 918314459 964915142 634796810 940418502 976286060 992739825 537513261 734815556 131351619 877518704 740636334 831375228 226340981 270267501 896153801 945740647 172433945 573355519 46995313 830177607 343815498 683571620 576031295 853647460 929724296 959261453 504841976 770861501 496884463 573674148 995609299 997701565 634073676 957253920 737609177 973990465 427101424 786575907 363904825 922536045 631979590 747904055 977434188 982219137 673969061 803254841 513600925 818050284 512132179 887918257 397557418 911232541 347859017 698302782 533319819 611428009 665096937 692299019 114180295 759109487 274466855 535493243 879769614 918461113 794750908 866914080 337081338 968047694 485661143 838338250 122281767 998552972 738886484 896328286 281180315 314564071 177148278 260634851 709097219 899910701 428649391 587126320 896155755 920372764 440477799 632536262 808824582 816120853 747152768 887446953 152152215 436496409 2171869 468732871 776618047 836918741 155812053 626755683 203691745 887831000 826779743 991499916 273106610 630439937 755481901 821189866 274388436 531312554 682702185 968801294 963922538 974885667 817912076 952461088 597987968 910018280 56669411 877518603 878147826 905338820 588534094 654661998 903889525 966118029 796971465 941948483 759903195 984974321 365288385 814835507 897256395 926401173 772920031 979856705 533247234 998321571 221785745 257273784 49120557 659035025 891188288 976904478 78603123 366107902 43585987 468835255 216916896 582148220 558353545 573552818 900526132 909403113 343986665 349969420 529281814 632017045 674469674 885166790 592516597 950551995 756572768 866404960 451594982 772006153 308447777 845636526 544005235 653932555 976638627 981901508 269493939 595516342 334657636 540874972 182451544 549002825 968472137 990954890 123643793 213212721 520395911 728168114 65094796 441129859 812730460 849290276 518239154 860594176 29600955 952022741 433114454 798673352 736153232 958761483 750783834 930941150 932508096 956025993 840811725 896721852 353891458 531751661 137423836 407079009 858321472 952719425 196967318 683505071 580474275 986040248 961445826 974352944 688640523 976328626 232643803 856151195 368436508 809530537 569164364 745423834 150064831 325812715 729878148 824245310 922377421 978770982 182900203 350499523 300094784 849139589 788281145 846691205 20530140 196078725 889452434 937591628 173233416 216961822 631836740 934540225 269294950 657738412 735549786 765662115 242086343 700883127 97373422 611181229 775595868 882899200 626942532 740546810 619353413 840783430 469610910 608779482 695267142 809940136 793566201 994068357 192658500 870064743 93945620 806487224 877014691 877531085 69501823 654169522 407792146 578237811 25444258 131693341 704448363 798936560 869899434 927695115 452756319 522279062 582412708 697085060 793225459 964278787 298743728 614597493 325023273 662623376 33221892 54175490 74199004 272168946 126750788 264714726 630843925 951611312 112186672 223984105 357587231 462110023 819397115 954744059 623954124 801314820 307977108 324272874 798187727 916082388 622789617 725163866 37553028 734639017 14770131 329263470 529829004 924088719 978356580 999350075 128159781 456319429 950293470 951703338 538805055 564486045 612659311 679445812 257219075 603839911 586220571 900750317 30313138 596330347 96132069 852783161 932018085 977430069 390879705 593868007 633698256 634982203 745720690 768641701 70714380 244914428 430388853 651527281 585722915 837353636 723278505 799461404 414750835 856097503 824881897 878601012 831371350 997586517 782634343 835023381 365421113 670978022 417512730 737881753 998549771 999595402 805009900 852834166 819709168 851821166 534946861 678078044 520554997 645537654 932574984 955904887 252258275 693562429 922650708 999380344 67503838 468878131 349142658 911664403 624917388 721311273 539051383 800962544 105462608 558214719 208260494 488210089 779332007 954059974 490662123 741008657 206948737 793836796 433159684 796462401 535947432 834056142 127115654 752756761 996273687 999904633 165042140 895982929 867880327 888629641 902160853 962935797 384020797 878491643 913453753 992000333 944394297 976255696 455623590 816228490 395799687 965455781 309452956 849424509 994550567 998719420 28383544 603713016 866637408 914953567 724369330 729857473 452835135 938044470 84596273 753596967 514049897 873963288 744600861 797316533 819675624 889258091 263693194 970806490 447927229 842109219 357555915 462293053 754712709 808717359 214087658 444981207 48317652 793331584 540619423 671117391 667705046 708414172 650002028 837896601 971549064 978193545 648582049 729619230 940760381 978605936 310091716 316823848 139958595 507542645 884611949 973002801 91028454 724028879 237278320 723930399 856031751 906783904 807393436 885402163 897796823 937854616 267052207 833201808 329666002 819289368 402860714 685190189 218515463 803272981 754427057 961349215 875751281 891581685 66720446 879895381 602620701 628843299 869386803 898862505 264769799 645988545 276831174 592417910 884947920 926483493 608373367 668041107 15310339 680992110 345570000 516670793 254396274 255508370 142826399 738260833 384004031 625440780 279002540 409937712 549294150 827714480 715322404 903060894 677563358 731691234 809109100 998243343 40723261 812404553 532155294 923998786 802974843 818043343 26034380 911790704 197352768 442050396 766812150 783329624 448818790 509807770 383412750 915229922 539090001 716091901 205685360 752357729 372054566 649934992 412399905 696266869 713207019 916997110 526023346 647253572 918581917 969234701 485043550 610642074 813422031 956889959 750451029 922774016 341767605 380307865 112782937 965202501 869860424 877761629 451797845 945840121 127210514 676390420 151607436 259339155 749080168 831148072 347436865 961242690 312838264 961172680 623832105 726052998 715143526 962885661 40370272 447093100 49403594 193325552 18381737 583487048 671822780 991805909 32014540 411331123 776217468 872139145 695242837 881592928 490945279 927860841 706008266 730836780 403079014 875272579 510923288 713060593 482258895 825413827 718850251 870974029 426814933 672717960 283950049 787400990 578041023 629229086 76199110 712272525 876970915 892117927 700693665 990044007 303173648 721037819 698340537 762219344 801337671 979814329 994797560 997229125 278193296 983870530 910620265 989543511 916390753 971817812 452906252 558687268 678237847 776960815 7100713 902548368 350782707 744726730 916988386 956837935 222805977 930927260 519240889 861623318 10815551 704958574 216747677 643278265 984092663 995604848 903350921 906133647 378398590 442798314 869637638 934956924 570767755 919465177 72972758 886441749 911991991 924870948 290318956 605580243 463251136 527548110 791737153 913145066 971960166 977842699 460191943 804267879 101709271 810673431 246287820 252669666 663382014 818918681 958590270 959523274 610851580 953740550 428270890 471240324 924639785 970539983 121452786 227642506 185005456 775676884 217977287 979386078 174677654 358423025 414223808 737601090 822418603 987175113 601161834 662000688 630704383 841523804 597961685 906309612 821006083 978784552 354051826 613052259 103217029 304856221 223836593 959824187 467288350 696527260 885151308 989825432 911582977 932958852 668049046 708493207 7987887 536975238 230490459 761811233 267557101 500467662 439969396 866526978 28741148 381199378 701380458 987657656 639091539 782695202 568235688 766273138 272876380 438075269 975324796 983946767 938169702 975211203 607651283 924677768 110901782 548093779 958154150 969927055 322932464 472408531 735121339 788122265 28515413 288189750 420093088 561411130 713757201 923510673 446570071 563293406 518687565 862627541 263616485 702654191 872267419 875800541 564822857 727791535 69991848 547175691 92249896 329380672 742497409 776077387 616964568 632966229 384956634 775643720 921390524 954632155 386757687 850892643 819565645 925246713 130116594 679940769 63614903 579676726 228003723 334423386 955274490 989158926 715112037 839889345 366244172 583567491 133403638 367495171 790812255 972736461 54390758 645421273 280781196 377282610 622481228 743096719 880965868 960897690 683831125 872162916 275694343 855430842 512826677 650033883 716923125 718324455 503915730 995732543 130764404 961772701 62435701 535805928 380356321 436850099 765298421 882473339 722718998 835618139 795278217 899244981 922509224 967588804 757238635 848062269 425503625 534610308 978463967 983862270 934148812 979962698 929488056 998487390 676441273 788018447 691145961 901737485 607322205 959490366 483409662 777522430 916895444 983612494 206712378 473942974 742282009 870894051 676037133 929532352 149754214 344885451 708263127 714299308 919539466 975187349 186999454 195893136 548534471 861762085 192145804 381494063 490896502 807037868 509356760 772083843 815191405 903041615 511874510 881555538 256455777 388071663 230165552 666103882 24417063 222123816 983280285 998938591 116852596 749436546 137637617 207548809 417499095 535924579 539728059 970356039 752681145 947117422 339596474 795882782 654477717 743522074 911238223 948686230 379679378 534314126 960977265 987728855 432479915 972175733 99407960 169884242 46368118 571626291 797925241 874297965 622600566 936060371 973986651 979975889 935303226 938902440 753334107 887681093 833650350 933552107 211303810 438287735 83095785 993313013 315691789 560131016 379257847 566853179 772067739 953347244 517003194 907487749 534574145 732692281 216106382 513519633 733080501 757569220 971331223 978513507 878511171 931876696 13211817 221386371 379874285 717279810 458133487 911673266 922578292 924084477 712345142 768861444 235871295 894544070 39877868 677049565 955631812 958609726 470441490 683478601 693669387 802948037 211603228 530293806 213475781 624725486 509447267 640906189 696380745 972796616 584630591 910734282 967372723 992671218 927767860 941649432 593192231 719133843 113153687 783895658 180375801 387222411 382750445 756995337 677114689 695237242 872696369 989992802 185634569 769886310 814890572 969746928 353409938 810100884 171949976 531389554 43347908 220282637 464541756 897663473 852138906 909180110 211251883 966980717 346505363 451497426 498801440 841938073 5369963 863556913 432706311 814099017 376924108 717421407 224435750 931394204 601454733 982328422 24204985 199844544 906226013 979716563 239895456 754130015 784915628 961121971 85538066 201101059 271712005 353179399 100469153 454561969 347237513 361756492 987404736 997095725 797317203 811483888 434455219 774811549 335225656 394341564 749079789 860204560 918474343 970446593 996527839 997695980 112277749 855391469 477199566 647560472 431192324 862971602 530270582 954908575 755055561 969457850 554981325 986922647 312184753 538330844 617906731 916102511 90263932 912024026 206328475 713061454 807642271 896843527 228064316 615344003 56904646 254806734 850416654 871153888 507968889 996988468 299976687 534059002 437827428 827630877 206319185 243228683 464295385 790639372 399356216 985827983 420200995 466038732 23460831 216811877 844045980 873244120 111321680 992959146 369281222 645564129 576942521 809398628 468681035 771751137 165808038 796807893 354911595 759412382 774010213 916955716 421300239 480661785 614592857 985113711 4887718 103177228 373239874 683452658 381305688 825748090 10316773 54609450 60135037 479634982 532384058 750433877 217766033 702805411 237505423 598713873 352720497 990165386 24535538 656137842 701777325 785343136 330247274 400441641 792526713 796433328 188244503 875799741 436884408 685189265 842497903 945237167 777782543 950641479 366429775 389916332 661702032 840787069 175386596 640495011 376181895 757741640 76356648 832377339 24187531 41530381 730601556 918637579 660257379 837496588 602188272 913884881 909632387 922594095 94561702 307362936 194790419 372567036 292118403 800989586 809727821 922749090 466605218 660639765 546509730 553321974 548551267 616781285 133732295 418256556 305586595 811948736 231037275 548581294 95992380 513205792 632524790 993464335 531510136 791602069 878562611 980910487 710901546 957676781 805162450 909506646 95747811 618084353 660044769 667643820 240329196 924840917 713133804 797724461 822881561 835325958 542827942 594588593 691501450 749606990 490192069 588821024 874590363 914103239 954315733 967777690 899672823 987582165 170814666 653935605 865057968 928776784 963734117 965026444 295543020 813043292 313006571 777272728 455837294 681263382 687090886 825014568 515839757 528803981 629244180 741783823 297399636 511195367 896185631 992420814 387998788 894004832 197635884 657349020 582499798 867015369 860733492 949088338 45448708 538539205 876904305 992220847 180012568 656168930 349615475 384241911 25774859 130884460 224007903 768101733 623501835 772304242 431842930 879635710 994973760 995269668 611385992 934940925 716676014 906154944 979684800 989245953 611301306 657215236 341030880 837376505 240370569 498170040 554120560 867976578 780593134 814300014 295926952 782816528 473062546 708318086 107161895 712128781 716154561 974265658 788141123 880693717 358975692 398925002 702228843 968917255 753596351 771701741 888847695 954237412 602211360 784922667 291139091 805605698 515587723 630743325 103126585 350220818 443537047 795967229 984479297 986747277 465016459 644536365 506923885 609287705 683657301 871005691 44552472 613108905 950881249 969820487 613495436 906352151 992497592 997487427 93652866 414511981 269886527 761877247 712216772 797973756 850183444 958761951 36911274 558514910 231009347 462571615 348798293 855642697 64416299 724389825 788082866 993835221 348539996 707395336 149592407 372274366 638835111 731964360 61167553 349256909 528034319 582019280 622566672 881734742 258014602 343948732 394346822 629752400 817493802 932496660 109221896 404752103 705286526 761464241 648729088 970710777 88544773 742685999 650141000 817891923 580042350 812368897 652159387 694223383 988993993 992735839 894777689 954955719 375170196 592764409 865116905 880486191 609840225 845879386 47762685 541418334 489220429 889839142 113102797 159864646 950003462 985871993 378635440 620557181 894204518 962754979 614179861 852173915 675002861 851128990 577172347 767475318 785333690 874187095 540027839 813200753 946247880 957694674 586352578 836713838 916968120 986903693 346505118 696517745 681512186 781874189 906079367 936191068 703317753 796491063 1176065 787686635 87353829 746142737 863525272 890046752 104369318 571560156 229383344 752580718 578107962 870249034 675488346 863408942 104488519 766746762 972950361 974373323 528011421 858583736 605341149 811573423 575386571 798117531 54059325 112782627 881639771 984166690 355277904 576289388 224096666 748454167 631757307 843045976 544190732 851700175 558885927 926711214 674969381 775218013 991722779 998266876 415917896 781500491 812233675 910094865 739199388 958115702 559009764 781263698 717659898 859776269 247529610 711490711 595102182 658740022 64181238 413787781 418947445 890713624 193665446 518354978 245134254 305093627 763329592 771333762 535535611 740264630 236562951 641187932 829971074 850834158 480316153 566178960 290735007 320150505 929570864 962429522 915239972 962676141 482359210 941489452 919009417 964225913 370732492 609884319 804558003 983247710 513154645 904646897 340437993 807726478 254811274 353814636 662168467 991722056 359031792 750815417 138636269 416468378 166685230 872676730 641374894 852383406 404590547 762522444 164128271 841714944 68092565 771820865 834514768 928816513 26152934 244590459 778994623 798083425 484699627 756699465 862247487 939615044 785091536 968633324 47679466 112118482 609365384 699220398 59185141 506815921 51317913 404557366 680885407 809057669 802135430 896522856 737063121 843550062 799056239 865880734 297945458 338822786 524006004 711528247 619159728 651595402 979400241 990854861 97337056 930117960 808669544 854383786 817898364 847334455 465925247 761364806 944185127 956818716 781789107 917982717 301727430 448078485 108481043 729914978 598114230 824156833 486098605 546236811 607583324 627737830 973652833 974640312 417783829 949256282 862411543 973671003 490992630 811226771 80698809 235125650 25475541 439354394 386889320 984396383 395111769 921672756 533052681 809250581 152546201 261646607 67080477 783816824 180899206 845075570 225919878 482486264 612133302 875937521 841634537 864943435 709117092 721290826 110944409 311075960 191670894 990891477 127090003 344412588 990396018 995443542 480535297 785953577 48571117 491169591 377859754 866813202 624518122 769832838 182193708 230334443 754433105 846048956 552524030 907160139 727242919 993740820 839181687 962572100 368726613 952828218 157962473 942962143 701369194 825194023 921029638 944412243 663876660 962318948 611384818 905941287 401044881 930964301 929870077 978058040 731061212 882216650 155207400 206865077 530294710 822401493 125684054 165407573 329771156 512256452 711750283 821218255 130970668 590160483 757582717 855145188 461099234 860073793 638737013 725493869 667927788 896749496 73859797 843164068 99344152 956822758 529010210 941935780 207362999 984555783 299386903 864097458 194799185 914364686 709744705 907200498 16993324 587096979 956525200 995689465 479911196 888837831 371636169 678110965 374711862 694168057 471787773 863665458 631459879 922547996 214974637 601234874 903981898 983665421 697204551 982663898 791708388 932075644 637502507 651398479 432468449 886593496 73987791 658013778 591351165 893106869 181352523 734279513 458607538 747385009 577808351 990685532 464898740 975829961 760711205 933850188 435230629 676018366 384528224 840544635 752427394 798898751 31700817 281871238 83205447 235496193 113203012 337784147 202959419 206535899 832956400 932960473 273216739 303692462 210736669 416082921 595559427 664188887 995456657 996558950 829150834 953744375 582732397 874562438 25184296 967968664 578550703 906281303 112511743 198089274 241884191 952049845 113880558 973201698 150949341 480622452 689513723 800957942 445391412 779978970 754467875 925846427 492801651 773261795 104442254 633421170 412561063 702347538 901356294 995535587 650989253 948623188 287711105 729907164 943654980 989473120 746909842 759322645 816589277 893996519 403250363 800570019 177659417 485079915 294476741 454649867 575747334 739080471 855257316 879458002 182909001 588655538 59708380 818677844 134392855 950147994 769538995 912298453 169932059 670647610 101242776 318555189 188429451 722121147 526551727 652655115 718333857 815982919 136511665 932980617 223203246 509779470 387482934 997717997 370026358 699263343 926312689 967739000 117208981 188401975 523898413 731870583 492439954 998735968 799538322 979437098 618950230 890870324 911298251 928570652 792496940 824205239 648461517 762145130 612601887 971658658 34251527 178630891 441292282 719989467 411167516 989317766 305034569 520764900 487720973 601265710 435479305 591667588 774245549 908945779 338721694 607556042 625540617 795256937 461785940 806390141 857024447 882138342 116959139 534162298 17532517 302000139 926103814 990626429 480670474 652341148 292627961 366727727 85622345 433980499 758319706 758579921 706226053 812058796 928460441 975369240 523864874 681635492 630510015 638635163 972790856 973846508 180263021 618700515 85135056 693889972 646749605 960306716 26704853 330948906 626383275 756458292 185288111 225486595 242008233 428583366 661259223 748263612 290897103 789658404 785887054 878945544 195405528 532904328 441602703 536537761 571124142 643867559 735113168 927281210 691809056 931265037 781592796 988452783 665294790 969494804 612749123 760891400 572501867 920874240 369975635 502470561 745274167 791112368 199227342 634885298 270671028 285333626 29144448 217830691 232607885 468875869 257562350 359053524 196190427 561063743 23875700 277569088 840014958 927877475 477764132 561207531 386697457 598139128 64882257 824054430 453060340 889058602 676753985 720358087 542430956 972791643 564303492 740902605 362560282 992676294 507365501 910858036 247808997 349801272 304692051 916010760 215219802 885810761 924056572 959271918 666747731 701992898 512112002 875519838 495623989 914197046 872173972 985099446 543499267 723854750 537606686 771387254 273897573 335694023 41524287 524691197 491117872 895068576 490249222 519834682 190657583 751673980 572280619 824973469 312777518 673460459 589538986 904352433 832728119 998257139 867418384 984545028 652548089 987662737 705858777 710864649 965714803 997298907 334513428 505576571 155141269 367305350 521806114 603032778 797182205 884480063 664020640 886127469 310885088 466441205 534800673 856650799 927604135 999561768 955379260 960076913 741176409 841406056 468940548 854109017 238567785 705662517 365454542 635479996 898281396 998204415 50334820 61251962 173017379 219622749 535993314 816702782 365484524 546840869 662457664 811001146 800780035 834459378 330439189 875343337 399951005 471437514 594200912 745953033 420818688 762476419 893564812 921192735 389661522 611793146 896982773 940245869 390973843 631791309 482896660 776736810 129726544 333153665 705877873 832859535 189181531 940604502 943422857 955112293 148098268 998340629 157001260 646394120 611338190 988470168 624029954 630555538 877978683 889727285 124848283 536582600 76972295 367799307 703652518 787415952 714995385 897097452 824217897 937505300 790266380 848938979 674523289 814506230 878866235 920095535 613129533 956316091 682191710 753618435 308016795 804489562 627139628 955412783 422055238 622873058 824019721 845361571 366055478 582623897 356982833 958520010 833361705 968452548 497007374 697693397 939753936 944483771 783356042 966944463 31913074 523379385 925785149 961973831 335627709 868124328 198707360 481139850 269021356 397345502 910219795 942699852 827473018 980275665 764778585 928483357 491955493 943548418 797673446 800263806 858405871 951668215 203487559 669143373 411618908 595856951 120852105 826489519 925768472 978211541 480350916 608355681 300228045 526514704 700955915 852114626 78994297 609931479 755503064 872085494 693123778 983952340 66977510 366252120 639753908 928596476 582591976 615106848 302984569 841936328 109831216 557785260 723857920 761394345 13234376 405432395 27721692 940827884 93305858 810116297 809271707 823927291 818998607 997251621 778954230 783988529 52872189 374211773 72045843 875354459 281487622 603340905 982677100 985373892 289510307 382227448 953615599 971232941 578228989 709670842 462882150 470294782 495128201 841684818 662884270 898233370 760367768 978679565 903255413 915512172 543289312 559101213 72915068 177036325 299899550 952351147 586940162 720050026 436836884 524434375 2208377 272662590 578042253 645002009 422586162 448916269 305863934 659864739 239976173 522354203 821821752 903465830 18539134 648738871 293403094 787393855 256594391 983077034 639836015 643025259 859211687 980030926 121293990 864788661 54019164 946463486 845041398 965093405 116416231 628862409 281981771 382775603 905301322 984825911 124752172 242857110 903582985 914602795 450354725 874973373 10428181 200029345 779860261 950845807 505075945 917080630 202533223 317940908 564159558 570699416 308776169 624008022 382807326 803521218 292171716 411761324 173769909 356375241 557297743 999161400 258474787 723596928 720624219 807715224 561329641 592564043 360538095 364072642 665478590 744557609 906883633 916189060 420760602 647649471 665868206 964069794 58612795 296092262 418760504 735143839 508136631 808308848 879495228 944505694 576525945 840141123 513851036 593732622 799305103 948738505 718952588 819010064 326780960 878278555 834557997 932843285 714667648 791859659 816987310 942460883 154719479 442047869 266741387 633555506 934142400 973388545 155310262 646281679 463650507 720055095 857933331 988344309 526610450 931350421 598468525 690485960 95151073 100808846 160672139 265137808 758327049 864710330 705954523 999437997 758482963 810955710 595549755 886708113 456622863 604808959 775520316 982284615 140944945 730072794 674781475 972420041 656575625 975793110 299096013 811573192 192105140 428811496 915217157 998756009 845932933 924182788 371279000 393136329 36685650 104767444 820471695 962274052 831546252 993830415 523277757 784142975 28514386 464218137 130895476 934292364 474880551 484407093 315535974 905918851 85141063 772557494 872998963 876521251 993854028 995597942 242563824 333545632 827205404 852260177 882122335 926509298 407774690 415180042 856593081 898377379 858853247 919685243 227353596 320029996 126402452 537813621 205565297 755994057 428361683 715137369 800342893 987747890 449269512 720019738 211434779 700449272 449744545 911653761 485908781 704754008 721685622 960502176 58971163 848006242 169393122 554992219 831178559 907326723 115081925 361387123 585469713 612969664 127066545 392813805 363590038 993648941 2218014 927179690 910126198 918365671 436656811 768037418 723057586 965107368 81604368 706900176 970997552 988005189 194220461 648629493 37670726 590893556 634347062 661810567 650196984 751595861 908487462 944919288 343571026 660009229 843832015 883698091 226856831 461187492 277871972 752409942 239642181 969924545 986376279 997888309 322462442 479149247 543403939 860938224 621439425 873105274 332194226 400624680 774396528 777943963 391831293 937513122 576074745 698667618 382208460 907161257 934983619 937841492 409935791 548393286 805769389 974470172 384925247 560416135 374863798 907913202 460341529 964607724 205163775 697804049 673091623 868087292 75454447 294412863 857241787 988492924 525823274 812456049 62537829 467680815 568978262 579727627 767352048 895558979 191558531 385085210 954930954 956492525 859010223 944870536 376978091 861380273 787515836 791559154 194946245 822992243 80049297 689849685 595933107 638850969 874546295 900043936 217126218 474736546 45862493 476010126 252910385 905008383 431963865 512777680 993945118 995366816 36456220 354816243 626412690 910526892 551209238 799474486 346156194 820841955 46009647 112949732 269125922 431612978 256887640 612877715 818066829 846334503 682358043 740345390 109061379 501570810 683833634 983731789 401859547 696764506 428651742 757884841 637642220 999104468 984989958 999420108 254968284 376408733 800631472 878437258 451298196 565245985 772518849 919914763 645877570 909803290 39476658 269603180 351677752 443111776 357559593 804872696 83158721 878985639 399975301 638963779 842707439 948901517 601679814 932444298 588038732 843253525 368841580 904384417 689212983 802600741 215452773 919198121 140404524 566158805 703546903 806362903 952845548 994372438 555139026 767515962 513452906 613308564 970419824 997359304 16465321 951993063 538049829 597256948 496860087 583089255 509752444 658768745 59648686 650671800 277210621 715801478 562317361 974742867 612622476 621270921 984784371 989252091 553631282 887432102 329423107 694316784 372189922 519536460 560187086 781978655 2133991 33241569 216320256 351250933 858996793 884467833 23562985 71461992 932999126 967875610 598902899 610244046 9996784 864146777 625716293 748849547 250894932 690631742 541568951 705572378 850420029 929833144 685550431 969327997 529823449 745380276 528620348 725908360 228338722 468287274 415115427 445727048 183237804 325037476 530164087 625437385 870859770 988532933 11890526 196584890 309281809 537186381 114655647 637752944 393169652 950123772 286127228 506456721 401686954 849067334 89635303 982233210 417304706 539391022 92303447 929427773 902776192 966112479 324765222 917454975 232382551 789241367 805679779 817586754 583547708 813770241 77627542 260990731 213415578 768380773 746864328 978474856 344761083 590755059 377345211 845623225 277933269 295335970 550287984 896511433 574947392 732161273 95805115 889523650 720135848 883311869 251704405 975755428 936760263 942839496 536406144 978647851 221900577 655972476 910331693 912163881 280179081 782170963 27421080 697193305 229115527 789758854 735262393 934205438 394142590 466287981 713963855 877492969 694596949 719656535 833246619 986693750 970070476 977090765 711737634 917515117 863799357 959855977 629883585 708156620 586430261 972401446 829476316 878201227 101551505 157319011 801252182 812582808 740432138 847466397 361290962 731449759 656413049 881571694 444883894 738561234 939381698 948509722 344471411 803834195 313541290 679363011 144899450 609789820 783536038 797919024 655470998 696593051 373083473 949952951 41301150 553233906 107285692 341018316 675438626 756706154 682543371 850168195 975611173 995919932 508531059 800482851 406511182 842523302 357753172 757279116 598714632 820848122 819410444 958550062 985093201 997247289 376158153 594995098 482465316 566023905 308946166 677016585 430869034 906874644 868767659 951220844 513336767 630686969 449597980 609209053 633870294 636633655 734554533 871688213 217949527 715779363 561041292 957806303 742693030 916533403 978202695 994170531 392246027 763987490 253643001 648673529 869022755 906681412 40118000 584082729 814694062 871736291 587415899 840375759 942438279 990602436 453974376 562491370 326872489 551775243 230329795 304326851 604368184 650803450 387857258 881673785 551841091 748025251 12757608 344760641 912509259 940761122 40124631 131476252 191988682 768607382 85837361 589904932 383300487 454902262 794437262 841931492 746782355 798090454 7985578 124665913 616115904 918132314 751690276 794876303 529511177 538596976 465692880 528667400 30774311 870708559 924618057 953011080 704685506 982712993 423944669 544375548 902957876 955186402 143056969 625401392 232007995 374614332 397761761 689995299 324944400 656003883 731948288 999389030 925037456 932581790 49125342 953827776 677128833 923611969 614602420 679617124 753393766 757575461 253573735 792943673 118539022 796924475 685400635 751971950 585865248 723635449 125340513 982504212 671164229 728710296 70577374 295223343 738123162 913758621 465237979 685465215 443579571 709876527 960452270 982322323 835455915 861800471 259358645 500151773 270820648 919751171 933141562 955710002 862184404 940000348 826134466 957072139 734496215 843067817 593218497 618409233 973174100 995364305 797633034 830638420 268699615 509509644 915606570 917641374 985927359 990338309 943413801 989849121 783648585 973106050 876875890 938594150 352831751 541683640 832385735 861784254 874700093 938909969 44727526 983653245 213338781 458305633 700124138 880904139 349917782 850243714 534817760 857120876 835270405 992142324 69582780 534587735 570094472 728637460 280828250 928109934 584981355 769812357 610549825 976404535 851867138 866433973 511764584 768676230 617495493 951413266 944669207 997873542 299050200 327562447 318928329 629289501 755466311 816861918 656231292 685874898 550595609 684588409 398445881 783751130 279815867 447599552 225087571 887232923 11966602 305323361 464257919 511222058 333194313 395920794 148177430 416560838 73701829 561084223 460353858 937817075 258737070 458123760 665843083 734055777 944846665 950600271 400558281 958098815 565614401 886383184 111089413 994626136 695509002 736623265 824876047 830790723 995865567 996650124 803289841 946295845 611708870 674000097 93348340 387913929 944407040 958747484 979666665 998500125 811163468 991655676 94963248 955647902 20533456 310834352 887061198 896465828 940211823 969260993 875233603 881707678 425100597 946693607 410259468 552150909 203241204 803743682 784935519 787818474 129923501 894949815 211100585 262880593 731626322 793418271 754925937 784199684 878315202 948653580 802760565 848100184 367772643 661334814 177889282 408323434 45602722 192269030 809131008 927770209 424348324 965978025 464091427 717497002 562501802 878788660 674980831 712793667 656970188 809487179 326627927 450711280 76984061 907406990 155917056 316118925 153847577 345155279 498049816 620292364 763360785 917560694 340630516 456572707 875990535 976083056 226422995 474752548 960420794 968577482 631437043 734758908 554301478 863434871 405235999 488755050 924170229 969778947 227116952 665691853 601750899 609007678 930860215 978980364 504975015 942304161 422106782 616534502 385296478 614660741 20201778 902512985 706489154 826518551 597596831 818656958 265429326 283908088 28596890 832901684 939303184 985960069 684971777 908357947 374112285 874038650 524348168 704574211 72762389 852795893 775279107 786422531 590241562 725323445 209307055 273626553 470534839 478623099 20909440 148690074 820145699 936903420 595448183 605097246 569204380 605182823 588189704 603526555 39030355 866507551 559070216 885527019 52390611 482209015 548192509 743669007 523310630 926720734 964075339 965414828 674482311 766322647 758261935 843165569 162477128 859394983 952410875 976013803 862494315 988135129 483483586 794548626 518714093 637419712 873991511 877446740 48448787 620972622 188867935 236584365 126303087 377801519 888159298 941901024 935040288 992263613 485631620 782061027 900347690 957289517 80438837 179830467 951244230 972942490 204538261 945345579 324007215 526079892 862395965 975692243 898430719 916809346 211418804 494795231 242145402 734457195 478826732 795781539 431678998 654378841 89443100 626089198 530820562 651586095 667099127 797120072 533362785 553243798 33595644 486183486 950752852 969212720 189771825 517103720 175754692 817923104 401521115 610903906 822231818 892234913 82740829 772429407 418683635 601301762 582858034 670677911 195102071 803447225 568401661 682752545 623152175 826651122 329960198 553433332 44463633 115452435 31654314 639285674 962342061 977442607 973933781 975677571 979403767 995391815 639813995 722203676 56041254 954921194 555335322 725877125 933183521 942744752 684779495 749614029 501878506 730212577 362323209 891963986 266764818 850494718 101303498 892912496 964285464 967540784 884534152 993888753 480882762 933749120 666102861 839208443 75629225 504677889 519762825 891851963 794759619 820855465 6780508 290816677 28889176 300754421 132934030 508472689 624343164 686771323 348235508 781444353 397739499 683357595 473347677 660130635 353983543 681362804 901731888 999747397 86631032 314410218 550092025 837965464 946505274 987332092 506127824 711838858 609018569 894030901 18554499 662394393 834232251 982803865 233559642 263095758 715555705 740977410 939440768 947888368 504137987 676697788 542780909 694035579 55674761 719233972 867895401 878003686 537749577 990763570 769951120 932247385 589595175 961686037 578970657 992188064 112736303 438415160 423507578 917599523 333298235 652288475 827383501 866770890 397525196 977803087 411281875 485001847 244462499 773886132 585564784 923140471 451228364 641020302 771116070 826278781 862776924 905392287 170633854 765325774 528046024 939008289 338768020 851134869 316204933 622550361 629338076 631217992 802072497 892838618 354997087 650903765 413401656 654816260 512452515 599806977 791800258 965336272 827931356 830617403 912121215 983296475 891553630 937929788 954627669 969785215 490240356 706348910 920531303 957780796 684064712 886836637 831010124 831823019 855246747 962037355 266819252 651589241 133891436 487676118 932308186 933409891 738009937 773062496 317217993 901774818 759780601 931350866 741828531 897181877 732033589 925801386 566044125 848037928 743808841 757550682 417881586 897074264 348327806 934427968 757148561 900856481 434369573 876818293 383990649 490362878 559154934 955031309 989523878 998734115 215986710 331883756 414231544 464727678 690169397 977988518 659291355 743536507 333909681 724301082 513492808 866425001 537973401 715265948 30056032 989700834 407704171 853284424 161166511 609234282 225763828 779006310 825953291 977192328 699173038 920533518 856270193 895914890 562032035 712350927 886002845 925249952 579847448 623347305 867573523 894881090 354513244 402213130 470222445 561559617 247276654 604401415 70924613 238393229 726813911 835261091 959073812 996184797 895675168 918738779 925877745 926974753 631137135 982415685 806998558 891253377 389020809 472340043 1750317 803174756 787241172 935494831 888044040 973789166 641764225 994305853 821213054 865625256 447352177 628546287 916870187 996082641 839462271 936180572 660079154 686180466 696948769 881802101 804435832 859813254 191367023 328112124 472789817 992072706 55701445 263034033 123324148 283181797 599287114 606876244 455107203 522832772 157296747 399597245 816703378 817208742 681998526 880644721 542517112 701310330 999983209 999997461 91392511 968405285 395537266 954267873 551517487 644648925 16499131 764408491 605037472 624901163 723107303 780572261 694219242 704640001 977675619 999756526 170385098 180927017 463611120 873730061 579736002 912445179 750670687 815927946 765989254 829898787 163669776 537814713 899980694 980709319 916960278 947066630 59143903 201910270 310004948 910389943 576341238 730145789 310902465 566892139 949325842 993024205 13166554 978188705 442011040 464294480 612604738 700728514 501951948 930276897 67735816 208539399 882588166 956521583 281002773 697513355 276787504 394228292 139462150 334068790 58185941 320017731 145817536 891846436 131735224 946639680 900244500 986019097 229408380 990815710 109652132 950571774 232214705 275688179 456905808 831484720 417748010 765926938 755806202 915255717 323854733 971402158 407045946 708796726 123157499 757283963 577948951 840726412 144658478 328577009 16948620 621322231 197879776 420780359 830129448 967531433 307851485 900389826 133300366 917463958 919915072 927601067 501877290 946500490 299042101 650024332 683117557 924351536 430656844 757208586 589224635 680270320 440689178 510884682 832861812 969972080 822482658 936162634 889251844 945212078 981934146 993403294 512039455 556497619 160828340 361421358 968135417 986341741 809538386 920254459 457680718 920191770 352979704 672534872 744571473 970825316 169311599 994596948 484666490 987500888 878033083 976917526 225787301 576975099 174919513 533223121 601983714 961969082 214145505 317779468 907671558 909703307 135395175 647160711 814263791 957212032 535609091 719498746 22631482 28062706 994368201 998857554 127753317 400956715 800249518 919214534 927326853 973181205 850854283 942532624 532103722 550382722 866938828 942534989 507033823 897860603 186054359 426041429 257002197 745944148 31556164 142472988 718844285 865505516 681346635 786119279 679016089 885104809 987829473 997889450 742991006 922136061 785375687 964122061 167413929 793808871 374935400 494335463 843898801 944404190 196051280 515992105 831333081 937309705 631510018 774119921 16382587 464606245 990355336 991674992 613523216 974842154 32261951 83352695 201302209 920207115 92002466 356801285 743040705 754217206 804828526 970980035 149403443 694045477 921674611 951437550 847974214 926680471 819466789 994795271 650210877 724852437 425661482 798621365 234764801 983568352 897068568 964089366 17919546 970786268 467061321 738628972 845895876 883642265 739652817 936648991 346806934 999451312 532408504 763386479 415361595 990194657 395627623 821857995 486435992 790172692 781597504 896836082 85110664 441526218 51056449 263664077 282756622 698838837 674197192 678893262 947961735 969866513 238850357 535520880 728208192 994322208 770933606 847870868 524018549 736952928 129640895 562855524 486297985 855360034 709565830 868696627 644444475 665340251 818372146 910829152 776642913 951561553 158850397 738507885 114710131 531701115 119293297 134936057 649945715 919450791 569314145 744406792 853477100 945220412 18268504 224428628 280845108 778096977 151085101 397041290 642015705 692132412 290952724 773361797 687108316 928830236 120347258 948660994 390456193 721370620 547416187 750397639 843051582 856666973 150445384 616246219 931360291 999495100 407273237 809117587 347674404 610166508 52491662 101731262 397603589 994183993 957229193 968750172 409289676 759614968 589549575 704458817 173689609 493343763 659625636 957988738 363777930 898193014 144155178 736867872 796667165 896736165 681786642 739208933 159179391 676622098 805801027 829838437 617503956 865040402 273820933 282387123 41723851 311070834 104182651 453566646 276678095 437781259 925608475 937033438 670042938 911479450 924198794 934441635 255826514 613069398 204129038 659373475 275625806 910092200 220053077 838670179 304234931 775659453 783847387 818699026 449657938 895474895 499457722 876538996 353334672 750875034 586609315 855127133 112856621 858929574 845886763 937400790 680240748 733811111 962089473 987633122 284636439 893833036 344568143 579760403 910801304 996469983 786807076 917892233 328359058 495978832 496856335 698178665 74684832 274370542 631054304 715695969 636090859 705879798 809908015 934609377 832999992 891331223 915005413 934041905 545713255 977392178 125935331 931834634 916953011 951352551 59919857 753913844 611956026 974374622 859645890 916359336 769936748 867532706 598869734 769024600 453441862 754135423 707109841 919181225 863702587 866066728 743750363 857505586 585969446 827319824 715181216 730972274 979153832 996275548 782196802 955929516 971109831 998792185 505367011 946255718 727823239 918414518 697966076 974042539 648936709 960882939 996252039 996350274 643590885 677764754 199011170 562616192 811386125 893187186 181801073 999842300 203635241 488092531 907566815 982087836 10561690 140513475 725743477 944536912 802944752 849015814 725736590 833204895 757509016 904630227 83600223 230319438 288633019 699476873 741850371 891428319 125646669 479486150 415992992 656675123 113660312 445578625 151655434 272562917 833948297 905411719 423220732 795485612 865222190 980604201 669624797 795931064 333533068 465028486 76986401 839116149 822012495 992302696 654253024 861192613 424397553 726038047 693772261 933190863 64647798 622068653 319450054 993185960 331952342 755333936 969352778 988989584 713129215 930571476 683844931 996334236 526901778 776433837 288930147 948907290 450720276 616361152 69897715 748783232 217697963 795364814 789094034 899912258 408985465 659669221 818953172 845644529 914977036 943963759 919026722 945623062 870069706 873053559 487261483 768824756 589663158 847842202 408661904 472726293 724577981 923989087 892929693 950773522 32233339 446271378 93094153 588924961 402144679 859783045 940028256 988891773 280099642 542382908 66875255 862150485 450862976 796403700 173470716 800712215 794931922 817017355 307413509 914118817 727441050 780929913 560839673 654338265 381747443 552601419 601943755 737992838 269195007 800177738 467199635 773714634 148800073 659902278 297806689 598184387 233339147 632330030 780871315 984628383 119807281 332123567 602388612 646687134 712649778 912297488 445141317 805948023 124067337 608874090 273146836 514894807 595495802 701661421 922528849 941168892 973723980 983495012 369238097 930701693 433102636 757358346 113776241 925599258 614947491 684177508 648771071 922240422 926655798 972359997 415340466 759066019 761770432 803197596 811792783 960746003 353187018 938821114 131018528 616162076 348294053 777736005 154415823 441307730 171060157 466887259 262503698 392196769 422377756 963965127 702599371 999346263 847042530 990431015 475673168 989091409 887424701 902238090 136879738 362194239 570664122 596265440 989072286 993169101 434443064 444060406 309554391 663261345 216399797 542621421 171445104 673582003 761339897 834047076 259700795 593194258 832482684 899874112 409148016 682811954 807043102 959141293 556727520 793563175 886226352 887461558 687277466 770376296 823411040 892415080 309100348 488823697 608216428 852444679 213078948 784726531 63475945 201664641 82168502 908278130 642410207 708447382 909410369 963905797 45846994 491889477 30188038 892076651 615005195 625262657 949266153 988952850 104225605 861118077 664781195 990413138 829324126 869117938 767014882 955062706 954031801 974675368 529649843 594216711 736334169 922451329 306646390 688129285 245083926 288767193 675201491 757213661 603854128 726730663 565845052 690941120 640295505 659392060 963357852 969588512 52581116 873514616 754417528 948563018 206709355 460829598 536819843 686378239 67784136 257962801 766908431 933838890 603631241 935290769 152963637 504141269 752238261 769513384 350557410 432596449 186205638 583248188 299853820 730670470 876059531 947981291 664699752 825861399 453661645 587429177 362420351 821802685 969159802 997928821 411609062 786609627 857183471 985129546 89377078 767344364 236499969 315025911 252557006 476779210 853723880 947040625 422541656 619913934 941269896 955822821 629593328 966370496 381233633 970635463 628757628 978214122 852860872 866753125 990925949 994171134 558311591 887755280 644597409 996105570 501950325 807642016 768664538 805042819 149924900 875372232 636879537 894048803 808689484 951663993 314483734 838384883 41902084 787296493 830944776 924982383 945792026 978853838 440623919 866775323 841849779 879254660 62264112 770872806 954220804 980518477 668998203 710337589 305990563 804020327 575517794 673325015 881977035 945978518 286868572 439294590 80096325 464058584 702059422 726613420 69992291 138991490 532101232 910972759 556790071 825260345 523080243 619772377 109632446 387912347 426674668 961538866 119889477 285682774 134420107 163945042 372901727 918991532 685359252 834079395 617381906 954066559 735172989 813270507 335703263 951181027 500003667 516988826 386442596 931645979 191299516 726826837 148383161 301107958 582721376 782729142 858182486 881218366 207342092 885900520 591683423 688029080 859300925 869553992 364541398 771783601 978914006 990974125 960450453 996725531 436071694 462884420 954887464 975026917 355540156 425524531 10260440 679788217 817354307 973732600 361861985 824645831 111115414 383577708 882516152 950596365 676421876 902583886 414797777 897523796 235465926 715548818 842606763 864422538 123355932 909762112 327017062 806978855 163824885 276635382 650686597 684905042 934724202 974625120 969890835 971364321 187533600 757868001 35080214 106492613 790630411 826282152 246705819 760321917 34408411 431721048 813046283 899978053 128947973 742267560 619949693 807074833 305644120 972308776 683845638 854247373 69345893 374739407 414161096 436484613 615165315 709554598 372176937 525214118 486525862 733200095 177485325 700978881 49747419 337679143 697680683 970825495 796790002 833337903 652476460 673659011 854640203 860312910 429260539 819268724 622349574 701051177 213852865 780211327 160435622 645703144 886387611 977714461 833018816 911083434 327719746 698815385 736242320 854045514 83143129 412635093 966579774 974194668 81391859 253678826 267052629 466804034 578171417 985123339 326011743 845553398 39660331 481700149 174729040 226337630 658307592 994417343 357942658 651376054 549267596 690426357 470312609 557401013 860313263 923140321 25063846 482672657 905077166 988527829 3287801 377641786 524443118 773086376 224663578 962707681 722094898 735350017 288011795 845416808 265435616 566772429 399250595 807133945 122370840 473976744 656716659 711320631 285567925 695801509 226563515 667979170 505644864 941282886 359970382 616525778 770833095 784526868 614583733 727334452 143568615 635843505 497148706 851316634 912862662 957717839 500538370 843496480 952808097 994102237 791619331 853567720 153181743 394067598 516931148 761405952 340504018 404701465 79964183 339377563 241586497 666718058 285349027 724493831 909133324 936996209 140838893 822440494 498079758 995693773 577131621 985861423 836780027 946773841 410118481 967445004 437137493 981224364 34714689 49528288 137730233 447271518 373519079 626509612 352910658 997549407 263776104 882628913 168860810 918358209 993958197 997662890 227986830 758578073 659047700 689463615 160288028 637166080 606590321 893512942 931113445 958104166 246164187 480215455 2944568 73809937 205541632 518776830 686426751 874611957 449623025 937723407 341473450 566323508 397166019 936008481 99440872 109695778 16334919 955489270 844563583 945024496 128179083 682693121 533603654 996145483 331561881 443911861 222807118 330961784 100935439 948708976 305961226 750455891 280128997 469132142 294744767 831227863 819092956 876262128 803900613 882195221 860852120 903865187 342808738 445572429 898867068 903358698 915738911 939753953 640370794 748975931 622422950 857733328 625186641 756527265 508439411 679677540 657263680 827851399 988674710 997027374 694460803 920455066 652685160 817364512 707682326 722915366 490450016 785018324 195355307 660594722 863109509 910982492 297930680 331664359 457759127 779586877 965356418 969293351 849472899 925373795 112096451 640661038 310828878 598113117 214699891 381046909 48921039 884376774 719596588 935088151 761196607 845715054 604381546 712422155 943522593 978504201 825422526 910762356 971281351 990262184 986104956 987103155 140271878 875823106 654101253 703173210 839484254 877109151 536275997 672932333 489742788 737184922 715185419 957443071 211594711 925665060 559157921 615574736 487591086 554642217 618191179 632984826 809068993 931358634 638954911 648506027 604972701 799942944 557711319 656191197 82034277 839705595 616658583 737056393 137311856 476746741 743197654 887514600 270685027 896700840 357873410 958431272 253501511 414528498 395333706 722238761 223449790 482742306 870406875 964617432 467087410 911780550 33041159 419281867 39031935 916435800 865794590 899010891 152734115 513643945 783101904 902446031 886291980 988813621 350890873 940363359 478101376 928783799 186585778 496663219 387521646 522417391 211349087 534410636 382956202 530845397 589403078 704719108 578264346 929520075 530902792 998864183 957191814 967347279 353653249 906182547 764987110 895403164 975477813 984093376 941803119 960205200 174543373 908060145 467204784 498268384 567792241 786707226 974773831 983808052 260672539 793314463 536053986 687734363 615511984 757577079 94914195 218174942 713136062 731222319 368045275 487925174 363271522 367216479 744576369 815121179 219685326 995282024 513032205 896058263 47738710 437513484 652977421 776970544 736303274 916502569 426753673 710289929 745135206 960758719 202240983 798680472 331701208 768854263 14362871 380252774 221688610 748820442 610530250 915879491 632223532 654852016 419266369 959585652 457246451 886457111 224722015 873002789 349189069 557960374 716189149 924513939 983343569 998420582 575257117 795373211 586082637 810646463 490448811 514869064 742201242 881248834 847049458 903514931 191658181 206488967 874171300 950223084 559460866 785327197 102640688 482307734 426397014 693385051 288582501 486295853 792091785 933232498 958325620 972754171 366840307 695671502 982394272 999224177 333150661 913127617 946294991 974217268 344421889 966967694 27475516 278768489 674068483 915492502 64837048 384939509 410948932 776740343 558492660 776125974 849365064 969798215 734815580 884190669 406302686 826509115 32000028 128489739 429641476 620244384 130604147 232766116 785823211 814015707 33329920 503519736 208986013 830627576 378032036 415540887 165546502 505893754 662427709 668962648 277908970 963601033 920534815 991672102 930029864 982301825 196540293 476657889 230584304 360213095 862852876 871284880 149958190 671934130 760961848 787813232 978315349 998190778 203573686 633123670 753589226 817014885 145144664 597484359 127635396 543419185 453055825 878731608 899875116 983348199 11526100 69340774 322521659 708369252 5589256 849306555 667259484 822312605 3274364 851095303 933140812 961074819 3472060 215086119 98010394 359119484 615158603 672681991 173444091 651721216 993264090 993587208 54908869 877710953 192390363 664241861 92902889 184078443 383251437 766994325 711930309 841637691 846546869 949231443 318817382 334395166 837533068 845377169 209797045 458896749 763624620 939943713 851583218 902152949 396536761 929753918 353826816 500213728 848745070 894908178 752634716 864188489 23663867 409786482 413773642 759434389 793961446 912440234 528458096 828368092 654417728 858448092 260472839 357193442 523950005 583838461 112044666 248346966 748776473 808590879 929774539 933884896 342742303 444563714 933939910 945840752 672284668 794327184 676952285 973818861 507497094 797038817 10998623 872519615 738173854 814043016 843552099 936914453 291650883 353544524 134072318 994557130 158583896 995449927 257896146 620044041 403312682 909282433 662262876 839443680 707825083 780275343 509704860 924500247 439129209 641186068 849547823 902666616 971887916 999539670 740896132 923757223 991044784 998230153 369613709 566505413 233272544 567725999 459919701 540692273 52123807 494372461 162176690 502255342 612721220 912515638 601991396 794411191 325884412 946899626 373618896 538859513 603511163 802867169 127366945 148053061 418327484 969447265 784833940 934557182 160426814 996168643 553845955 818676988 40163637 854584104 274846905 903779667 576304621 596278952 689177238 789751354 159502900 877337225 471702985 881395359 824800948 888680546 791129910 999147925 950779646 988109961 622273461 950838930 535312410 975267066 183229688 437710601 780841857 889369010 305364724 668019625 350258284 686181990 632038004 763991529 365138975 464410242 467803564 749237470 646411349 723353296 434697734 473495330 762242686 919006401 236037631 291111133 483279350 993711360 567133830 786535073 678952325 911851111 402035161 863694576 337706265 459314510 718601352 725172557 456365532 535213522 645437451 967507777 159839270 392347116 698007916 825231919 110200409 133162613 244831351 664473686 50496148 149986986 764892308 919597882 913277447 970303949 301185388 324141217 70686044 332496393 788697938 903874486 367350729 864748002 846462538 958304881 740694421 758399147 568932238 950701340 586628017 903835299 988578747 990955781 779883364 892468050 905706794 931128678 146142324 224097370 831482504 997798398 822124576 900635278 15155109 833254448 598782448 703700990 345599356 989351054 817939695 858465691 536601876 985679032 102505292 958686762 610199472 982628186 389363714 659636445 747799642 810956631 954628588 981100963 512389571 949618952 982923333 984687259 302849644 710064179 692789314 794638134 975813893 983869019 316405859 759289480 387295685 896852003 406138468 638435011 667937633 749838966 434085385 922840403 480849274 695998329 354654315 875949763 474528091 497815858 737586620 978611405 31395222 460415472 781829586 918901974 81415714 595018382 134268763 201218775 898658025 905490846 905025685 938663722 615352098 904971499 770335577 918870832 663587512 729458997 591359952 938936257 640920414 945094522 371697962 793382642 224749256 797741420 214886171 407105024 92636809 290224649 405504841 623169511 543186704 986578063 93095962 793744375 215229044 624342370 364934844 598214682 120726906 456107345 617742533 773569794 876131811 934736103 285341111 629307463 57976312 766678890 207374739 554725687 351339398 893341786 814424183 982967712 808539297 943831668 940404765 992573451 116468247 214675129 756814224 997121745 33659514 77937649 198561546 264551785 414188922 758733881 890220402 994359656 236401274 979250889 568175884 702468549 665226308 792641381 814948080 816499726 460065944 565289211 598732558 798893731 526131505 664067792 83711908 810274998 571014689 987924009 273762080 875375177 631725481 770852830 936722967 995928486 134121212 422678025 336973402 736360817 635616745 884518146 983677657 986130260 938730058 968114213 773820239 983842901 18835547 35469125 205662073 469751994 510952270 667786820 438951681 982489271 241193341 754976571 220091005 870295438 167017927 798587687 237845995 555617134 561112439 891782244 856259375 926284753 721318902 771949518 82714674 742128617 316412502 931911147 828498450 997192423 822585093 972874692 360808219 568575158 461816761 614003327 613942149 874040417 922360899 958082967 759221885 923743075 619172878 920574839 350291366 753752647 288591931 985074202 939987927 983893630 740613146 874375269 904972957 907166625 828209762 866619941 566261046 600960043 75010628 145823459 448041237 586826071 223222960 330450118 979718900 993407955 181584977 741230252 151616493 412292154 612604533 991335456 474229773 999645380 822796490 963844838 215574765 827076638 353450987 570780365 374755728 669971720 166336418 282666360 754250623 764839863 494957436 497472456 225413597 636947516 150954710 465403258 596852472 642138638 209929312 555510754 479671498 660799410 851054013 890870302 637400444 671015644 56352850 296694845 511580580 759741097 699557170 974497633 428968991 976776298 549887224 799085502 474121193 849496834 255013679 698725242 548375402 987182389 400428525 460549664 522134139 712845681 916240802 948992799 370293575 398586662 322638932 831993964 492054817 582608899 125232870 704314623 111355418 831556682 487579243 969913513 727058597 757098172 880394281 974707194 196690750 809383802 767516138 813708715 238565169 830388943 544485970 710878960 604511036 889774503 156756643 723359701 656011506 976052675 623336709 772509622 821454180 887716290 154340755 692247401 492270355 638470512 828564324 897863188 966407973 991575500 713390755 980476448 610390531 777944799 935713793 982539271 339004669 515549312 813410154 882137118 657286600 901912705 649096596 750295259 886603002 996561966 391050329 778454925 445095890 470106843 132415651 537405759 535180688 677600530 186324975 500923081 203416250 582307267 974997626 977348587 378301163 980319292 325439587 797966363 220039982 936051303 187856333 569903035 635489169 963161518 613842154 758200384 258802504 425789661 182461006 999184665 62191845 189426677 54247181 198462685 533838196 696779939 714554457 764091914 37934048 427424671 807497637 986649828 483467034 780043636 78396963 252828255 351001424 898025796 159667485 552851408 536328238 614484588 252958360 493302611 994056298 998380269 912453315 974962865 279100706 458223496 490926536 943909459 917452717 981736752 695511951 901731193 584684147 956953121 724169369 783130835 992852157 998161185 199195094 860631936 315957603 715985768 268151149 534920080 959958167 966197645 641991423 889107691 161636646 428280166 275944524 600559858 977448260 993860287 813307900 830772463 12875414 99104802 87921952 104529074 808892426 957603436 407970759 573705663 939499908 992976630 144475814 580755889 319611947 434380947 855885804 963083124 347604685 694555479 210461980 310338679 784030262 913125038 786312079 955067374 767695441 900043418 119504269 869533521 369038962 678755989 250027844 763357273 608089409 989071978 126516988 855076814 41795685 397274753 1822157 153801134 406184220 853839009 978712921 980167557 494402451 842079996 959972544 970555509 697666054 810847086 802583250 901152381 788604934 799110416 511816304 927889971 740890630 765042012 175936823 456563874 626498669 629784605 512742586 795361110 117845954 553412442 22104698 366622256 165919142 797804375 793506950 793564694 553831739 649631892 89873249 497517971 361774374 758196975 761419223 845693352 222552035 987657514 359327045 936312548 578867756 720671279 167766918 739448455 510627040 960972154 904016210 907039952 827724735 950153381 374489181 740953309 185027425 485178260 80378498 440727125 305857154 968892534 188256949 512129545 291625166 521750872 451467142 601652244 809780460 953686622 923830138 952872019 488348576 831541046 467551229 603992362 437254629 590923448 780067696 875819563 130919063 473851254 708304255 897976608 738529197 900653569 625610034 767875273 986810735 987764599 93036255 385043459 104896570 613882274 852961647 892653288 787211762 967435311 734596299 916652891 508800685 944657170 376957881 616187465 498216363 958881929 538811678 674201174 351878587 976531527 354814282 534835432 430407274 896890387 560428091 653987166 213138297 256523556 759004926 931411839 916431262 948055984 364044585 850999472 334818158 706290759 229496248 936260254 573852109 925879784 766627963 872257997 704591466 748192113 797055521 876339005 115115860 809271857 426506156 755948528 561535906 835163387 152098087 530620507 755014910 862090787 92725090 477902674 555828341 628352742 707952412 800719641 386398982 575379857 478048107 856046263 512626565 696247431 857246082 938058232 930286487 947792999 499974326 558958151 61929929 742155821 54623200 809422179 342893628 992997575 718292016 857404254 791901389 939617429 690994574 811703818 578617811 763156285 80779007 235546085 226005593 884340175 249366255 657806213 555323195 600181326 214741879 469911985 418354463 621259366 665289892 857587440 527852301 770531656 96281781 290825247 913976248 923166413 530566024 636314768 155725840 478884064 220728356 502108337 685496744 799407399 832024429 970496387 346484838 433890268 798350877 957965175 340312293 582045769 830096929 905590883 725742399 900298655 294353014 973720066 486331221 724068481 221863354 409096551 618519434 906502976 439763671 884365631 151057087 640254591 92850046 532781406 583302654 587839245 838624933 968950969 913461852 992931969 620128047 865828868 225975892 367488806 294103345 379722870 545088057 734445241 374542229 696533022 224323162 821097728 811425224 830303994 640858122 820815352 626467139 840732819 164408481 407368018 304310669 502471885 525937071 697836939 968668125 985565289 640175688 802181249 122701147 190929486 394557479 953468990 746070377 849134053 364293380 556557627 950326765 984031537 27659942 240315783 928419279 961038712 265147303 526039651 215512009 875685255 106608262 474246171 144970629 908981646 309266938 341994914 105821783 438098102 260346112 787899604 316961379 895954407 911000754 914904563 306548200 914163104 844269937 860430392 949955613 954704830 624427418 882251963 428243994 776207139 931187343 982780164 416874075 913393087 842585322 872575658 498961776 633726489 616155162 858277268 489028880 930917561 838112690 911538219 288998013 307074641 377979279 723779859 788964731 794516067 666140093 908682802 377557828 588693882 979768080 982105660 60879735 200882305 409069690 907919088 535712907 987603005 434697848 971319744 407857304 479592262 938690311 966283446 861624149 915630362 274378382 546136745 300314472 652823825 151304944 791836927 47341842 891191371 89803918 336169888 257347016 957418545 473319195 589212370 880119081 880675873 540038857 775585801 424460181 453749635 600822053 693549849 102813429 888106481 653595137 790268541 845476666 933623731 904955288 945543554 842364128 864738744 851432386 934726236 524447079 692234320 659938921 712944470 283620389 791567576 512319650 640687114 832596236 884568973 833109475 873155266 253989293 655982004 343220627 552840698 723364213 918235333 18448578 601782716 159557282 356907476 91768573 563545472 485909863 799970485 148997328 615911291 291051327 326686389 331608187 575197520 978877842 982813974 678230458 852789905 422281022 618316512 214498277 801854407 263998302 549645784 501709603 796020620 935647877 989282043 319374155 959252988 252902740 677993909 654235831 662065530 971390150 991040968 546889845 749059969 12597344 238539031 510851515 837860821 47672855 557987847 875556554 945449031 231822934 610206140 332450424 869514843 79316280 430290086 686993784 824788438 846637221 958843470 726827123 934036682 785647433 890209993 662825829 863510524 203428911 668212414 114953784 164423651 939674050 941367736 196078195 685051807 513721813 843901026 409829132 842726476 224327793 576348895 827302915 833134645 861669723 884010676 284318923 713552756 10798730 431871625 5219460 550376101 664682379 748812662 360904642 997376719 842664110 986202964 637682303 783498268 417683698 818487625 116055117 217490072 816871765 992364154 951506231 983014458 792202704 950323624 738065329 974091650 877604555 924438408 707260090 810411012 38289313 802183120 991341004 996175813 196304706 767476314 108781353 972923037 824531936 869008012 391683794 931290547 236752535 334022810 754815221 807979688 690304234 905749431 477467383 996575542 138806102 289275821 427360645 737530615 16752761 68407774 968012034 979968807 559754585 921076336 933068270 974289352 297324484 951484619 84185956 616098884 160398556 531724136 702760966 906843078 436638232 554123471 798867533 894957318 108202674 566870735 617151815 671140261 67544950 943641017 767472994 841266401 312934509 618216350 839310081 883972880 948132837 955494442 934872487 945695041 50799453 313501625 338439116 704185385 797861899 909258550 983988102 993787995 705568469 998787264 169283499 620612797 128576041 440537371 955804301 990775286 74499304 388458090 580599195 679372243 656369459 769927038 781735511 798389109 809199513 829610050 754173627 828197540 897668472 983997024 892681822 963746554 394822270 817181499 52712025 778923528 831536119 898743860 824005614 837673189 181541871 650473483 593190246 684532080 59224470 88263686 357015458 910282949 615632539 669374076 173983681 574333252 693202257 919384003 436201884 692534686 986486501 986607555 502532001 876546791 134513293 244118324 557202190 679123375 66498148 155333890 858822145 991656740 673716237 964405872 756207114 974718836 497041204 566656318 482462802 922923236 377392133 913858129 744924680 833759335 197591562 460227976 891092773 914700981 44540332 192557791 226297258 517935635 533268414 939902417 692524009 871280699 584539766 948274579 144213791 260346490 499079965 717377582 689230619 952216692 10441230 359195200 529338553 788889110 328657497 977664540 100789368 129743125 999660856 999770644 48550519 426921399 162546240 648771458 877750367 972795856 619489979 780667457 663468981 721258868 132648985 283126226 97218778 481372636 897743746 938053323 757303461 929946452 184976685 429280079 372690864 639267993 769953334 956467745 982204790 988903470 470922056 829196765 680379598 771715324 623737840 669298803 863513006 867040361 156491475 282753046 89956731 710746630 777629097 980173510 876059386 942261876 440002884 520773217 27419681 750180661 491536575 624656174 964482546 987194280 445026094 780164160 430740071 516940687 254329601 675515359 441598334 842831849 79073305 958182198 628585249 805688405 318172565 604599849 698060265 887783065 954590963 996244509 317778294 505840721 416529144 956721911 257346371 272863426 665920130 708813564 497227971 509068692 786820290 855399773 958310940 993490673 97097872 491576305 672608804 902013397 205255933 991306746 408590883 925159233 120345174 750501850 207972536 919261805 465102034 633768308 956833718 959537584 977731727 981538914 608295841 645170326 860180824 954063435 2360309 735119945 661519918 819992908 219712558 684543876 499215227 597180239 686265196 703662040 46810355 479363668 578807826 716463461 795675100 843837790 164410103 752317667 36139582 125639603 992887628 994544940 399148204 575637567 766682098 770081538 125830252 722176910 528879939 989767443 254653733 971714277 378208503 792435098 429564543 716666849 967855408 967915178 257446369 437876339 260022241 815318375 545457060 707330005 195568338 470842160 19673905 631781830 144038321 377989444 940958136 962928871 494039214 652040917 24255469 693900412 120302085 484739751 738014255 767537526 599899109 701990789 200935704 490972939 959124404 959365072 79267879 135828390 339421476 883768189 735953752 843970403 966169601 982322560 617468883 679596523 116180878 456842778 77972652 656426380 987256557 996273267 588684944 817317659 590444601 948579282 285032833 989417772 611764594 696287820 722641024 846628828 896255343 974227579 907017297 999024281 368281361 467436890 557542469 940387272 469946680 477213829 819251423 981263889 83623668 427115872 616196025 755848976 435449681 541190526 582012770 707595469 286644827 362735073 69214282 996184717 318512629 851057025 6055997 196256410 941448547 957870002 843881268 962615347 775661224 943605295 9123933 174344242 782077817 971220928 101756675 261825411 188377093 232002580 99314951 194230161 946282357 946648985 528715680 698108739 825602917 920823987 178676009 189433940 616536361 674848391 479126365 610787043 864660807 911297810 470016897 673153811 48616845 449420276 66989070 79543534 305141511 999897378 585241103 987373595 735133638 866842002 77090431 324401029 371985842 721719973 77714288 481636388 516435804 917245737 901866910 910969535 281973228 435333738 239876874 242579421 324739508 710065698 874499762 965509230 720023049 827784508 646981268 837633250 533392229 755787002 612600060 769130182 332286668 489698002 267317128 712331009 983041562 999225954 901910572 936771457 252280399 543395314 453853662 995982260 496322921 821950896 210316598 995065661 364984020 452063476 49102714 312583433 374644225 956821474 505817519 811142072 194733694 648781522 981278395 997520920 211712900 329733504 78774354 393089490 457049708 476177542 367284021 383812528 552310995 644588424 406601352 857686143 762540249 797715427 807190331 812382059 376181680 832568003 676013937 815759227 334182265 840242853 147450672 413937574 184979976 310194535 139446825 185133166 324622809 947735921 959603984 990595394 961233473 966156676 173787699 817816574 948722255 969109302 778849193 825037258 54529702 75071079 28980698 471956931 340867766 879068474 262215723 717435690 680884435 783093747 763191333 778286225 46844328 581711643 863336834 997703220 764016151 921561908 999642160 999941638 153442615 720470312 312608185 956988128 35762278 841138173 327806913 632159421 523250377 962268117 773245235 813176671 378247725 975077139 128461794 262457445 94347624 707162222 427302843 593248255 332426238 926190994 449977871 936187155 918401837 960106223 985256204 999476289 39519808 205991727 420988996 706029833 122368600 642094026 888748145 917973305 312193585 903649488 211866564 588918254 379316530 839661173 617597994 981667262 355822053 675707380 933814319 963156830 787283440 817920071 265907467 624356160 14971745 492578179 486142652 699250948 271301547 788257396 715332777 722607628 386877763 813998169 757514797 946603025 852315030 926937866 164909852 532099831 447501857 844219774 293453929 860295523 583614751 854170903 794535941 952169825 471386418 834457387 784426183 886400543 650681751 936694318 297346408 711819336 285434358 479932665 460751685 564983763 350553122 829934601 812385141 962988358 489609078 638750780 71354401 120433922 234748551 891706950 236477811 323033370 736195768 844357485 924445678 935830313 150075723 897641009 355762801 469507440 50225433 409377100 508669896 648860429 597571999 791828784 448457225 637640114 640381153 967610549 700142436 983680798 236622854 730979179 426229047 705372234 947508652 984329665 790648369 989821905 519916929 873473023 637837745 814330639 391055266 928688508 84375955 884315658 25771636 685532702 86797655 783958124 528380238 885469230 844466540 893179779 551018704 854655068 617058430 957402268 422150431 657420220 992020807 994050411 394019658 747915022 996204250 997158673 48995074 60663718 42953691 778737033 379566698 707098536 920602271 928895322 597076609 911202968 883599363 907678648 576043297 600263385 338545857 633764598 509039014 638304042 82320779 797294995 586790277 707616110 684119886 955027759 521030338 553455916 962254204 968341403 929131506 964928955 71956236 742792592 846479965 914100067 423260315 618427570 644527290 902068134 753336971 883757487 932530371 977095630 27509220 836557112 159300608 704313495 349208904 743664833 693822108 921692700 699762606 791133959 831081513 843688594 453135632 550971573 707749886 726133897 2476240 948577200 985704009 990700080 49214941 687134828 822388734 908163896 571824548 651027568 178275520 979252456 562587966 783629655 300886632 996379196 59147993 655554579 774886234 836927480 795866185 861823244 424314261 548455232 617280448 980338181 13559075 587165787 567761116 576178789 623703108 881983560 888551925 975470868 603231588 711287363 643317696 815420572 931102718 975964672 733116145 812030446 43201527 623304307 748791162 880322945 270724877 843715542 328573858 349684474 7544220 836181719 795678557 808402804 952887880 987212793 670830087 802263141 397517987 862244407 943179159 976405377 5636979 69809589 132939099 809422227 502086210 912332256 425081357 540227880 19502217 443226041 152242595 194258099 123302777 665689347 864645209 902100270 858682599 925008161 378868654 705055440 472006913 880211502 405212598 753414428 412070999 702956359 28166023 765261552 659839303 962804262 129177326 173790117 13737671 267499848 7168139 179561877 137305818 599226691 860233885 873097620 405856878 749856881 787802707 925493693 86860981 505205752 363837306 625470653 105044088 652314926 472955072 569815400 20901441 165965610 73944539 980711000 930919545 998412046 802346321 970381116 340313737 757231567 804800556 937112434 83649857 219984385 608429357 726473540 442903007 818075103 579169348 815646330 436162658 438584779 455306391 773088475 669053459 962866349 19488917 952719065 719773559 835655610 985744013 989695010 470090191 839271462 883917394 935463868 33364250 414603576 497818656 970807245 694077567 980808926 786476623 857124283 232469538 799284640 162199926 474172138 574211792 757142290 898927046 977004761 781046499 817606406 32411413 494873454 948308533 996103514 470581387 955755258 871025554 883830611 492665177 781200563 163213973 464376422 919647491 940186296 583016290 846874383 243540530 736368421 619502735 841261057 17716430 714082798 132650377 493824505 858118 679910601 713178392 879156629 224355502 515940464 928557131 983474028 206016343 227372536 137743854 510076950 295956262 998849005 607119051 975747190 722553974 974382514 628304224 793310422 180117338 955662172 596634087 683034927 104054793 889689220 504208656 558074170 234131212 303112509 808437014 993323999 9398299 965531427 455501805 639375073 366942262 547659102 126855999 578069184 871142579 893294276 152297510 188676038 136041624 637449633 78424649 814023044 557245529 952703149 695879164 800380986 493571317 791031786 51166258 105833395 690491965 721588064 855997402 868503486 930043482 986232021 159721152 926210408 119857351 477927242 190888885 329752722 838168267 888193812 174500762 594893949 547341453 907223071 204849682 298506702 221156223 562684007 716936384 949994287 876627329 967767434 482637268 717190086 95882803 167464256 993054728 996573979 992007687 997520695 857439354 922491746 122480856 274894432 600497950 726488910 356940707 942578100 157457494 749110299 746981274 851894319 215279677 228393864 678100937 837046796 267446739 625215356 383674169 631118478 827617794 858265626 27127687 840114949 763330306 975983277 759100001 771877727 800649596 806058310 317599169 596206108 852030786 870057389 762280591 862974140 949539129 996652335 840665347 899769121 392589817 716778087 624935435 957056839 42664392 119768886 420799645 606984563 915842849 945385650 315542555 733209623 835715938 953670007 272664462 716355542 82182636 218046422 296950205 671537786 164268967 286729215 44581470 331138004 918702209 939153487 617292574 624099758 570643612 872931260 577113988 896901121 74956430 877330700 164275305 289753417 847636108 946414745 991531101 991674991 659092738 776609852 663583468 971720756 807346948 828937837 214215993 520731821 876094248 883000918 934326089 991764223 150059149 717146205 694045735 968751317 351963988 579592838 74533274 609891443 426915428 857809865 952534932 961272117 81689129 699186403 297529909 929878941 325904211 979236187 543176551 664008204 700330302 922082154 269126832 808107557 700758329 857249048 226008157 471084750 553408583 721612665 508996771 542501753 197872532 303630987 263799541 692502531 956118735 971647657 377744467 605817255 404253899 803504748 70447027 686379658 784302375 785987176 600699996 638896626 179777945 721106298 686408751 856323165 650740967 655197601 948415751 949801336 402035575 436124948 991252450 991763245 658243587 792206915 963722338 972265212 505246333 631339654 556736974 625575877 448065991 958933399 639625175 802660566 898441811 978249824 332027489 890066777 979485166 994366057 500236271 869295642 592412002 816030201 514629158 519603464 245311198 787894130 105863900 929310482 663579049 945530092 733738921 742120247 409280388 881332096 735715232 801150372 321440725 812036377 938853510 954510724 337083583 406401939 270470519 483370685 264280911 368259046 829741806 972463735 279417778 933674011 591645436 680788903 428963976 636825461 298759327 688669752 347697794 399686901 972310286 985782961 79463457 149952121 528708839 859877520 486960615 683455224 718421052 906301673 825793616 979995200 291955574 846269417 279290066 871787443 491704529 691079608 721992917 732349649 257662786 880270791 300603226 673937360 124885530 683662191 310222986 674095460 4175448 244938667 988910742 990637549 704009673 768324818 8516269 161084452 9095729 454261084 20206701 131577207 310193168 413186771 216131673 801901190 14516239 184628012 919762833 921638488 118160346 680454085 311204548 602053341 257109338 477733631 516266117 586311378 543818210 568985843 649767606 919168671 92154619 736163481 59549421 276530382 59167701 591113095 984091765 993324425 237716069 269243909 515651968 807599363 796521649 813146817 512863439 528091221 151324336 392456916 550694803 583874019 997766932 999142618 712491376 941673795 471209396 842934626 160789642 621036798 420787271 932007962 103524805 464121141 288840807 905180712 243309308 526119963 942367446 948694438 110756719 276597556 888647625 952662487 686354641 871330156 338480968 836286435 371018096 537539400 728082037 907762574 137845242 678429335 141861582 448314869 144270480 892823033 769389355 852821786 842297165 986008611 715944177 753083340 967483976 971809844 533757931 584024655 125602258 296549959 459186236 873117429 423527442 614443158 926665914 936932132 218428988 614659430 981599470 984915600 352673784 591281481 410987515 952358693 33326723 802599060 579489998 882317511 513068929 677036444 704583924 804918500 184409294 567451055 214176406 328906672 415820128 800121495 930324122 991656124 260261590 897729814 944479847 988464453 197697873 347051886 607808261 822854534 797680870 884888325 551899052 830769815 728865630 974112723 332424369 414376363 954879554 984858855 91965424 183785413 314504591 862458366 253736830 960077549 414785741 692881901 784890044 873271346 3780737 793338613 251636279 914478090 66160323 143758407 419498357 557618859 388495604 635892427 844742181 938927604 134937166 521324748 74887613 711241071 42653639 141833538 514525633 698323800 678552015 776099874 391217539 955298449 245429110 613105306 373010053 999494037 252471153 601638944 666091665 760367535 997433624 998201989 560910832 630050097 298662312 344206351 583507523 727915511 76680785 986632801 192065471 194148100 690313051 767608923 436852613 880026061 804610720 988203094 866446022 962246596 798211808 947464267 553672608 946117477 536852038 778485014 221711633 285241302 235692875 504874237 508907605 725168420 814029333 909309378 64918741 180179754 188736576 685498720 538920250 946850809 357763682 409095641 418732160 943447558 666740588 819843926 879413241 926451776 607735445 755682847 262533639 530769542 376019268 634524903 820127993 922866458 427173417 893325826 790697476 820060104 633079029 874867669 405023897 978582525 464511118 846990540 614891245 695565949 246588638 327222804 758288957 945196057 90168384 616808232 991299449 999717797 766293739 950246166 371879175 439545840 712444911 807441555 444684455 864884633 340027455 724849963 27108191 93818943 415873614 780550993 180574826 474425990 166836873 844380825 917720086 919074109 435520831 724370982 236309477 578557775 596782200 717471845 722305709 956230670 480864157 679252062 269021845 660694605 85497873 954497867 738854460 832076945 376913303 807898382 575277447 978635656 326136102 542906821 700792865 913094807 462854888 495292042 640164229 867610257 934970906 982281812 592115826 726192238 542733555 807380307 682916951 687277688 789965169 955155224 22983205 496065513 121712297 401323940 363529737 849361378 164393109 472338835 882289800 972628518 551120473 831261302 727039104 857746632 589490298 743618048 309302694 740364562 336548512 482999074 341655435 471953966 207500908 622091635 396345694 582606470 802722009 865352275 102383527 959858194 393031308 811275213 352581856 785443847 705427455 807687682 864161386 867107265 322793703 478829496 140368621 607185528 992622796 998741103 86583209 517001747 593468152 798331405 643642422 913751153 250585400 601404129 564199650 588250725 230429355 815432979 859274783 910640326 194736512 725114690 72815805 190376588 775923002 890813819 193900136 790883846 244431633 679250687 104882505 548861968 655497160 943672273 365544127 929363861 586860769 735349071 114061003 879357588 125207418 510129365 965752700 980416891 263330721 612574968 553623183 975400801 516360983 827479964 76075828 490865402 557734848 686685916 987788057 996688048 232472785 992064442 215575822 822090344 135980345 843586475 176857831 295277170 75071271 724674248 347318766 840634811 42152920 247844980 170381038 228215381 891152251 896910291 219065936 413366541 335328123 660481403 698138710 942426961 852284635 919133589 967874028 993084482 865666213 884519672 903566134 934060450 866637113 971697973 276215924 562093602 647570227 876157306 15421853 563753381 336284993 851519532 677498908 936901757 724375546 843682689 722247977 945098024 311884620 971264639 220301055 897513945 958260073 986587857 443595125 679273928 637043321 984990438 479946510 916750908 219804949 220132695 409276414 904588225 879819995 885003868 449371034 453718181 139075541 536083405 249946731 392630299 549466062 815785885 137388775 877705012 920788094 981606280 363146855 904555884 491528335 495163607 947331059 997492796 758853867 813839605 528815823 875887942 738509140 888335898 917031946 953303185 768400809 801959317 873122111 990115538 235036264 491245665 340627282 751736448 3184039 299290064 793625926 939785424 909814167 945862289 180346978 295098261 736926097 972948523 243234261 671896991 756183711 854152851 672373102 716067578 176312424 760499254 393786391 433523169 87787890 520931919 498396543 617110393 316977381 411019614 763933965 872251944 135717384 137277013 176764699 450340396 759378490 903608396 604864700 735149330 601167096 893390273 614419896 818537784 934375095 974658743 639054409 729389674 58009042 174718881 525861793 611801528 287300697 437741262 519919426 979803775 173474412 712681370 716208398 771455220 163639703 662254308 412882926 517153528 698464192 758992283 225485292 434965403 671896199 918923015 908737230 956715914 442841665 850863254 411316374 477764175 153039916 515629521 631243598 924526437 93747402 930605034 915453432 915662868 565027174 603475309 232541493 295820513 560796487 966155728 16240649 705702948 324777568 841820644 865635563 931863303 9885790 930434981 826200999 860310431 551546515 824103150 173321454 615271210 105652049 825744252 550325573 635177304 464410476 563748377 268106556 599390309 743556357 852420089 772703437 854488175 411330004 939618491 851789581 917800218 315508567 325364904 313762785 763437771 41041729 248823670 530050699 591577575 937066493 947287276 346399061 762436801 117192931 468094932 43574371 313769824 669527647 823740495 950095957 992584919 167337442 205700719 369001735 715754803 396017474 433076855 767958647 811993614 783896165 982215568 746855712 947867794 291438721 402075592 82294489 726957666 626299197 960137317 224766785 737533606 876480752 944309705 548871172 760077631 411628808 828289043 427168370 591764716 641802104 867664648 162698078 883204277 810917407 962113558 424069747 505834523 319162116 889441033 252350246 841864773 672019762 811309352 73779177 425678317 358289399 777224764 238027205 433644037 839103962 915004342 322067049 972319771 66014100 643761233 928031001 953917840 312110776 632929824 771603283 826966331 293581364 829140002 999873216 999984361 76341657 831039801 814981946 951071548 819256711 922834727 684307095 896267387 420097870 469604293 425179274 990275844 350476422 827523741 215722255 887524296 28349292 670655911 204233554 966577556 289769945 622526356 421849557 625999672 464269650 812526777 680916196 990265090 592953535 750064708 509569154 793099528 69938339 946131190 675198184 687110805 561881079 898407209 410081658 819168948 119505548 522604889 185026974 910347207 431564966 935954696 457656682 891653543 46350665 295676930 994597826 999621248 492511370 765627766 919440031 965803420 944185279 955875545 157113054 233482497 133204677 578903558 399832590 895076052 242437674 256079716 171026004 284849211 344342381 714588849 553163407 828783721 851698883 997848364 687834678 954871473 910271292 956620995 833166716 886173528 544257687 608467434 104776054 410370530 685947435 718186356 189871611 346004443 648751221 674821852 291867047 758070531 501696340 528107231 687131832 839062662 748347916 831164005 944424133 953913336 96974605 473621188 478842934 650025424 530485948 540034848 842850677 920904954 429242561 559320551 279084632 366339608 138867429 876309810 481493832 638932130 934179419 989141070 240644719 512621225 814448422 902813386 649199017 995440583 873523879 989474172 458815974 741546540 333670902 965080334 633015946 922994604 158486899 906916106 698726573 818640100 248682919 836523338 987340822 990176278 532055068 647888896 245627537 591295161 293557055 328825974 180496564 744083131 849029248 995981449 157066770 178620326 151986739 198955391 90086543 996407105 21293842 139743411 289161651 535479075 541972060 788252680 388612848 959813942 621223522 909031173 275287707 650743466 443571195 815949233 261892344 432059164 378663938 991701327 218131645 490084805 342635576 568406292 98749893 728276681 637947242 926466397 196332416 621995482 171778303 332437275 21390698 472613902 101891244 581675500 593052839 858081391 745043948 875819065 159523992 815855896 569888863 746863024 861943609 906860321 384194646 662577564 301725510 737962293 591230367 721346112 971448555 990887603 832840140 870718719 320392587 853941007 185639361 434547478 867692241 994507871 97415589 561791908 11228695 958590353 294157277 779377197 777151675 961893914 304407980 541698887 841469345 891199402 648994547 746891826 104464551 813426698 440753372 594421792 314835127 422520983 237503007 772372466 571674088 726782338 616450967 980231126 208142494 927215444 684595610 763806094 720440585 869535139 312688076 680044533 102817161 889802376 40932379 109176890 286398309 872229507 151577437 970492435 737939009 748226970 773907091 879790828 545850585 874502213 439161584 983259105 344519912 999256546 470470581 871492403 255771902 845950854 651399219 951654955 838840116 925761280 552537059 967017611 911292182 935250029 277494468 391240588 391901618 452472570 408886596 640992823 651217317 965277206 823157670 981049836 709710083 879247988 378272471 580785237 904207826 927159085 313089417 805281126 643557051 883531722 974739213 988164963 146922458 267681989 290212018 560910741 457366453 828694957 351540300 647161213 566726118 872464243 186968939 939361620 232397534 590567760 451169267 610763471 11944159 332948262 874422142 943196502 439329800 609710428 206061951 768018073 117668647 968870825 586784608 679625703 736616205 989360017 934922687 995892644 48460820 434859355 354094009 739401286 682442132 797712575 442592576 746512481 256249138 485834409 695204436 709975281 65468266 514061061 271122380 766479158 606565187 958916817 594328453 689111722 591785469 687759760 161645919 992581820 615203490 926190086 645826304 803815353 581232570 952303532 406776415 842311152 754990981 777786071 82800517 802004867 814606707 897327134 85174773 782426250 324382123 549674649 519599580 788936997 167093852 755469682 273943091 320975532 312538250 889976288 66928616 163038569 800591754 829486075 464245075 820771208 738441781 826724986 19420285 894190973 762541645 778328656 884879330 967746493 979178223 981988300 818089141 977510447 964620653 972444937 788890810 867596670 710093382 774967684 570848046 647724394 283458424 781550151 883305748 966064783 602227321 895836803 351445791 452339639 960574921 966346326 817950608 877067815 843269584 853035210 43291786 621202841 732175041 925715592 975572117 993901977 930921648 941584417 776038382 823275501 70686772 316960969 526885361 782386813 708411895 740711233 225688478 629547955 857028929 866334392 901006360 910560557 860101648 928353698 487351996 887339044 101354912 989017863 174475642 803913682 419259696 527543920 412470896 906618892 40098990 223187824 431598168 884336102 677205633 780172176 551319172 733171479 293722862 346046508 584514970 745830660 250261731 612323284 698054427 727708945 75406397 267135279 520951826 720248684 550517132 974439803 505666189 712124458 18881235 396183558 818965511 966877945 610004190 658509278 394626230 676869889 127777649 466574745 457833792 961126643 457699510 944550253 684919229 920232096 979995397 998783284 630137318 704018559 649512593 910098485 444309716 519235526 435932443 487227413 130466369 882585511 585896121 767459705 98919861 886068064 124038053 327659933 606358463 751619982 515935571 822247390 717033497 868861180 765182406 984363088 114604139 550787466 465186626 873404395 79133809 780560159 932578556 948239960 969929511 974077577 901137149 923926038 286927634 397145253 520267608 844151195 223671183 867073967 478014819 737495571 542517565 549302800 991246606 998999431 203054055 795061974 844568155 980899025 404997758 755128313 760730856 855171928 15288696 143968599 677132189 923649058 460606783 663865133 666513093 683712440 600423935 779337730 632448548 681472880 549901704 611234010 957975120 980468422 645670123 959914704 891756481 914246096 703389647 861381759 141506709 785402184 420757223 721865529 972254529 979022546 718749386 950521087 427444389 705214601 18715599 555535505 353229671 484769466 493163361 962410051 855882906 906580975 263826234 276931673 158712768 658421246 656575205 715712223 717816286 981780195 164843164 725143093 306643787 730485083 72288298 621358727 386506482 461273249 777478241 835138964 364422513 927352809 775197776 812306910 827951512 829694588 700838241 772346543 268934397 360444412 142402097 747014514 125377881 623524463 400821737 506975001 968942094 982151701 4910716 487077465 890709957 936535006 337232587 663176635 407441655 763477356 213745047 227308889 680782446 814162895 455599296 506315854 318748586 702570214 356542126 450652431 444710282 786480310 927686501 936701830 971588757 991473615 222083733 785909811 203645056 521903322 683306258 760587000 157704084 895548474 571997173 890269737 502776334 987582378 372687041 889867694 661478130 891529410 315574724 346159337 234308936 325829137 383768411 996401446 290010252 982298421 184055145 219217742 542469965 586515697 783661931 867982166 501940165 897186401 381667793 903060525 80843962 140333206 553116616 632089335 417544715 925157807 324507384 554113517 271771283 616991789 619772301 814013575 21770391 558789302 717950538 955913895 339817290 673231312 196760986 243696904 643197208 831295128 222501758 905082602 711709601 880532425 173444474 314155157 710550899 880578558 716210214 996461414 883929752 917570223 998558696 998979976 772528703 856064445 311965642 515512973 313349018 845895798 304856591 819944524 5374492 183801425 870218352 895212787 875881410 903282386 335419526 508495861 260674373 799120431 3719481 261078613 765272082 801428008 376854660 524166429 296369443 315954379 243265183 632750538 647685414 983596000 55658708 597788916 421074712 700511247 147363326 632574439 184825010 321310114 601458216 682611120 284256195 875202676 114608417 714247326 987123358 994168133 876782754 897954234 413704947 818630775 987317853 989171093 467726010 529202975 830755947 924250201 329326508 691718146 276839250 758485115 170377452 945215233 799920351 854703322 225002396 400226220 410220132 500076581 83004730 668727334 137173534 687891765 214652832 709387375 756980814 973915763 562709021 574095902 774123078 810402051 782690323 842081318 474375459 782515804 708494080 963658725 394918742 490765721 571093047 642784658 46411186 782760152 26647731 87433313 207132981 245064598 832429 879454312 535168042 598237391 421100578 465799320 423730510 968451812 491386839 862598976 416676788 669639555 467407411 619285178 230889997 544259579 859439677 879705579 577030238 790313009 624759024 756768865 292967919 728724256 549040457 931712336 972007268 993739258 629596194 809650827 183741980 265519218 911028727 938001756 393089544 589455931 396990686 707545378 717039434 746703365 861125750 894034050 645724578 927329863 192837647 303236082 997941287 999116862 713937672 945042040 200674778 330012774 550149968 771800355 740470786 759832734 475424193 539992506 664886175 685254749 589022967 681520678 725531544 738497704 926444823 974502501 255824716 966357218 185105999 578022326 948259707 988149871 26071201 659078125 205576848 635595849 54090804 119443437 578566300 606717392 920677804 937942449 470131451 928926100 284131228 636198327 351431989 557167165 577213896 625089132 277323030 664622771 302479167 952517528 318761025 912793412 455112666 935202177 560582719 905579312 119642118 965686773 189611385 992739633 585744673 872921866 251775470 522459697 785617086 831186135 521540886 937954007 855061596 890796313 34385140 944730462 510946323 549051094 950962656 958941627 937452327 957817189 957266787 963603147 86147682 827736588 126172716 720429474 113346563 520683499 316348435 438682330 945814749 953561386 373075750 756041725 689746633 860968089 21028629 858159413 106097929 258836221 732786747 807644202 362836349 443232234 641607104 694565280 158309111 469131350 855494005 912717900 286739818 983772763 496959037 971514488 45629532 115155894 575112191 646865554 682835791 877982595 47633382 456395312 715631284 935775046 394841996 936205028 641274263 925507568 865568359 912978734 43922024 954933527 206326620 889360230 727053498 750234551 206638075 518871860 386042813 575645829 522181315 734420791 145241427 646601092 438838129 672256446 565874397 800237957 112664502 724005250 648182937 849829585 229856865 952357196 847871281 875856587 50462856 779323278 831450605 940458622 338279725 853721663 158326503 682954809 872376760 954569390 296601984 453390082 568342466 922524533 405342342 866035423 282979738 786034467 180655920 525640034 582737482 922232641 231398250 270467577 55997050 865483285 712102866 790583067 514874585 855568372 192959076 378396092 852290155 879026382 935100646 972592087 143760091 295231220 15208509 114451642 189853207 842277244 499052781 631305811 352773982 835055361 504552693 759895782 119148069 330751280 702846885 776140964 77888183 190619564 525831121 969265878 373097385 945310272 417212489 652616501 847676252 933459752 314411265 355035924 821674642 929318820 861975722 954841654 913731052 925660944 740407879 882955062 830547286 921338599 707812428 779604483 270714678 572668547 786315286 809724346 570428252 893080651 570417387 732516105 727018830 994512647 539796782 920915364 550485179 999016733 620011610 734576630 467595909 482988755 397299820 486317880 545942852 623266324 784508046 979452735 190468315 279905516 189221974 506248351 923866139 990878881 740933494 904286587 418428826 594809690 825458714 994831187 403611210 479441670 352314266 773080297 92732709 923696259 779262811 951351726 254016741 416722727 467277836 740982001 404392926 882207490 433833367 659575968 375733716 948375651 865055848 931643068 294694879 539450821 780005801 976382861 894400195 906573591 999104823 999385985 441533762 878438888 530550179 986683486 389019673 930169056 131424050 462155142 11155947 726333832 771099743 779301798 312507144 432329343 418691728 680253407 105426830 368990656 283180953 856203119 339400896 821459791 901238907 948689012 934513661 945224012 867891624 992672180 506930975 587567211 577626479 962430218 178647034 181982947 178064760 235791818 278530168 810793315 624857232 627444924 566435372 864238700 5664894 246074638 204181178 216267605 487901007 967483524 30323123 354314020 75334097 390656467 292013198 927279670 602173923 968126392 65780600 170476849 348045331 542435230 38226247 80512790 80283000 860563364 716670736 845887235 109333321 999290697 760101295 832513310 677769843 997478536 577091242 995538760 763325953 859865931 979363 352218653 547899294 862751739 220542374 531634121 157347048 281418027 928347657 948865431 113482752 306271002 856475565 976627890 495682401 660734599 50965725 563471332 825464594 998026293 28959629 141189455 861040708 910858341 193334833 879192229 536821510 572279100 832314972 849347549 121012315 159686223 112557110 169827028 804782337 994522720 208501614 898078828 132021357 892170183 189569712 572789811 129713399 142996318 236350597 512592115 456326551 529810141 561280634 703845967 599973637 622136426 498997737 537865661 500623686 668327491 312756264 995731301 196118542 458196812 698324474 969489897 907376008 927597316 564955130 580680548 627151145 943908302 831303276 850097423 755064334 946812181 757199695 978117873 558644832 673949208 499748416 961038044 955727087 984432444 503386513 895910858 896182036 907487879 653597994 711828363 879013062 888062839 550638309 591864063 388621165 925347055 308054372 812113890 542686961 954614948 520149893 855369120 447947537 958135588 510039285 756924125 92205046 904454680 135069153 933082808 227337660 569151877 465817423 956777513 152667864 681440266 158716131 689662424 957339700 961845819 596803054 654462705 120451433 845898886 142128536 531151551 388769443 428639953 445661152 810810220 536367639 741418063 864125945 899526217 211455620 299926599 677352575 943057331 720874117 756379836 669436641 958803992 180691660 782990440 30379398 463347963 883077388 986307976 749806515 800481884 271951095 440278359 824579251 907304494 692864265 797142236 242027748 590521983 504440255 711107005 660123637 743002776 468953634 940397977 977337523 993729016 990529668 990703304 749236455 977430273 507686727 900180741 909409723 970570219 206313046 572187747 794425839 984323542 859910875 935344260 37523938 955075318 82323188 91268508 463288471 641377230 573684692 881847619 530654806 558482704 501087814 994276416 766852483 802881326 392184716 828549726 53799450 922499496 572108030 818435064 446017605 710835911 468231042 939697274 132584474 377713839 466558000 781456974 911767137 970500734 175237363 965151629 427165021 683707289 46936063 75280639 61465923 604432418 785596888 833109109 661248397 672359825 302064884 737203216 571842953 755519386 982900485 999083174 351902920 381933046 960545985 962623643 333802211 932976280 587011055 756949344 613083680 764736773 488906205 828939222 496330587 758781110 186755857 536512207 414494673 990473662 814535300 926704138 967492387 981058780 757370679 781205736 367002570 820584514 413984114 798807599 572141744 967319571 318856503 783731083 723855028 770386366 909736907 974509837 425438097 497693540 66748660 186036034 644332588 655637996 982572535 994012151 747167987 808034201 26321626 714824856 634398045 889520085 894585145 924747126 136828367 919124299 728829838 813456763 500876439 871292758 960995127 979522646 922930911 999741285 566880901 966510217 9267985 147185305 387966799 634148371 212194834 430765683 332449958 982465903 232449216 477363746 990938007 999740593 572603824 893894576 202537030 470276644 632699950 694237437 481436708 947014783 736597242 898987549 786963762 799952817 329697151 420459856 359614206 859119002 554727712 815142702 56039115 744460186 8868566 884770897 720183913 810151812 982385215 990196087 878538457 909693850 274077366 729569648 138863537 848399167 428402153 829829585 902920312 967982533 549579613 807998373 600420244 912120699 457666223 955657073 176744687 617729129 755265806 789794225 295251326 396478934 698692159 900785475 896643593 942120248 450114798 585171689 713972526 970936461 633869592 781287608 204324296 398307599 665990143 721285509 492525430 659109574 46771195 630501461 631539305 689748411 616508424 680289580 764264141 825085707 348613349 637769295 173772225 352144039 285665372 699751076 88045247 461483780 771295033 974361329 601404622 758204318 551500792 825668701 220632437 520849773 553150166 618973697 157370986 167187380 162300383 252955921 542895640 751201863 550011686 731033456 869531037 883526716 250922481 755547610 697471283 849596165 93631964 979753289 344626421 445933641 683726830 765722273 456241839 775056102 274788264 654732078 396001995 582491603 442806517 501753188 261618127 790741948 326538939 395499216 160165731 198956060 340171378 704431547 511926344 578793023 742452529 910381807 257608133 355437742 53377876 795732084 332599621 718172849 492838144 742141179 226033624 724606527 503503453 896354531 642178375 885333709 127941043 314179412 429948502 745432305 499453044 716571437 414030471 935155810 142011994 434960945 239724229 876594876 616129125 957395610 211261420 291310379 611398837 849034274 876872071 899384263 956050417 983741121 90206520 548850846 498876798 703139019 477804207 494518639 272197742 924336469 758823304 958885672 57609601 712674513 592389138 652033795 554522656 792808162 694303961 759801284 635956930 941653066 3300838 910974529 99356861 135192721 893256037 964123657 247375695 897631008 259135901 408003329 95635568 196876041 450772336 910612648 176252893 446050247 892852851 951235968 806550015 871013433 758501404 762434797 233273461 692789534 173969987 845613872 799295604 827627664 671544057 719030993 93332462 315203039 530855008 695083650 555753815 786115156 338439816 817844260 477280126 876350375 982441674 984935422 521165475 810810321 50919567 289340266 254748564 506458021 15761210 380740964 139522477 507402328 737544762 964734973 689977293 777153117 402771095 659375473 22775091 265680543 997514547 998650342 297494085 948184895 702563496 710225031 444191425 848843653 522453024 540543396 951044024 952710367 474940024 869379573 994275834 998055387 460723230 775429559 129728090 623239864 655574434 972843737 862505483 903404986 721585677 818767406 738610102 793671603 377855864 871041489 845286491 986544336 527259065 722969823 770334122 939789095 215279431 787564495 670840729 860569746 462336658 614807989 854392774 978444270 218886621 631404017 197148352 385077093 587285122 997351189 764812698 816552387 691147878 962358491 285840011 656658514 222756226 486458775 162401032 459571518 56011921 519775855 491119923 769618541 848871392 959828973 450576202 736349234 972559111 983982669 5286862 911095418 960118118 968725045 323603361 494362360 948619811 982621504 887661941 966234982 470283629 845919447 397398125 585915519 595949215 758401328 186217862 413996990 4530262 63567702 895413717 998833730 902109829 903532235 660385847 872118102 651864680 852723108 143084459 428684530 883162210 935088782 539528200 813615897 992495849 996258059 394055638 671055955 224767271 567886707 375121746 375365171 910484083 928854080 280097045 947072427 215752803 842460848 178268196 779903714 672622251 918299669 713182807 841699480 588306087 773499037 778039036 804553464 922476413 950753372 474340295 682529649 693940520 869531051 890512670 983962267 841782609 954489090 302627480 754648751 647330255 745448821 98704557 583572595 327510302 653586886 349951053 947722974 615682419 931369547 796926015 982904840 255556864 919199669 918169281 982221605 23567603 898671485 31237019 206418640 126889881 232645642 293799030 966697003 83844820 420075720 801349235 896113380 8996123 190462344 113081908 579236701 294170185 606454022 864642376 932595732 361178221 431358431 387140581 745141647 364591503 483924659 125668086 363962937 253686005 330736219 592132121 715292152 847104357 922068120 24916224 957323966 352891681 378405065 227668803 729089618 61814391 504456749 209047870 657757635 18078155 642508391 988613135 995673075 194003200 586428887 719368503 809991602 405584871 486851325 626621306 950708175 374194463 853432012 601525200 993218344 578801088 966134090 971869368 994079674 515462832 768308211 718375860 888661820 743854478 924292200 585622057 958862491 855208122 928253643 152304399 712534778 391115240 687825155 726988850 971262741 730967681 769105561 342185063 838011574 482120054 727648325 404372389 620305738 910121317 993460896 634253170 676325602 400215496 674912713 478406108 478781354 226029812 911373361 96200025 155134758 80061398 411985491 475909714 971243998 949586483 985565204 702098308 969440779 63249051 987456175 361898622 866528069 745834625 924060872 181349191 426895339 715665072 927513287 612296408 736722840 323093887 370569389 57452210 782226232 119038633 178499834 440345988 538691618 8823720 13616241 182291795 885652082 87669313 222805189 889197877 952112465 844347198 951374929 191970042 960982720 650921691 757175837 274661187 690443342 773471485 999007417 874496986 894773018 462396816 630885720 401241555 919732390 863476796 964417259 689107107 867594490 823023741 838606702 327295324 327548323 512383619 646708595 864204570 875580946 269970718 922820358 632269136 914061382 629753556 666767882 768138463 938055640 447998148 506098051 844973141 913861215 465075370 714944992 534392485 664006767 89168490 960334114 599468503 811940591 63733584 783023215 205404785 881492303 80023513 421391776 306932006 492094534 803076875 925093477 382479365 974152424 187730084 462416535 24685315 449955587 880804982 972158993 608932264 935983584 21223912 86867111 990533471 990694377 171156165 876804798 329377837 654512120 927139272 959067705 41495529 872363499 760433967 898916619 953066910 992426458 360392815 470703223 65466307 360042418 274173073 497723659 850489528 856656814 801310628 916981896 475236377 819890281 718098257 926582833 305746084 416002628 624800494 835677436 613270149 899727279 637886209 645220652 367733223 812330804 998859463 999970094 395886649 919316572 749912686 833667878 98865982 646321852 965325486 969463731 778201392 805891418 49098451 589464322 217752986 733353370 177776390 645364259 948105849 968516989 923592580 969338545 738268008 876822073 255586069 632842286 334079576 801196401 607016239 976552273 872750879 907955340 371394709 919791506 899405472 916528646 106858934 954083425 781908055 997716350 94056177 706574470 612383998 776342763 458996750 598390045 672944958 778428706 829882784 888858697 127171521 522872362 823376816 849289460 374564649 663347946 731552132 818048577 831647277 955903437 164773426 235519752 165962502 390428795 47565028 598962427 778906470 845721682 304158567 827676230 351715970 952472920 548065000 859782969 458893218 630529449 352081634 363788007 430820267 693367852 429114198 934963368 946832627 980496953 392848819 968150426 510551695 634702207 311742783 467698587 933209869 982609851 316489842 351061675 311891575 915840554 645318416 903716624 71539789 511682440 793930158 840780649 373028775 902039322 917341800 991437609 533519125 798481184 421554554 832988512 993113248 998259920 422475793 641707043 748203112 884003983 259597286 505524127 448520062 559544024 461267734 657507369 724202587 737052340 588351432 754221938 804558771 829037863 828234825 917113768 947019716 992622178 369188940 835964890 384824159 974815150 458873309 713276218 982125491 992494245 947683658 961314012 221487992 835267880 674230701 987227655 303495290 385042736 488734974 868688926 653594235 711316753 704139840 975705907 201462094 892507704 34228618 945923020 900989816 915683682 388856253 841189469 614559629 701925205 462102103 693672494 631055142 666181813 818211223 934163717 688489034 725635216 965246543 982617944 26426714 343755338 508407458 627960587 321827218 758161473 52841266 547620901 897170970 960942868 906877736 969012311 114285861 276676861 151105779 438535050 262697618 287959617 118397557 256180672 485891674 537761315 643581877 703735184 127325169 640920168 375020722 461409704 113969866 562234488 585947140 706632168 230532119 816912791 759438783 892628792 763989725 885662919 194024700 926644740 176119382 988277115 625580028 941211247 656945125 834616452 962068073 968919308 442382039 793534042 117281317 760952752 516856094 753081319 603734260 671011022 448245813 684131324 79490341 549188503 234887499 888497548 594795364 958129944 514603227 697525784 487372983 791600336 393767492 810143276 376115971 751429322 863862492 910309342 330538049 502032627 935059849 993370727 41513002 154542521 53188956 493305036 461464029 774086895 237238120 620669996 593853653 972764105 555056551 772785611 191811560 579800702 284065015 993057620 910415274 982459106 108291662 378583225 456143648 727015853 886755175 952471811 196171549 716254961 288465834 445564092 653039933 726749571 24761787 166517940 23569379 401459005 129600600 740278864 421928996 845629986 136857172 560806191 103911912 982853256 52795998 440947181 800674141 955901814 360159736 913443202 43779235 114383901 725435017 766485861 656230073 957035196 122682103 379587701 716335034 805353959 802749369 823274927 38199557 954657796 359512203 489932360 542092120 710210548 87605326 294967165 386787948 885860289 365279279 871999085 411494915 547509118 240642658 997196916 588953759 669823488 831562146 870058250 403507133 574908274 621340297 736528004 190497116 858994451 612412886 715646554 713523271 998258520 582884046 944181123 726054828 947418203 725815016 826268235 858829265 994947312 86742961 665558616 864644601 911249788 524070271 541506867 426845184 658184507 123917961 192695408 698950001 764273579 604716956 895567429 110833232 122878588 227836368 291003623 103962657 685031395 396766574 626249573 949102515 957427863 280530172 704272270 695043956 746051118 375417611 580731321 996655324 996807887 181951308 957381798 57579377 66906857 481903232 677302085 554124278 860192978 261310323 919935974 354719061 825103281 533546177 649950397 336696251 596469761 804363943 984668064 312522993 771822241 640905580 642324103 337017354 852621279 597886769 707749077 421388601 857089355 209802575 298164474 728755468 982947984 731898480 877199084 125656014 524662076 513370339 674837675 487707485 497493604 170305315 378546890 968574436 989018322 674764393 844312423 229241291 550551533 893700062 962256576 424942788 757744369 977627763 993912479 811011155 968707620 464561651 973454425 784285598 907082365 33040425 303769408 266701254 517840221 11191765 481959572 341605829 573867835 474045509 948066483 151694985 511127080 228775622 986785875 395992900 722320177 336412140 956533308 610432577 782338517 371382946 519872638 828475751 900126396 628812308 690960635 822526677 833389625 174641053 666450730 149526992 704936824 429726258 623940710 299733741 839132909 789190914 850458120 534145198 898816889 98878276 649820471 882048376 888273646 213386698 960641020 792563283 810924332 455365513 824114663 843393383 993406774 249458 409818220 932170938 944960377 298334664 553863097 671602422 857176189 332184269 957659951 64601783 236824071 952220668 972558050 413452644 480068904 645777439 767881771 353472478 457716569 598823598 922853579 930934079 934212817 369187216 574282011 875631769 885817381 842137008 979855610 239102321 331545954 440757876 649395847 898067657 938377375 264746474 732868339 342724202 377022592 533676862 839123864 354011347 767700039 944332577 992263432 703696178 924956432 379464113 557389791 19847333 157088458 520496298 674516289 928405659 951325437 724680839 985558288 279056542 674556678 67605160 363364407 934058066 992048236 422003633 771642524 229260511 464844911 665027706 770221687 928515387 996308900 807936374 911817108 374447537 770287939 430106721 830042532 451194191 550030845 309379766 447842576 608424412 800227725 304343658 317542761 80545472 419784485 629156088 953332583 213175352 644248154 233121637 637870221 303152388 375452448 353181843 875568384 309839788 719288663 203439839 756970693 646985383 868508347 30810947 344400097 824104536 959371395 649516423 762347888 715908968 790907490 679676054 899281526 457357401 771477915 398323040 930649561 897908837 907661162 575099649 715643614 238652256 738531730 863292611 905278757 614709871 645038456 894063688 912049846 146454602 490479725 23426821 425611032 656398349 854793970 858250330 979663279 541585348 712442725 452561483 887822174 755587952 923668242 797170946 880152607 740818351 756022598 834409049 841705048 495796797 739860696 916641186 945024694 660968603 774746272 824193413 961443608 275740011 922314240 543623942 754783379 2539116 877564066 41949170 411298091 843127552 935948260 641921651 825045738 185507786 759486087 777800247 909832357 217685771 472425584 658081431 823993197 699870405 731520809 763764707 898333684 625211882 921249041 722479827 921586500 366017399 900072617 519425021 632257479 623538407 800649575 891248618 919763516 753692358 937071089 880604316 960769537 359860981 735809542 61738910 802696069 157574954 284947120 906483834 953196230 429650688 671077050 597373998 639084521 797243013 829604996 842944378 848422448 403374135 894872516 701964746 872537932 354473274 988031018 210959245 916268086 100916359 872899709 711731184 716208654 823290927 954365044 507857488 714381333 31019387 281445304 424562285 463351891 768478090 904499741 439356474 740762992 587424974 703751232 685581565 837110951 917613945 964640775 832730505 996215388 797509429 864174672 74832803 176509672 236850732 360425593 343949040 685483075 492669459 674859879 741919590 855097616 109656926 990864411 883174710 946077757 403434951 573083070 921830765 945629699 462393508 740017007 636236450 968531040 46902768 918501229 921613047 922668023 219702817 886699152 593573230 704802322 925142529 983768384 771543119 921972608 523530509 948925506 218791711 566572159 152253742 548326441 857321127 896301763 655106045 917478360 172457163 498487878 617812574 770251052 617668842 742418426 637060956 657087213 62419397 77363038 930428221 961418284 734642412 923453783 351219102 650923415 449741291 567564617 865763508 944353526 824691729 984637686 593179216 836531838 777919779 812324175 903751627 937329024 533921467 622920169 220524211 315909761 823051508 846283874 270863264 413291987 604402996 999117346 837870000 860781789 296407 844447850 702001033 831546943 983798035 989540771 888113271 943712487 339312363 935570874 268154236 876398362 798654905 847397893 491109127 581742791 792794459 855468508 880307954 973486367 654129068 697154686 972855429 994300560 562224277 671543366 226564025 788814423 470126529 613445837 429878586 763933994 350249156 633253915 949875948 955607488 685852403 698189052 309507813 707280045 604654508 802533083 930855853 988377574 383152606 594810437 135628932 951201955 280533115 325916771 657063514 928543426 119001602 718475849 640282290 949717161 312781835 587091993 945973742 976245460 834155229 867863879 362704064 601185054 913804379 956879235 542320353 788449628 920713235 981892443 740186410 748985012 227854049 935557032 34735331 990513502 419876031 578467168 425494084 658722362 237315816 512496194 813724910 969741712 944801032 950960084 565673862 618484478 202861712 799977521 729712454 763925125 460483518 875944810 153804004 337053923 593104447 959720376 67794567 234776384 616425744 646930817 458909819 640663485 324526777 682883836 668224645 984165941 106115299 467166931 842683386 886132684 19808868 819644081 452067362 904290898 641747401 979621578 472341571 870872433 235054504 533452427 989223911 997213282 895542436 942135228 851570962 957246974 237506227 559823333 950323487 979589072 114848241 714079302 462359498 902583256 464284788 828805392 790761843 964869549 506970235 937842688 649612202 979602079 63300533 307497315 778135453 812215782 639457123 959169306 898745364 934693102 567923607 696643237 538110860 902797160 520113951 740604821 414372861 779694472 520373263 861106840 388523005 943070567 782609248 937428768 890007962 969794574 393276690 572297215 868849691 931619085 311521523 955448180 197597507 482574655 645196683 759531493 278896952 646945030 47752563 433043875 750245207 795898612 878049129 968143203 505429634 781301638 621006758 892654960 401875472 850570340 412665832 843145465 476061116 686124097 963016767 998069976 652307658 886831911 437735970 940677179 335138554 998938507 102052443 837495388 525508489 632986820 131918561 646198058 845168706 933823983 982887440 997880953 154976711 692513360 736110707 885387765 598910324 864220107 257221150 562438899 330919627 360798540 631248949 719649375 130766449 718472548 345017792 477251386 362506096 575904296 418643589 741116389 837969900 871123596 769935158 989026568 867629637 868023018 362275413 792923983 99949141 400217934 164451938 827497887 663339112 815928362 952423683 955593201 942293882 962833914 9286071 430516117 686942350 951367971 601444097 649559738 918250188 971529466 581585604 813462534 151875841 418139171 94088031 558286698 916532028 928274255 833242377 916341749 644058198 806445176 732489829 810752143 729291274 755634209 758422516 885158575 32836418 309968307 911384477 928901111 220075310 537929350 56765185 887727041 908476803 930298970 114412088 737255840 221984748 802128233 221451523 424772873 927645866 934447128 909530066 984757749 113377090 940920609 444388395 553658926 104225185 945257444 515738762 921775933 56529904 670253393 839011175 979269694 502792894 621351150 254455418 654432457 687908713 870692908 413735985 758535566 562623506 644577924 311350322 757304739 698680653 849812924 259935548 520343311 837198822 886839489 547713981 768338694 284290968 998985025 771714944 849015657 315898842 993259382 646084520 915188218 873431892 982312652 38393663 745195607 217166830 790451424 160266394 717814302 677462028 879399449 323844286 814438365 551869397 894401106 885627328 913245739 424867516 661201870 684381243 997436097 394002873 577348012 699144210 700328568 889232703 975759972 92011143 866134388 645338178 712808522 411793619 765435942 510394010 522325619 269201400 825853642 578321261 878653159 948324529 982134919 921108701 928893708 835721300 909526439 553723932 660133963 288086549 602679936 354937267 805838692 63831018 425319655 994647439 996065948 82581101 529479332 372125982 509629296 337860225 448434435 78109165 702478453 467723940 512440961 548013075 816477291 846581989 987523770 990000059 997257117 373827571 595790531 23900580 567214271 730970097 929600298 447890794 652200669 702616349 939095310 694411151 929012316 265713063 848352679 145345773 322311949 484930077 783544433 405630121 947343725 799416173 833558294 559331638 756910500 16199448 637514687 910799210 971676996 624243436 788993111 997658142 997755931 198427269 562006678 918717870 928535637 838341933 842024226 48622496 842307792 534117371 721560927 808420443 974777079 882177869 896956724 393427161 472212878 836260635 935586492 141371717 744261776 310298602 714051244 84769573 955993182 917453304 920073649 59429493 621135815 262612022 354500688 75397407 386190544 215782929 796457601 681439840 798336443 920115878 933041542 113110002 606588399 360993600 976646826 831983160 949268873 693658223 835374236 305661974 343309573 925504985 972762721 569165876 693834896 21188146 64982875 27739827 534696926 305711464 724211807 447692787 569952371 663775149 993733695 908068795 961771860 36471446 60051914 467346116 513035536 41994351 726429151 291576372 887368803 238341373 408128879 636209288 668573496 535091912 952102066 199294205 738781783 629090161 709571023 391144923 616035895 639132651 761033265 115572482 257736897 537212857 619749131 289771783 544041166 247728680 703227912 974403812 996709494 1686091 833538866 968869363 990639226 109361438 580505707 219896607 467078658 150037211 670246220 541336920 757993156 458444592 987688817 745128485 881438774 638418748 908662900 152127196 177738536 966205225 999467434 683213459 992467789 467114149 689411776 467734936 703366660 453149822 694408590 753515923 952335545 406271224 991767370 915473094 995371476 197668263 352381805 900206539 943089604 906471823 965307005 82984663 155469862 420166825 824258645 167887473 257356470 271016709 469174140 690753009 875297624 307537394 365288528 427974503 490447324 984070879 986060310 956155342 978894728 175549349 570821336 181011277 405712610 774501310 893565436 770462847 865382710 658515953 872440450 879867206 958903185 373086276 834613097 420577413 944250900 387555874 846062934 938885035 960921727 200266447 683768498 457251615 841538033 958813375 966716297 123559596 134085826 427955653 767082059 565505689 996960099 206103486 973378163 499324746 566379632 403549877 477387125 353567451 364329687 120788349 898724016 20984483 107924875 610845747 670990556 576359175 680770210 868426969 889588142 639189500 666359193 387407754 695011186 876743580 944374821 194411718 724175561 17121649 975703410 939773256 998332597 226814149 991798324 808938688 979721063 572984082 587849464 599738124 793781894 624922950 999718529 600166695 876412321 998361969 999911915 227198760 475003242 58283869 920375551 86520706 975472844 553451395 853946169 332739346 880904601 356398726 671953898 119392162 897516287 114029194 346109168 502567558 540927109 356981012 573156442 83850431 432263263 983454513 998827690 944435261 990290074 356498555 708647443 161280524 559529366 964775834 966735039 837292675 864144100 209198019 868128514 392705738 713527243 15453828 708230803 324130268 899749269 580193082 862777693 971110970 995444389 489974189 995510399 571764552 620960592 769585095 911248056 916620811 958941144 108995253 182058519 382031137 890081256 718130146 939702276 703461956 954323713 211253159 986165414 828175423 872331825 598029266 824068693 39653381 685711931 689143676 839769316 24873009 518008155 42060234 125668712 743211063 849503216 738712086 816090817 340906259 428323084 380302116 601004208 255064073 949069155 776183238 970707232 271607329 937596694 543283583 653436624 561271834 916584685 370606624 567309190 571984613 920557891 840970799 911006111 243954020 422360596 176476503 765373597 700975134 758626667 570224302 823604948 69187325 514535971 748217667 864511183 409392927 959892567 770093182 783152177 929147039 961433436 648594773 650256063 137624386 877328403 171600618 606794496 719369798 909617415 670497044 754509490 235488158 496037115 760214550 822726048 83798907 523724588 207559763 727459817 745189122 958456322 713756668 938034955 322350519 545772162 589835640 697171058 551195184 585219728 319098124 358562667 458771528 830184185 681680421 832522334 97287504 325269048 588577857 657820598 945869575 955341352 556719392 606731331 791039783 982794235 925788714 955576595 527288625 532864704 399160580 908971245 759651601 784694283 671167446 939039324 336501838 745944526 207098615 595296030 75317207 787804292 513235368 905492521 272763773 999932734 34490694 297490817 929170554 947924015 903166233 973605835 271880406 288882409 249460637 416322543 818234133 851096019 214199045 378112366 781189883 963738958 560765443 763429773 221911599 981026290 211013092 340012135 92123747 724853873 168894755 944705285 718265976 837401350 80312282 779329669 686208976 936153754 99693670 660041075 134081141 592749353 555652477 730894238 406324320 526012777 250160237 686331419 778788989 793671797 60194920 698078897 456342149 688433729 982256474 995806197 162381419 444333704 627584420 761945363 284423052 568124702 606873437 993275859 944401356 993610548 780518541 832408933 214333202 839202457 454946837 590915537 500826381 846443376 218558492 851605924 5791178 931095887 981451123 985072226 924987171 937202219 43989043 282087180 310006527 612710925 450514019 867546909 237910266 292417824 245890739 350246948 22863575 818912902 603555374 617280811 555233557 978825535 346027988 696089566 771342745 891072199 756248654 835983872 233408540 435856698 380944844 959055463 241374777 453918950 539272348 809338337 594590756 833094238 806772759 951284966 193119538 828250248 337299860 411966062 649823660 936879784 824312345 871480846 39915613 82640025 418485393 452200441 333400472 370336067 338349911 473335692 373780996 614520194 989891969 995621013 350461162 578382553 973507737 983484525 334554651 998498324 556734254 884778801 298143647 868168654 912432496 938379531 148801223 577467591 679059289 762513362 108182973 703396269 542704671 801910888 739617685 858577504 423542431 781990032 725146905 915158638 544808378 790282959 133179880 798464106 304695593 699210721 987357781 995869033 224549677 424701748 612324145 869198745 105944139 675850403 251752646 917330918 500209002 749241776 271097218 834240737 10907367 668933412 420971579 858638072 282858330 802047067 670483412 807697225 61854163 988599663 703360890 753875900 578925692 811025791 879583086 999526421 534704270 568145088 185599469 848977546 766356983 822718340 82834484 471401031 997165916 998462794 53512087 272533758 8796050 631578635 5126756 801113216 738646732 783143512 459856989 689843824 591456923 862773662 742819167 873719307 367954185 839444465 218799674 761285770 530923218 574948828 595894649 782477855 434064770 867531216 643677061 687419656 484701943 650789230 463033248 621746971 647371241 718564386 261189507 343713755 255199544 372388468 198551791 998132065 314573810 805916442 263264651 763906782 240934547 977590442 754427148 809297667 465889433 732290666 393510790 974319072 785202989 891160351 357892878 439231479 766987042 832456159 731854320 851517141 411060897 739765969 296627471 870978826 475219343 747005752 253827607 902029344 985066920 995958263 903441758 965833166 766552003 948949918 275255607 960985316 703084201 883434825 24732794 256057041 332733894 793790445 153820523 587215851 296171960 602578092 293810777 515230563 18659252 904209788 156006596 964691272 802089918 876449199 639504002 980605976 840383359 942226979 464935922 614294002 885691295 919615081 978141977 983114778 997150434 997918515 199722886 368260049 760634987 782953747 192968697 933444180 855950368 892699922 805477444 808126316 393800337 761687475 806341718 930668139 972397932 993455341 194256819 256815412 554412580 577153904 991633090 991932475 324648972 966811391 430508557 586831892 671887917 787630531 842399698 927130364 493436530 903192522 973513468 998069254 296088344 719823451 853338714 881118963 311448284 321742701 872372562 890541873 746483565 949728820 685499176 843258606 127915159 604297290 563035330 709274511 758067158 788712543 185993831 288766517 698473282 965497512 529174497 988432385 91808207 594360253 510264289 613078051 835535545 988679586 430020432 805357510 954308076 955963658 299922857 997845335 45659616 311017585 244389216 814161411 869883114 925468996 728792184 969376556 787112608 853488796 214643130 632897328 671389060 759501941 576590765 676025293 290273359 683212483 558706396 933188672 22411370 912033872 893193510 958961607 34508011 182963627 536097415 630570133 466179255 672277518 707964508 785352267 116998267 763429070 804878433 887843312 364722036 767119108 26172539 86362568 699393436 934296283 884466352 973213076 336084682 488081297 693235175 738640776 771620256 964753570 294942652 756633705 325149027 835626887 511707244 996137274 907242137 961654099 197691781 405010319 97212771 276959126 840952338 906113217 579609990 587039051 514322711 953127802 3767984 55889561 494701822 519751218 110699682 570059992 176915752 302385419 282654016 708259213 143278122 848653557 795347842 899996424 337850734 946044894 81171633 368590733 206028552 827355358 211658237 811440215 83390953 687119870 568527587 910462955 84439137 772955868 766787240 836332488 818252559 821857931 921139646 993336520 808982089 984651677 236123990 632022529 62392251 321813475 381334625 496841836 776674004 824642232 220666557 299518180 748798014 787671097 638660537 950905949 163166779 708652388 335111447 671665403 311325032 639400242 700672705 835307165 970711158 972872325 798832504 924714931 419832930 684171380 687493433 871889633 15760040 503791669 869733807 870697804 184342242 241075048 158655380 297373187 276629853 863747620 16662770 58057397 44249604 806063802 355635645 730123761 482308361 848826726 487082658 858360742 215772970 694587947 523235174 870095190 174757644 582681936 271455520 332704106 844353295 898437005 787140568 957938643 205776943 436783228 464696815 834091889 590078171 738286141 852528254 858887562 325445205 920352723 888663534 981824509 132385064 331632543 23029305 257304775 162190339 962937167 9756486 668535408 238510106 643503516 534039085 720354775 98765744 625281954 692400887 738033842 442837923 921862793 702929536 833522618 465472903 601105419 338780232 924359626 773533915 957904832 487608014 631945808 657476293 910079291 75716569 804552996 185200438 343176586 725179880 980942746 259687697 649609269 965904547 975279889 175459249 467687527 564971859 643621796 852599206 990773579 325186973 477215695 844397014 873349611 240424019 931982408 600514287 623164298 396514575 583523132 932768377 962414291 816454159 900398862 784574862 875949115 149768981 971575754 101067804 541320697 520096323 717489774 956887014 968455698 118582537 885268332 991916355 993498615 590476645 657972765 585490565 798510920 141668375 863264204 436942505 785284358 336165719 442819257 925727984 971880552 634545686 950697842 947189299 990690924 223136899 774305087 915697461 924758567 69696960 619560257 33759342 764317605 662021565 799954628 874972628 914383895 596050096 980168935 307126670 626795814 901745231 969750633 716129744 826578452 316869287 703804827 887630931 961047349 296586514 859320789 545082671 958606572 91145965 577318226 532550059 978692294 422988835 432542955 852701690 978536887 49440751 619440685 60678321 976901880 78109961 146603504 662744030 836070584 949264734 963635132 143871423 862027247 809347957 911670677 235990231 518549221 184521142 751295451 8712318 211132848 601783746 808217282 189550255 562326172 893642844 975517792 39715802 59858267 52284682 226231228 352236309 667983693 177959135 717009029 229447638 988680108 492914118 795145737 910356398 967019256 713111225 831338455 777195728 848091824 804169761 963452776 271982422 910257512 612691191 711396195 295850042 953664395 101484067 392161937 880872888 997531108 1187624 410425423 103067611 417635248 774457234 778230564 816984666 849249201 433394382 443248840 681741164 725128264 66930427 887144477 954269699 954634490 128536979 648392503 790242818 939537221 795346783 822004191 808455104 837974347 111851370 460531724 441861814 923957926 694833142 804157296 751624663 851355279 860460648 940594831 439812921 441610073 930587692 945215374 895203061 928240315 361430015 541832971 993295979 994683527 651136338 964341599 455382861 574925115 45935693 476983854 247100789 725897787 28306915 671415745 593488921 639893492 71010563 889758073 77962576 647793506 120918280 774764766 244047276 734576865 611942919 720086597 21249497 847181025 744136749 786248517 548357476 952010697 146835181 285683618 889667004 908244111 764795532 850899521 656440289 767815915 903532848 905193886 318161765 870487893 422450804 600408390 382166833 706161577 658597386 726715043 22219421 238192433 235217483 782524867 186750730 464463537 834424261 976962515 271160841 307699847 742874511 908908664 929541664 977493281 451220293 493966894 478262068 910554106 632768887 983370456 414396056 878537435 313732311 318163257 485059488 564469926 795121782 872977465 396467019 980704204 117700962 242841532 686012808 702242698 827234653 882225997 771168052 990301542 646060573 690373199 719410778 773303826 556381520 958466016 505909391 985332026 777828347 955843375 817619912 910845293 13431475 54002764 643846285 699823064 772036999 994486810 234841176 475775943 344985397 487429273 283832571 369119823 35477441 516356320 640101928 728831742 958435561 977972185 949160720 991550071 90706700 882103312 66283340 459247782 865182619 881941047 548672306 570996512 70981506 970689276 891303321 941379192 377649885 465384767 432522447 832015341 142905367 349109626 145072085 492622387 191056713 748834585 413970701 677527934 3012049 902869732 775367539 884524115 574921427 936799529 471699929 639242617 988284622 994704377 422880262 529367384 401676218 445567732 559053180 778535817 672688635 689220311 128818702 526639760 678908945 689648951 807719696 909718672 46803919 936079239 398392981 433321932 695997963 785288687 213198170 444758556 527518831 872964466 799902655 974414974 41102094 873569793 597201884 871569085 180364135 882109066 796462265 818784071 191669646 520947991 932066656 987192594 90535708 702825023 339556489 629312394 633545173 778721810 175061338 439153089 341970979 425000160 968422117 974455838 84906797 975222845 57061726 973910841 126599944 141289156 860695284 896057522 266621602 653983111 47536735 857495297 524702735 737901085 904543288 915765203 283966091 410649706 347639959 820191047 520429376 735297341 588812217 943622543 771785371 959130162 829642803 932473627 582401505 616959324 879939296 997393103 20682656 48669870 603236080 955241044 784277363 828233482 678201924 680440153 678108872 906185887 83228841 507637461 287050068 317296349 772083562 823222932 237710688 565509897 924981871 964903946 881574113 897919604 996796252 998630748 266305369 933205902 58477298 939540829 245082729 729550672 533442523 564306735 111397199 340682811 401227631 890298928 967644047 979493966 386793498 738661451 686040805 993868245 811771289 902041824 671980675 978472603 771569338 888238083 973984892 974506392 808206435 905572619 270626203 328487278 804918508 879821704 476248395 647377754 793970183 886905142 616478861 704380267 397110901 680373677 573848029 721138533 508158028 693488414 589368576 873201041 951192007 982144694 461994276 747742230 753102322 847098196 352178135 606303552 949700689 971938630 639852182 802258639 112630671 971303122 269932626 387184165 314877475 883605970 282338758 334963637 131457380 966191733 591595929 767932810 691506421 729216398 542415362 614061663 918810437 992554676 993430083 998594283 54740519 412898206 99313984 715002131 913233846 917478776 704275907 907820133 896642090 994865112 677685519 803138853 170390802 692185289 202420367 570763245 625574128 924913669 614568779 892480010 37954518 686918753 851636625 890892489 293047785 706756431 3684947 5807931 877441838 952037194 390667664 412550869 204596881 844980832 764751938 831948087 939105051 993988251 657409967 666972054 465481426 528460054 974524273 999620756 404783237 812318124 532575318 747611966 649898952 993433435 817242084 842324716 403024470 615422667 617797414 759633635 745392829 904261858 677042019 976853420 470842316 495735958 649089702 953829143 184264879 870318059 908564571 968819760 778966825 835708722 707355983 800434355 527204735 642479259 364192379 725433820 897617250 910353564 330702085 599313002 106830408 560263391 617353621 621431484 316269276 547150785 770993731 883252675 373204018 686905011 901500851 994359384 886479305 954781314 775421078 852376081 124952457 622145922 174811158 543283066 878264068 882858101 725141774 905305925 239687148 273284816 776600986 906830970 762002962 923754540 160573333 689762568 263619043 511103079 564633858 942408520 34757771 736491079 155961356 959167384 850929931 980072167 274412867 443682363 222780044 264572133 974895498 980250632 555601373 710774476 750299565 797426935 920293111 996359859 945056626 956423637 706892426 902780824 61528111 863730684 5072756 645156344 298247005 717582876 378605033 506064265 798714559 921236676 799809149 979643284 612649460 735320307 426023515 832852898 135716647 201627151 241083931 522799712 486724913 523698065 625944040 867980856 941487477 998642904 96485769 327121493 174626412 922281440 359336464 399770902 373553224 881937023 364561390 974371534 917299583 963570150 729461075 970158659 174219571 373840691 659295659 713257228 771498493 930448962 874285883 971006069 536322550 724521084 256120994 565178265 834516329 946052478 754946848 870632073 707384457 818498778 281038074 663422556 643870692 941210898 380149869 438639775 879117792 955400860 914830089 965348591 397691917 531376795 261283033 750069947 501039048 977697628 622096696 820702681 298632830 879270323 58475406 597257843 154953000 552177408 311943756 761034822 829846582 859269071 618903436 857447918 546246288 700020302 318473349 863166691 477604487 841834052 639475783 745050264 538281850 723180068 647865057 743025974 221931377 767157902 42190072 274771941 683213130 946768314 206135724 269409250 489349586 629020360 197918978 835234194 577017642 771720492 308219702 387588455 653952093 733258435 234525622 618876340 194245368 704792225 807546500 919913950 462416754 803427661 840901080 876496836 414755240 463432913 506476336 675930005 654594519 693652220 61718814 585076318 642590450 844439532 344472634 928594360 479271474 949112146 664896567 907678839 581109516 682217089 902079489 977691641 113463321 697357960 132416104 543824873 468613113 905669095 861926035 873612399 555685410 875933068 282640258 905194476 63271269 609816818 793190609 924577949 193538673 783630145 851382706 872673432 642203406 886865662 66486173 256359946 657381408 723574669 187816065 778658129 27684131 39428324 697334286 842932602 673633265 948889930 847497278 854268166 365259401 675621706 48452629 79575732 929172489 934485215 452001527 581671029 970193330 971696074 705995272 881732271 647505513 684564711 266429051 717522451 913116822 960754690 173103389 509680764 190227489 217619046 832755834 968428497 526458672 579413118 800219270 873549480 301045780 318619986 988993373 990865398 348456599 554859615 747154490 993363262 9730005 47158629 335710906 566617985 536584478 671841286 553750505 999176441 564874892 775064791 422591568 622439560 319536873 828151728 313386273 555485054 554352504 614860561 101013599 236215954 981274904 984938973 377506022 850396252 999890014 999948756 719749628 729735886 781343777 830024723 205550662 656050407 753236423 942958428 642858676 661791642 842699594 963002566 667349740 934119986 101020788 243300951 481498214 702090884 432163290 684166104 275132079 909888970 245117820 639109687 802702102 803008218 928735763 958620391 660676140 985044398 183230893 315548775 959322755 981894879 676066502 705800824 504808151 681465118 411907099 575877805 189510845 360657138 570997656 984082126 314184928 842386355 418027102 924965622 76226983 763574441 322497653 669091355 299968244 306450782 422685545 616465993 72642037 417747706 695027328 759121097 603933129 871242053 387907396 943946756 829592818 834520414 153756626 559781712 742915757 763799608 929414029 979962449 964494748 984714356 328400441 645396242 487268501 497935822 697604918 803083339 557938960 604087168 893756771 975125199 60405043 166290945 634604231 652555343 716889976 748077739 59167821 708075793 17489900 870165341 323416900 385823437 349643477 608713930 429483356 738111928 294910856 824028434 141280365 495626451 225551974 681987259 938877811 983154353 370403160 653300079 37017570 215111774 719646391 835785447 526367846 698444350 815803708 946850301 744040328 786778750 998604989 999306702 34611451 758436098 582776462 874786313 157030084 512147151 245096971 440697862 886800059 902908956 376371183 930155858 44418862 301575697 184280875 293257355 603738158 958838681 89928094 820477498 360729402 794857146 324340521 767322016 812244704 996412297 936598944 971941750 586832927 712303423 431616182 573364469 840834602 860241702 967791485 986066298 256965741 493796265 856179788 975299615 924993650 955075542 939395161 966354697 18750615 98727759 41002110 806116024 816702219 911042047 601040092 973953961 111861361 736857534 121183490 268915750 290288776 959047466 633301412 649883764 713866312 968628125 258539875 656691726 825933149 967260413 807166320 859743282 103130476 984917438 824512489 949064882 836150879 949755425 635981511 979761759 701377121 914907368 682375057 885535560 355122112 657467801 421969414 859198636 652143452 897615215 264727409 448946875 715248993 719919619 624705939 902690969 801834024 988587071 860124270 872078544 180250363 910464091 68626473 86062651 437453913 783211566 937222556 977728012 882011748 951444433 904115221 985541104 815256640 860692900 370107737 546496437 590065788 837820245 47114074 340479573 916362064 924136218 80257614 282301303 868142264 939662763 877849030 900085557 436910906 438999423 157299854 912893151 466926582 919918776 9147867 145619746 917137205 973740477 27596012 118861523 968202354 997771258 405358996 986296949 64333797 774597896 859256923 915838861 587044220 676074168 795823825 967458055 696815368 961519089 419382488 996055973 354465994 372407987 285243962 549176086 139945851 365589521 264081430 899811630 597737536 662738312 183082305 581115269 593233681 687472563 762367139 952057893 152958550 217866482 955611801 960431685 403047003 630475572 583620262 650626007 781573683 938124295 643276722 665518394 727808513 895669442 37112016 840153893 933952599 974679216 380552630 987359211 989400111 999925754 645915785 834740263 959541775 984323658 470981253 645259497 665893419 773878683 598814772 770201559 21442147 105346529 857599526 994880969 881182847 887893390 49044577 307933607 249455270 902544399 963070185 970709778 454188379 762359877 842815451 897100397 322644256 636688526 577941977 811897558 502037664 967857623 77287886 155349020 192883581 348931918 535337261 786994308 481581714 575569698 994475580 999129036 429492215 911558579 323833085 749638940 684249926 857107949 34187677 68597727 351085969 457531571 624188295 774491083 387471032 923125702 365420736 459734477 247747838 411458994 124803579 436137309 121582291 850792009 444612530 552436900 284128149 340579425 712757930 976794881 628641735 965414146 239845754 569414227 32272303 116646877 266415396 493597473 703298879 934137986 138115803 146914103 338289617 592418000 509389029 684639767 155773761 448863326 5118584 181726837 850245231 977406438 102616005 732242799 648670726 805207237 111214780 311020813 249764056 404883361 981551162 985023606 675697693 737628592 970280148 989924188 486404610 567870829 13675290 152930266 400523864 620230257 424257127 828566167 939921873 999381655 902914591 946606024 30376629 210970504 339710461 913817443 81803169 718202352 492107093 547881499 13118605 645092853 192091315 245349057 435162297 876528829 212555027 950325354 931642312 986624310 481123442 798036519 808255751 972770957 741482430 777206956 227936408 663980799 383138480 698582155 373164447 982185413 160459238 240320283 765886747 931288164 292548509 670681580 96633266 812938807 154404551 763184267 282462380 793744728 750009722 949548474 949877831 966300479 305048916 875090270 462101368 919700471 946138772 986241965 828682605 829132454 851303205 883271873 479534233 962733745 417926372 582815781 594653794 940952956 931396542 959273130 514251503 787856730 241851210 567393764 396052103 523746136 756832895 903474899 916986542 981417218 478474708 642272889 125582847 129356738 430351539 900521940 502987740 563543029 570336358 683075851 903802731 932630359 988898054 995541299 121506472 841935137 989135447 992134647 147930637 596790333 204332879 889919760 425223020 803922645 323133561 689108630 883215349 905558706 828615547 918940478 578069412 601930466 994382261 997598639 139685994 643287798 422667470 630554815 753069206 805771810 517813429 738886965 655920953 942299488 934185147 951958851 33194440 910197153 547896441 920433301 529487903 647644755 189476689 990643108 48391441 788608159 422583150 615554730 793532506 958225203 941382131 986301364 452989292 659455299 65098138 590637483 990079019 990457808 209107737 629166809 620649825 629661477 737499966 861380572 227703270 845134042 952490064 959372870 733300893 837632602 374072616 428457851 946054898 956800955 607319779 907343861 596970732 615231505 161167298 232788725 847008555 893288359 980173530 989088208 4191163 623479703 845582882 981063920 934989449 962429442 590560155 873907681 954363116 984666362 758028257 761462039 436825177 707499879 147163681 375177785 154945005 933324887 432574085 642150149 480167564 828614883 760540099 809001365 152144895 159943557 145077520 787273299 857216010 891535170 821021325 853017101 522425840 569691349 502817291 540322345 986091072 990822364 448569133 460789039 443340968 799761080 453880427 914054740 191273032 302472256 386533604 616991095 374851021 405976959 402562292 807880560 481080628 883919940 912278593 955997196 226145883 267888380 509689628 957200489 978147954 991777778 706583067 983160319 48711600 722577835 695618842 944671026 486030533 762275028 954723322 988999370 617698827 636887346 700632068 912286813 629826543 831062915 386894390 412873436 332903894 687054057 187613357 753110501 597523251 717432994 903159760 984363966 357589797 452977502 919313654 924437465 229402410 267321534 716880136 726858106 429206950 828807635 624163879 805521314 659764490 956529724 287551992 480198681 847547371 914350607 918496817 926434404 466704270 782565955 975083066 996707640 905853773 919509915 579706247 887375112 132883741 612454244 838344134 930545173 984781723 991296250 147669936 921779250 374137304 538132586 630844194 903058202 334853406 356923752 234613031 246788539 95960521 859895934 543541510 551224674 598437355 898209601 211738113 954687947 285420895 355743942 587175868 972165807 618181198 851207870 645754011 696298388 437690455 879411061 299424074 520543578 315067043 547109200 811316227 832712052 953766045 964217140 267678993 876213449 957333048 983337440 624161102 658267730 718211403 726981995 49473681 227774563 772694586 923178280 679121912 764427831 176361981 508119959 491289281 935056791 674862787 716650856 273210428 806903565 840949217 922448024 763982503 944571425 748004246 979571985 776191806 800427334 161727836 812659587 388603281 863813757 586645706 993440254 171872559 782960187 379633149 890952149 515177347 598186392 952830908 977065100 503649625 886763467 317970367 530620021 491661226 740006505 576894816 761063663 491248578 494770726 859751582 962848316 200599601 801128884 713002592 965572892 46701203 60201130 295595135 619695191 271984349 368886802 585759234 848947826 147603363 667475717 884259025 923584795 643986859 879036986 913452395 947399171 646143329 691783085 421852106 895114995 28252078 621690851 851346287 939052405 350648102 620274528 197901392 388504432 659747726 708164117 368084929 374981762 240414318 472137608 532461714 610841009 933487897 974849883 467339476 730522314 752431920 996182255 817918941 827920793 172326033 243826562 516866389 924165442 231196032 381712683 64011346 661852115 256904031 722528376 679303908 869434754 52889634 428187492 251692167 866406604 964599011 972310250 476025216 600749332 728840488 935273052 624900536 764412803 679976546 896559690 266395946 616340116 414177661 878399543 666900543 839248857 640133849 667789866 410643532 666028653 915197595 959252336 991507372 991781332 488331328 879859656 190824215 667827609 148652700 289579644 962160091 984587581 831085569 892434721 560964903 998167307 704698891 892749476 888207892 904691944 805656560 945150074 720801548 970864130 837083551 992969204 739553122 851946512 273257545 892115348 78547940 302131132 207488524 798049576 395075313 871796167 815659238 839883153 719627340 979916189 525851936 915654886 591860197 893617365 892070246 972144245 722563024 935191868 829394261 934921460 298167828 572763153 793365864 890619442 454531096 610687961 781236514 799084140 442586007 627481976 179669457 775807181 196401765 979739024 233315336 724280708 748664286 927345688 126168505 154292068 292684671 456503496 349010221 916582284 305863200 723846295 995487999 996611805 791057568 933541140 888798536 961610342 551448804 709137025 348482783 808982227 809395448 964036583 23257267 386212278 413422367 450839963 860763912 918724473 517962686 916138027 115784417 858617281 81903052 316971764 75334111 815064570 522777565 891011357 608975325 725914500 259819658 636485536 130743202 919028382 181202596 996251471 956382009 964716921 46727954 296122669 413891104 864965698 776994701 958338231 412642301 899995102 789466971 861029128 633124061 916984437 579281978 610181618 881287784 937623183 497442190 583010426 922787076 973546418 311524021 773353369 725286129 739147009 277476318 424655466 106543730 409565095 28037569 746076816 631396203 682690470 919007050 951405335 75513941 775806337 944017628 994925431 803687360 991087364 591620321 822690504 897053906 949529385 776417666 869441533 282717756 871206799 149787183 408063668 913020337 989596969 940311394 973527179 494937379 568414746 730804026 761403672 966995592 987575060 447759603 912645192 81271522 691183678 798705653 974615874 984985054 985015707 410344457 609464154 233360451 266202030 206868079 478457251 108404974 975089466 813026710 900432526 698167495 986579194 663817576 699083883 607670748 976867561 388128124 501262445 519536704 581779233 382342491 567265329 487994631 726928361 412572108 515622685 514097277 951633535 66791626 500343906 225789780 838285930 415630142 738443294 760543869 805136067 536501942 673106036 268936047 879346940 613903622 966003734 534217533 706668571 387393499 808401685 706972989 886885862 631226514 713153545 751065155 886436811 53101233 384741679 107131097 116075372 929247476 984967640 302639583 937821032 159248358 893294958 184505081 383096309 472209042 599783861 625963961 838451101 564538241 855034729 590799525 757285104 780091567 888131595 405028905 667774789 311746542 781901522 54767296 514260936 400559173 878020759 785512990 888082470 518314890 611516812 781364238 843774666 904337104 962834904 354890101 735293070 798877022 819588604 888217089 916723940 103258805 586629341 589879577 590460419 157265408 698539581 306803870 974978679 267578311 954547033 156149879 695178570 803298758 834642701 414840773 646391937 226339628 782188865 973562569 977165709 60608163 378338038 995011770 998182412 730707266 840640887 566427293 831398153 996521812 997180247 379884785 516106470 728101633 960122401 76156054 511149913 898239890 966325888 647262408 946189779 332897260 770811840 508904723 976469138 785169130 803961969 245967117 363695444 768235095 820286662 228918045 579505080 342233599 923126134 228328939 503829312 311066556 567552514 363784584 753017307 695101339 732553735 296281686 437705940 968486378 993483373 411444639 545215596 809323912 915768688 495297180 704147377 321871864 735748799 631196080 746506745 916166440 936396595 567630308 851032196 296334973 328554495 743355004 833549580 501989637 817235683 280651075 320726927 765065434 787745983 388625434 764591966 29746926 991213566 725577717 975360949 711164771 963599250 268831622 805208217 654194431 944035249 333944571 545015591 548091454 979541307 546740597 970213630 505201759 724851627 432179998 819015746 993559390 997891136 177117546 566391288 840052329 840250083 781886591 896846847 276097806 954136316 601437017 759254255 283489057 920874233 604254325 989949721 142602603 938324086 705374516 923090529 841282647 961698008 450752128 953368779 371234888 597070038 284605184 810770282 982239967 984755289 985084929 995550874 843940753 880717722 731537434 861276130 692508978 760639241 443980879 474015223 959140269 960103691 784395464 957172666 412238900 938952412 488701289 917177328 168998650 801845795 459576205 754021369 313861643 469710831 400714488 901838223 61581924 236591952 227150593 485879596 522590107 769971075 545731491 647215474 189747913 842740901 250965630 720449114 971635111 986932902 463616189 472077751 574728876 696337529 84074803 439864117 817078658 888576402 286597735 494277501 428312148 689028351 631599178 753251609 454000494 619299750 462903665 617104553 354624560 386856206 74495800 292998319 551269433 595255408 373827249 677110377 968765342 997470605 935388393 943416530 115954519 694398462 106808733 893865299 830076804 844938664 15787324 309635985 644669853 810358514 711190328 865717961 593805798 945182439 401281696 819529156 677649573 862019044 579956240 848110286 63347126 622692044 185469656 283795872 844772522 962422135 192398849 235033653 513376127 550916184 6763173 113126520 731703261 798212027 782925073 850201901 60277092 842282311 748251177 885096709 951994360 971140258 505318239 910732670 238584533 767564809 136947728 217734724 963797253 966155442 275841738 835251663 575770332 631602845 73750283 151945352 892098048 943080168 173754404 439973143 842762507 891955469 334731505 933578044 227826338 852968908 370309720 975425625 868917594 949948675 452823382 930940810 292057892 656949498 795308740 876628491 731237330 880304024 648451266 761391896 6582188 631698326 2952518 463868172 361847100 475441325 963348975 975896011 16014827 375308490 606725681 855248066 901999969 951564705 266067228 630791829 694432538 779250977 309040655 523160633 786443322 954947762 873948154 960188628 436171553 826548765 615750 956724510 174532929 322740109 853467738 959785690 187002761 625859583 59914111 921003430 310043245 755202539 337947469 604512113 360773113 611258199 304079210 599810055 149823675 319670082 472839871 613882300 840226858 877146923 83248936 136544867 509850157 664010045 239202180 436382537 493885987 637228072 383218695 703605842 606543841 623469906 429352224 624322451 449312342 683531087 630262790 883631179 395093793 685794619 119566906 388596902 557720430 907061848 548681438 851496929 385091048 688045431 370617278 584959963 852082247 986503544 700277562 873611425 906337114 955849318 693265481 867842032 850868457 969279615 882530196 978572687 792123915 887232337 146608735 778898776 864069311 902699414 544473596 984754772 19936705 120573031 837885207 890805664 450149991 878800659 199407510 219650697 680135291 954836580 769569725 923674248 346595697 414517397 171211432 262279848 771733787 819295752 874043993 897946706 535251771 950665917 215813632 654822745 496634944 679150865 224361868 344991064 907779834 910684301 415713319 956937620 571939378 898763375 825997168 870654298 107010211 602842709 680883844 741661071 966939250 968811788 155466479 176586698 978526387 983663364 534161744 871345143 171227317 365870555 653771133 876842046 410996075 824897917 604500018 700422743 855656479 905992195 739155996 757596986 870974354 891425417 581769861 884256441 251344567 433218957 732004801 919737301 536207085 603650364 235372997 568119958 914945352 989013303 54231743 930584080 988853957 995013401 412336864 694891566 975029749 996852255 199485118 659734736 316700637 495209445 467526319 547266175 398614688 711984610 669429105 793178172 119107108 508577694 496719275 588934219 563884177 681078463 99305737 512586752 111158455 136363265 752280930 978860008 162792572 801005259 812347088 955281654 31823094 58033359 59124859 634199875 625023494 845396613 737687259 777975402 93753320 300465510 881833203 889564989 539658245 796002198 529508099 601077574 983686341 999105405 751743983 962335891 816739099 852365586 966520878 981768995 708159987 747410298 675280977 951790847 244480951 659508180 313493883 840719954 664721099 850921454 307776249 573182847 107985577 478289474 299048951 454470499 589013340 773071136 436383457 728203089 254040299 505080402 701126342 701438339 303035774 660350966 92189293 629804018 955358423 997099389 427359316 953462857 729522055 794275950 969286783 989120549 690416507 785038961 137335704 543960901 129885322 959064584 725098292 883831425 271151844 653535691 918205924 951849669 954875031 996761720 98703733 310647651 105797343 848369254 855973377 902848684 307763899 805686291 702935820 818793890 455408302 465732260 361763802 539309576 52844471 735223770 226590163 876519667 405521702 740452371 830507515 956055812 34544854 979261497 696696274 757698167 854429688 995543714 718516336 829650859 935045038 977635837 4618246 809972122 195194581 409776574 300465104 909264322 82304381 420614254 359071562 482647878 403636741 954963544 819908531 968051309 349640380 628060954 258690747 365076435 646774697 816140994 836273914 917110412 272305472 539400514 521968717 634368183 213712000 317592220 63184181 120541721 89465852 564757377 5424658 316467306 726465908 979662001 127846843 854587125 56916394 280603750 423618501 481460649 712334676 963670089 399221262 815062347 617030147 725252884 902033896 939409343 48937514 822519111 753665548 868256086 129377884 302672818 722490079 957182329 907785695 954946320 509813749 737499391 312468140 710749932 26454599 245850443 254768911 623258756 68265491 649236952 946378461 971911669 164661777 520961252 288064404 789101857 353186497 737754061 725507504 797700578 595531698 825020928 233001592 563188315 713482686 733416509 853615545 927901989 991732091 994342326 362089549 931175863 486766923 573538331 831954868 913694396 325459707 906599581 467851403 841450096 253683213 611767702 446212325 893924012 551131201 613603068 589501566 798232955 924873368 959793592 890527478 906413161 553006311 794681502 693088082 999435568 551034249 836345222 438663653 497011575 608418021 876764291 627309332 844176546 693179422 783154194 889794725 947471472 3120656 839494076 15660723 79300216 123240567 331484829 783722463 896629791 389648164 880997919 260302276 905837812 340359103 615802746 21458051 856030605 772211674 966456332 156306638 331776795 45137053 457721405 134635869 190331033 315578103 470123192 799062977 971195830 73715368 513620525 854489851 872371692 950763728 990398552 478556999 746035295 634728481 851397738 168460236 358709515 856815879 913712952 594258239 955015326 607064653 786691488 863983538 880233280 156535181 906589783 822622977 977840356 653145427 823422720 724172927 986800269 653185937 663922293 824460849 975872571 438952027 866167714 199344566 290223321 237576031 772563860 993178424 994133742 991718600 994182587 529223890 865359629 820286099 921144101 131216130 920021521 13197574 566359495 613207415 750441929 573093617 968466433 211118627 218140861 127030127 315011882 808106447 882057444 313421720 534735280 588238496 651737827 947312869 948221477 174029528 288446991 65488756 434088810 465519437 846481447 60707852 838414702 342731995 400757002 275122312 508692317 353912865 892658160 949557329 978284239 570515508 975663690 57769989 701007065 79734633 970040298 260256542 354202489 169257530 695732975 838577293 871362393 387830333 740324042 40369229 145897322 881600971 913560354 35269269 492447653 199291490 879888643 812568944 900429165 563309151 570533576 377718144 380487062 981896468 987701684 504603582 713565149 139726965 526138297 151128409 943380455 240805305 624080532 752024105 929679987 258675486 866392079 608010608 997187001 222432322 732958231 36187492 149908395 527202792 698752348 425102972 551402910 325730222 711086865 356596659 769503582 242652312 456492749 745498119 948755017 237809248 413055448 411594271 682360111 758988618 998271960 796447663 985893041 84407739 830413353 465871413 937602570 765046514 795384131 840212506 900964600 353671355 699110772 779241085 941027088 924288730 924518448 58996052 339513069 396275193 806739245 303589235 517490987 636662173 656541596 868618596 920112769 327216706 981487915 618233117 641201453 906820350 965406842 725054407 759861623 28685010 388519516 778018091 804477945 951029884 996047355 299436985 386902725 325564815 618802119 34956840 731046735 146490620 888000531 322128923 794018498 584041046 875396140 256928085 622849804 109926648 247999802 350275336 508701642 896712282 940881568 876184125 915756951 41036088 785007156 658906162 670407817 837432298 919006779 73104821 893325910 63999000 919823439 486541481 555856202 191910117 462207653 677959907 844944276 415546261 428247909 442226758 800833954 827581452 947311653 149130091 456251275 643726092 764012551 818641569 981593702 285975401 557069676 870213454 888138937 149788878 554928041 529955211 849983807 377239610 989681205 29291727 909208087 731443817 831423194 271690032 456239260 623200378 672102419 542873011 987570645 462972202 785406169 828351376 950099522 257687347 766040364 126828091 483827206 406016482 550679369 692152072 782653417 42217376 802396165 360164294 804311142 992540796 993372303 516382821 584373167 767316686 860151950 565715081 618767226 964586334 990511102 91121022 337698138 442609294 803676446 944524452 991771948 582413154 697343588 712276184 802630926 145781621 680910999 830549601 966830832 736749376 841753532 978933838 984011128 229474879 647157024 53006977 998815035 43383567 423965964 822165295 922393491 185240817 439887523 455375043 893298264 707985078 790201699 138968172 424600659 136833890 371507471 725902652 762500582 4184128 501715126 604913575 790809784 4714473 631618040 530225712 682663694 435528138 711813351 926636298 971192017 225277577 368944599 670848047 719612060 345446119 495387899 276284395 625495919 59605175 719636580 566278082 947458915 898652038 975238739 2292602 298178647 593892974 986054449 866123025 896699642 530885078 780871481 327920978 894341029 999165079 999376338 344513430 871223341 256932962 836920520 582654789 907217052 617688922 721595869 222742057 492294259 320299876 697146789 54029175 177016983 628368802 752665975 738689910 780743859 7534099 723260664 555344219 896548308 470916175 576631597 394640497 444309248 173893823 538673258 332176765 538038696 755933348 788151418 703748676 874310232 214221490 634594794 215969357 595846049 312712191 756422712 574760856 667965281 17345134 500283464 849848665 941079115 316219236 850539830 957249274 981067391 322268486 403204145 952979890 976766304 970265682 971817029 301466188 336211982 232844712 574402830 135746427 308254096 356451453 422324936 127945058 504017486 763214404 928309622 813988409 838233896 23791707 696579291 358646423 442230548 288640274 472130132 267297823 828936182 543149883 575833014 391539922 768508627 987697671 998582703 497577972 782848655 526600551 679313324 900548253 998681990 997126020 999649378 715663517 753299534 39247103 878556330 151512496 888285908 423439139 866479688 855326705 992757171 997282279 997376317 340616420 482599996 425277111 564514041 448096555 948961764 913573176 966952620 550890169 932951626 535388015 556565766 522592640 982637513 301695929 506524938 549365480 656137338 140681188 204238563 263675326 675719088 468083372 745271574 466825935 743298696 865638486 921943753 577280828 911557581 347691567 776777385 985452525 995857110 808136182 890561705 292119407 951618959 105298687 500367487 336888356 667021377 140052803 982229410 404662168 888871715 192318193 698783878 629137980 935910520 281740863 715727618 143150749 990554959 906091454 927570455 94896526 404835408 614725630 662695660 379665191 400922680 378751295 888816226 839210297 906717062 972257775 988490258 666373364 949925696 769176490 908502733 19729180 654898526 132311672 272040711 41133830 327759562 360025059 388812170 217889267 351705064 549433840 768258287 413482535 551183121 65052897 399780993 719624844 930299773 147381593 440119674 101188387 450661140 796869582 852797708 945272728 979189022 181206696 404012920 122502087 876575351 991558315 999387046 461528974 801235476 71506992 769495276 287960430 482735226 890883107 971491464 613571331 855862925 365102904 545822181 140174040 905845506 154484870 683230446 740778388 970920242 757812796 821442781 915722412 967746102 777750384 968424105 549002506 955832810 751802413 916286010 61166062 710720174 403728957 591523546 227062901 752197686 883627370 984969834 443547765 916032281 697969651 822500421 846641995 905540619 795882041 825123778 250007848 304634870 910157382 949654818 932989521 966522635 848531637 916889073 738852442 900458074 961970475 973383860 361227821 829991735 204671477 567763624 911598529 927093418 583143879 915086699 490401975 531738079 284920491 792421964 940505130 994057705 454531382 549359453 964656135 978077647 831061400 871039302 278268155 831695085 806407159 835683814 866073385 946959093 605019232 976007684 265425666 301908419 332317919 885739246 649865672 846839163 639347847 843396784 471115053 871186743 456507493 924724857 741899179 770047870 230924014 890901319 965083640 988635297 260611081 272128805 507290540 935503801 52399501 201317389 446274281 555838837 695937802 836988274 485494941 887188738 227984444 832581015 247653938 315494236 232227110 973716054 261428152 836067338 978119717 985061924 191462092 723336781 363607363 919542121 277991212 624875804 879467929 963784352 152616977 957378047 632113081 895737312 549479207 995791963 877727222 948346569 247512976 459410469 343626874 560670804 781690142 863535546 262147304 487644565 637371835 952932780 345819831 884396857 256358016 517984452 794048945 842240819 905306434 998360609 384874335 599371096 58484780 815474378 913362161 952890402 959071326 974351950 164338764 816727128 98515183 974713451 840121194 843449630 701147324 788684299 96715524 798144891 692581082 775287813 924893145 991440167 918640989 929717575 267065539 575946307 569790597 580905751 893088498 950284660 549827036 978676232 143105314 382076740 842715976 894614908 875406253 931894786 791843339 836874050 936639166 990550455 39922737 115263428 340532538 930215754 142313380 707324424 145615000 395700738 731147750 833294681 322445353 663024962 124486729 972749041 47336777 266444404 874671753 960296838 564435461 879710514 705523196 968861921 47112250 109566181 728948549 978752117 196272147 314900812 126342173 977672682 304660600 313533184 884906798 907840043 605572651 949774971 474703474 578860247 234810229 577905587 709235148 874282314 410458418 820604309 222068262 984789256 748137414 850405820 228853153 607576771 531360902 918451530 557648965 883807626 602494584 758683158 200401580 899787084 421118436 997590918 964101048 967438876 191139227 962829162 943878461 998541342 91260097 159551059 105480485 845507207 6936779 622033232 323212601 366809175 589141512 988185736 653478348 949425288 378968934 844885531 474720578 742890076 618915491 882377653 50471993 287808126 439642642 661455595 142235969 614387591 353275054 600703669 697631241 953304045 347185835 775883616 309121371 466515809 446939242 748372786 839514903 949311150 22937932 764728848 594300973 710808595 613469191 981777478 84639412 867459053 786607987 972509307 243665531 490488545 781087376 954895316 73975478 642255263 416260836 512618525 268922593 453624853 15703603 799414139 969902225 992220265 595372913 853295909 978397922 995716157 53918499 200738302 55852877 572825720 388125463 522338622 632830006 954234883 945595911 996395703 114302977 314215930 436637876 837198483 851602966 871338898 856136024 860192305 404350477 474983532 371551920 552189832 250893852 954572560 86471370 568982197 109979558 433943339 14149448 250172358 220149975 908895634 611213946 931398692 867508170 947451882 943283560 995190816 568031674 801912249 27063275 566902991 65464326 588663389 523950774 948836041 526456319 654759299 985356583 997808659 176798735 900120702 361292576 969178756 461535860 679668184 173273100 212856606 322374987 887678790 477280872 527824840 271907012 940178495 678025528 964968290 243669718 554004900 263804143 266178819 757112665 800116616 813107352 899643911 722313447 968786209 856205340 880523449 686016214 715920237 865728605 988165936 115453250 443326527 133330846 372000900 218538476 548078730 784548774 925681750 811260573 942115827 395952975 566216628 783533161 891466652 140758159 809554940 337467208 755047930 477824274 821300095 13262222 267849435 680549223 924117995 421351154 752410389 968138920 995384369 103234561 784845064 319488188 732314186 439217679 675053424 81085978 327916001 423718221 558969046 789401781 995273774 190471619 538782919 93976199 352045891 810271135 895412216 868677989 969059357 857894183 983067552 807820563 934843996 27998219 918785383 801187356 887735029 45088588 829328435 50345379 154168239 164845306 165337556 574405548 754801033 389011965 719006690 256298505 729949484 963096301 985251870 689053262 823715305 569544385 849005232 340499450 427788915 815852787 950152088 504229125 744837736 914465170 967853322 476261062 730678341 155354808 416862526 835429775 843911386 766855686 997048793 850629664 925508250 378028416 502830501 178334950 532975911 788514867 925051020 431193418 755998083 229469497 820364746 966682689 971777685 99521784 546374410 343742986 845116522 860359085 948613059 23858424 762729467 200517101 464356540 291746434 951796770 323566334 822045934 884632219 960157716 273075698 767514134 692923251 957850942 125020517 517199019 386514116 568112153 91028749 452970803 185245033 446000063 463571104 926348074 584536603 819018155 148556086 568784541 674444728 971958702 235953898 536629216 468879921 984142833 862544155 985757732 387700352 485234814 270118410 579290935 903326653 954744609 5224963 832072705 447987012 775054898 967218143 993075245 625127377 939637313 560637540 808300217 917457624 933267607 296157823 470275441 508817212 810236733 847281903 962759328 633686399 709298589 993023435 999330438 102773567 478264218 511605829 716205612 429781800 829941280 2749730 907847904 984760471 993615586 917288519 994487606 272735782 435497032 863989981 869491100 895028352 978637991 887718749 963550553 5054889 791546353 562866477 637416996 929936342 939356804 16664935 540879917 946638583 981487702 571073317 870851315 41613357 930745740 375012626 632042642 374267122 855288275 227942402 235528200 760632962 866990092 860208673 903850855 510143559 581557860 403853264 647107850 345411884 378729845 982767556 999862543 424264533 455092896 231731892 958509956 560202610 917502466 293779430 610091808 818184868 992619759 131926295 713929284 270725501 843145117 569521211 772852305 331658277 718912760 161496384 380417356 292547433 664420750 841474823 962506137 864184320 996804838 378121158 775817824 535608069 988467612 824653535 863051350 4590894 649712820 603755409 672029246 685578450 877966778 176067317 822594301 955845434 958014360 811508299 991450616 8522388 363847502 610380767 909175259 420708188 882393785 502420334 949410916 192818144 943650666 149666246 470146571 730613638 995479048 284075696 470676185 407843310 760242897 414355358 798932856 714855272 920684552 185784286 612345244 320574435 567987464 594150128 799283667 937472628 942163415 939706521 957319008 682505021 760615194 164799759 234155685 749907176 806725480 343943786 867321629 151931139 794517913 296218563 380879240 225837138 300798116 385713145 603319806 264834419 666601799 557579266 871915545 984043125 991673428 881408369 981965002 862169023 900846416 610571966 943681877 90800141 547309339 28155143 680511723 341101741 892367093 749595548 949910261 796706895 992831168 650010371 887525114 957978457 986511529 405943725 748032299 754557951 993001388 986710224 999697770 738651045 945130772 33379802 862196952 668663940 823046394 521713210 975197893 394104836 958960678 473096926 673008535 766857051 989901468 339050811 736348489 167705994 282772074 428019151 440356037 564075016 870704669 175527454 286956754 558498487 779578967 359736215 731691103 555273503 668324227 407438640 434903407 93332445 908380162 702934536 832165205 911539138 911640970 723926168 872511255 535188173 936549680 798901816 881775458 332455808 710223824 563235110 764652242 99258414 762308567 999727609 999882885 15923417 511764492 804185855 970318802 812158410 909984681 800499216 863584603 395607944 465421605 797332067 932837452 913567293 955932873 996760683 998175190 785226718 944570733 815146450 921685898 329264699 983624980 355900388 394504508 597181350 850741253 621807802 733740159 597022009 628158428 538723532 982337930 443610711 917514580 76891800 688032626 291067916 323423712 741322788 820044436 149248980 200775924 659490032 981631468 647288465 831654464 523844864 727458468 469215791 477649515 390313629 982157045 217560464 705612064 43965771 361445846 643905767 701153507 768946884 908654922 805361091 836592153 254132718 754780340 587785751 640658195 998068089 999661841 87557176 268850524 460253185 490277405 36875562 685561722 851373137 999180327 101549487 615780732 458838265 518187749 952033551 981007594 320302567 685359085 350589238 456167807 711005275 836526007 475628363 932267863 409782805 601592120 820118650 923262951 181852859 734076544 410756082 496610065 163319489 873176999 790943191 792799850 316864910 753038196 913845935 922392738 197012272 829343499 94542669 151702510 965952789 985147506 633359105 703959967 849003585 993222261 763719468 888752668 651328099 985296337 701847767 769108736 746967200 998475841 592546512 975880710 739984942 785333902 104235318 291211770 461448065 679713442 287649267 939083350 424930612 902660984 624442871 849652634 790561977 968905932 522470075 658946901 706881171 800582941 300605602 413414660 286181284 772701830 923687606 957935828 968835085 979898557 178181387 400840315 264474833 515721231 966456532 981937215 282967523 514298764 387224599 676605900 387343173 499700597 657812560 675301548 905480780 948619431 465752876 897610620 563846544 977301627 133047204 645766999 15416563 449865101 350841132 549603758 310297904 394598198 556018006 589193528 339797822 604801252 251144194 794385917 554962884 735560938 346042808 738888073 672773283 895410258 218055979 708534690 641018454 835271992 835819114 964264410 743203588 810149438 998196140 999391228 778479868 879628859 792914357 816330304 921470863 942486342 918412666 986371514 488332792 528905103 745709809 986693991 320904853 610746821 232841148 238958027 759395241 883770944 261346135 392005844 64082736 836445698 480316842 871688057 769924997 876869644 183915070 915151908 454448688 792473797 822726361 853660538 969012921 983051670 965549085 984487705 28044749 107149172 805675926 959681972 595816289 666374925 333955301 578002666 600389594 960696150 584231679 687326059 965509024 982833202 439648263 651456703 462118475 543926374 510408551 809202547 447353772 819820850 828844987 909915704 850261728 915001351 922503155 964064920 402441363 526013871 676802076 974358748 428056049 479407807 177594076 829777090 375844722 547173673 446495548 597117652 680857116 935176381 894345828 921435430 33185089 338928647 127629967 876725799 818235019 947953225 187917061 382390998 622424190 965252280 117001440 912823423 612707580 898795686 578364654 606743895 719456693 852591247 584170225 817687468 503078350 829498311 957310444 991593348 951292220 986835214 688772056 690226418 45519589 500860657 269118788 609568145 877918744 946961998 863549502 982427787 6088231 898687796 492965615 674858742 928324380 960607055 359093995 987840757 725655563 804931536 829114772 868507238 35568880 876048778 951095609 990943373 392312620 721843159 903209663 920636413 706142054 999864605 901212527 964031018 963749996 969981786 648398521 934846907 957074221 990062531 95896228 844211216 703575745 938287972 246679325 949794066 950607676 972792782 384001723 664606938 285684523 942037114 728534356 789445389 141397632 648246095 565031009 878363375 245238080 400237965 826850369 853133542 880522884 926198032 869222950 900855915 872876769 952631558 993520138 996128270 959946323 971662064 228202560 655681965 781845291 948433228 110950307 762860887 651551299 844811138 99148924 626583760 245056199 944524568 415046330 631882597 182009381 848544699 246416465 466957098 688371832 694730031 307133658 818087360 311893843 480950773 96351004 754464708 916850972 968411716 150667530 975188782 52022590 508531053 886953531 933401475 727065017 905545507 294104605 351031846 574819667 833010119 38899403 430408929 249068622 416521903 290326792 550959903 196780778 302949195 858443699 995229317 720709227 742286833 788977984 985263153 861294442 913100744 979421025 984194612 223887996 242724101 232348154 247970207 592997917 725404790 989137333 998019371 58003569 579627145 809129935 867196432 160677507 432886065 947925607 958010887 49314309 409178680 852750275 879057708 628181026 676968001 770423885 915643603 145110993 190870503 123925130 522829304 493345136 753784015 769312368 880863957 886316630 901333241 2970410 163159644 17596464 747279146 628905435 880334577 257033286 921791509 839249205 950110472 120266174 802701082 327664482 943650369 455408438 455838762 285321658 539734322 278493799 494498975 593068612 727050985 630254290 680516133 76767042 944292393 483169370 552959741 923689164 959980016 882739406 930185679 846752737 901314079 374535312 782319919 557463002 756022808 51579403 353936100 266066218 697658724 765048168 919187768 968645020 986049035 165337478 205070915 76010789 457879573 655290264 778029771 727457409 975346667 875146061 966498193 642678330 834518777 842641798 927977050 841901654 855205190 336774145 906340130 547872829 716937230 440416847 647689485 212197944 601669713 334349419 476305630 687476371 862692571 124937351 924716114 481422510 764777386 840054397 886066506 555715078 815299523 509043868 967800651 648320743 732707018 260881299 539850779 992605424 998990279 259699948 848405936 907810248 921073203 969921608 981229836 242915339 439275737 770571199 834239822 733795464 943135341 368381556 855770690 290662763 851558867 137976923 952928307 65317923 947129754 740134659 938860747 589548415 862146361 965411381 992482077 134728620 946397540 955859739 967526160 774909288 893499575 225840013 994592943 838261127 929271575 906274522 985456887 766549188 997768027 436764313 664548383 661256194 720957915 594098301 662624015 818756685 898047093 72092005 780136137 514816223 888701796 772446453 852002142 45390897 926301437 531908331 908394978 865072614 874541649 535694636 795455827 833847208 969711920 567663152 579436247 356609080 825891560 896289357 993990729 382994572 549011534 31164559 595122411 397050834 446476239 749449438 816297774 12277065 275964303 185799017 676174803 992687349 994893363 589856200 687521553 307614961 430797520 761357964 962787653 709863442 917836665 39882713 307183775 87854714 198926267 900671138 983869761 893556480 982581407 806990674 982973284 533235912 763077976 177101046 587402180 88763089 898224866 611886188 698005104 720913809 905973215 452765945 929712035 234552071 714029404 959498318 972984757 137296592 352046526 7912275 516033033 717175546 897927434 152944765 166850263 69296362 841187048 456197293 498270079 262296168 549893332 451156786 752683309 255456163 318477552 255881332 630967728 311044535 785304158 840729847 929200637 804628431 849828029 784471530 988503068 608922238 942316350 952793646 983677420 362514510 486197659 98634743 776384608 150149519 171723057 436371692 461649233 139919173 649759100 51688660 129559887 817039613 913278470 860656458 866849505 957574462 967035987 299349462 923956810 590121178 913851249 442515303 610554748 341338445 349131193 595631322 970198467 835168725 875706403 515772805 931653084 359074433 442911498 938495004 988081434 957742949 976474662 773019033 967959512 664675919 710340475 367515977 540269163 250302418 787443376 740622900 963354214 847063940 930627791 282505006 655217324 863121789 875026085 30896736 412725965 482199524 613657778 176708323 883088161 768627333 971371152 938617781 957594717 971424174 984900682 675805633 811273188 292241988 644068457 56135413 319793186 282563836 540523272 634846049 874729873 163168381 907672763 849617152 954481253 518828045 995105386 443967265 577500863 386941966 457204441 7682549 183991375 216955133 398323281 520631860 942584163 774264304 953831876 587748816 680767488 343542946 676661208 126329941 338591952 724217035 773413936 82900615 798580169 670105652 937951316 832661181 854512660 821816536 915163708 551107407 973962794 787745630 815577399 615600978 733556394 817855655 948422037 910131809 953174566 562257057 571166752 779877364 801350326 16496635 16900340 288488871 413036679 869026407 980194259 345931905 459486193 84245742 838528988 387180722 851565454 776637393 921857159 512685610 610033057 707541620 774740465 467276073 773137757 647915357 879067313 133606798 462202277 617475942 818979515 789035924 998319904 891055787 918784518 265115672 476002593 605677195 840511778 113099221 377026403 891908901 951557991 999431540 999526577 176674402 470272320 437224898 918962332 76379774 351631868 650259569 873414448 228294799 700234726 109979962 530781262 381168047 712459430 804613451 932104771 71973637 278289054 626928512 685353376 568360904 897191909 294163161 326902336 1339354 57150795 145698869 629754597 384258267 623410179 666251937 828126553 958634566 976920170 622326199 683139881 535980536 896287512 821328733 852226869 23170875 965843087 693238900 941512529 204167538 625082885 498802508 939156858 833187621 946061904 209858987 591649323 484053456 824827534 238886004 550063055 867656885 977586668 757832404 860611187 678233859 843460183 659762670 708076881 972086111 985391728 308367289 753520742 245119356 596952598 177432885 548891232 731025502 779797217 660431175 815308869 877426554 931729612 403613273 454199925 204125836 719543630 708292590 997413050 632324134 812456892 981383730 990709328 659746812 733672201 882889831 979124867 664017801 733379925 275903705 896412379 983610251 985347548 398268742 615225222 117622787 434409146 856634406 999646714 946494025 984360564 843751390 985630512 672964258 679123365 709115966 916211627 570979853 861562641 204670161 702653649 153720011 403486910 709134939 940573021 855758937 860143545 743603271 764707061 233838118 884934736 963729189 971257045 689094592 702045348 624932960 861816028 887802793 978701980 969693866 973605593 248682123 854128052 106931542 168419158 999326513 999971440 937412852 948157391 500782644 545360415 809521267 834747713 987853238 988553867 994261026 999856775 215528326 292647400 980591136 988383395 716804945 734865669 925191468 978319821 921000016 978421342 919469586 924917108 956299997 968224975 910511008 948096145 380828853 879761694 216702335 487398804 21316403 364001187 52911711 223745174 287512700 665910914 13480466 38816156 150339555 268762989 235130427 374931151 169433055 592766378 571369803 619646198 856577044 890948083 961844229 975451907 554803261 789738449 19055550 251937654 738469656 931635912 656835502 770480246 17685864 368005060 108450084 289704532 886701088 909565759 807614971 884153734 511099795 789314277 104633969 496424083 371081927 484194234 702754905 866387072 37695753 975449215 418518044 436103625 715796704 962616909 330790691 754992186 699337721 942852030 262305609 958390966 748499256 905124592 746593611 994531902 286886223 865529828 526334905 620065260 438756631 882206224 61595723 73365832 645455774 935870414 673582431 829422812 735140508 960638919 40235789 691736806 992220485 992730302 417584848 621297913 93788934 447862728 910788172 949708196 246638545 878898067 680417693 957060224 397191514 692573145 846354293 978202525 854353063 941779306 921926088 927696948 262983462 701552668 510961096 631386224 750420600 791179395 682190806 996907125 381359577 990166028 607288079 835268304 884994676 919038706 832376871 846953265 903869651 989985264 917500621 963535596 558036257 924372016 487062797 577577844 786191594 983893127 373278788 959772510 803383114 939576507 608971756 771684442 404098859 755377899 534863832 666954889 749538558 806694149 772611804 903044102 594031740 715991712 616107852 655462004 387844811 481629712 894588736 961049076 597784681 807378731 482655152 871378987 609583760 643918322 928724566 983362382 838792022 877331367 949926768 960197981 744043979 749453506 572309399 656570312 289064412 795929864 762276129 964573426 171156275 379552409 930504600 949410839 596903691 642802043 75590382 649292390 90158576 505082659 903025909 965022290 555822145 608091825 127086183 152966431 953171972 977679127 849144062 993909315 363748010 937304923 373479878 958018880 210932104 692129834 731896760 961817140 171381677 967012528 937609567 955568301 571297578 783693740 400935996 766084890 52362215 583800868 612590271 990765458 589055888 994957752 642865726 823808837 98789978 941661044 442054806 886980938 408761498 626518381 382830204 677081287 137363085 460401838 392934294 553061595 694226521 951187581 923750494 999860367 594503343 994092094 252467205 536237068 238627749 248882852 762960820 831222504 431795971 754246813 498062136 836492694 818068193 972724717 594045739 685777678 582059005 972053488 472280639 698093163 93762888 158211168 700850706 876198478 515161371 914296914 594339312 895952515 614803449 932005755 488565400 941810883 119596854 554412878 527926553 707783441 43190892 598026572 727705691 814782696 14301195 372722137 456099012 667054951 507890636 997857255 844409516 989308470 126066352 178982303 515055850 855240650 406803763 482722331 993975863 996417447 520804440 553417131 997676190 999906051 364815588 762269488 77011629 663983419 823491134 924309148 18782036 868988761 762591539 823371812 43063486 956712848 261111461 644901532 252193331 980879187 717360977 755547085 367228120 773865785 51295179 569382368 978848479 992323868 433471685 799456162 981642448 990534545 272255852 505635153 472379612 579414857 107910780 533484839 988464248 990971079 846080828 937183392 592951693 634434122 928755044 948183143 850162248 932802836 342457212 575579097 235874872 332319333 810481928 840658987 949150808 967463459 442142392 548818468 312672515 983171352 617839017 782648687 425990971 617397014 956460115 974237743 139563820 829486268 971748963 979023879 755934164 990473017 484315506 936924126 171863451 825841299 899715727 955497440 435040576 679205713 597384419 839826911 302201343 810726184 98437646 488382419 843183852 958538492 513676640 849154700 925841773 987408894 648164261 859725187 661411295 691241587 145818893 248975770 203632349 873158566 251155004 915901984 883088588 952355631 650542146 655239352 543178660 922647023 88826670 403733435 480405802 565209102 261636178 363675830 726154570 897669681 553429774 989109998 68910172 345470711 158452072 735721941 572020739 748241850 528856759 894308076 84619793 708562774 189884414 455257161 133944089 923352575 222991584 554543386 302381579 760156227 925662254 929497344 113612955 689445734 203729266 852214824 845071598 861631787 350122648 750810035 476532284 614083482 76503392 452129842 266047861 717331508 526130972 770238638 693442353 815132130 969306172 977927743 256365073 293277834 606143144 989928723 506755361 961916167 884288621 965403065 60376931 845954877 315165984 977236325 665904997 865984238 373554998 435479617 299671941 584363055 463325962 490203159 826451296 875130841 684050466 959300120 409904137 955376697 807471140 829432673 402203738 652798933 778415383 797287879 604002379 876949509 63336114 364741012 681568246 907380613 709248487 865372680 992122497 998371425 189733812 585869537 195002981 432192818 376041580 888942750 864281414 895645823 697197694 769565634 138901416 845346253 82004707 560610714 876580298 981700640 232524423 687207105 720052867 805581150 424643814 604833583 355270436 604050262 971783998 990636358 795602688 885800582 314088023 816823207 206330876 785158366 45365425 235616764 162606842 737342492 244906361 522109687 36310300 953512939 407769968 417741808 923510412 928890518 421800328 899744248 558808993 804871554 289055897 377971654 741954075 782154841 940934180 970577909 757913460 875112812 384713968 815070349 45041593 160145704 137214870 256586760 633840342 703447035 425760147 449995381 189944287 292760089 81295405 978034429 609680045 833997145 455757763 830654932 4375717 890088096 310380168 815574145 995637916 997461783 338178591 974835667 743404117 853320607 635392251 656646744 558157954 674669553 136211091 291711432 196748273 905369620 906377916 909037574 469830560 522880043 200405882 646459676 709333859 716679382 63101310 254414673 193538573 752507095 425860264 600584742 658618362 969804754 791505413 978638830 985877100 993273542 495705760 830308997 892493092 990169472 750926123 839233938 210860544 348098912 351255049 967960545 143518247 323392576 339736677 775987381 693970187 846133325 314674711 561618399 347297906 845373272 138860289 432127300 488253473 942353821 365512753 457480107 95127871 234069866 36910997 818934632 120670117 566736959 257704331 414746314 440120742 441605286 846032022 946884207 704978120 849466150 286987005 922359391 824979188 915863413 259192132 490755500 791788348 900196389 206852814 261591708 412160300 481038507 75287426 809362211 173501955 404961391 13842540 166940094 648024221 954466107 788554027 855471721 579393163 607985819 148000989 151190941 185752 908854514 659035045 858205266 461476370 572310526 69631734 300507132 510455739 599941145 30190655 642119002 336066957 800597175 330493574 729921054 693342190 885280168 688808873 948075919 515784489 541961757 951591151 991740692 199011138 344253287 194004363 255218375 621649650 686160891 274763160 610803625 614972499 731538758 612237695 720943736 778772293 981795579 282203912 893740838 415866166 423665612 473003361 542203371 273630868 493932652 307275018 308808739 453896645 979479305 641067234 686221954 212332636 608857955 339339147 854748745 337248459 940197863 104531889 800474880 548689734 753159699 952883648 976882070 651987015 908939241 684268137 775286327 187084579 726516633 634257164 894122138 114196602 852112487 705383438 717957456 102142393 302207108 886315588 915458432 886869093 911702550 817617096 876675392 610970838 969020718 540610075 705311867 965735732 972310423 772384203 969466239 987028303 997102891 415227820 704515890 887193860 937955842 830467976 894033853 420296312 787748319 681273213 779625360 699146477 837158428 751885776 987214372 168052500 450933826 639798124 809578473 559452510 595444749 695072490 994058011 712740976 824292178 758404631 787356279 10449642 685077958 817771899 961497403 678095138 865342916 464928345 726047914 400714724 470508006 190047951 468811565 713264279 805305170 416515606 425511432 769077935 840826591 201431763 438003905 976928190 988621004 208989534 570192168 109338615 883076792 154163810 749939297 234782900 846316545 983927159 992045691 386990512 870879744 26215359 80143739 488535685 910171881 80548818 635791834 690718703 881049005 132271213 139172170 865010236 994312553 417615592 942774962 259340997 625453400 236621126 301594661 834170144 931138350 345623203 727311648 394935413 653482928 213423337 616871110 650065831 653619960 35427875 37278129 863746836 921899144 48450917 822351452 880251117 922226915 349312375 668099334 31499746 165445607 254459846 926128625 88434490 601904528 442604204 567957971 788398403 983654763 800473298 983572573 9710152 749135791 28698659 807523059 904230296 905336822 290867473 315355754 128139496 925717812 921148766 967037023 609185261 742588914 446774607 950079614 957160022 992912779 805370116 813579917 633202332 646019811 805746113 933013190 426865467 819417651 971625354 980383488 417266104 596082292 849072395 979562680 424156182 836403171 459120686 594668652 416825802 650647917 636621057 857447962 506371643 985175496 618648412 828707311 388453636 959180344 797125313 947809561 160580803 561801945 62835538 543134074 192191794 761699499 402630131 486012514 927079725 931641113 573418512 601061486 480820397 531093532 389018084 683701931 307290797 496048656 603271276 683377456 787410243 855739888 808917052 989118728 196174431 271026028 642449987 699666156 473895384 851185019 231438967 941403722 213884827 697536361 662686590 769746536 538732871 792081236 854760736 978066727 671896995 705576877 82884756 674066742 301128018 852366801 541682319 896946667 741107282 817903574 479825043 641124420 287079690 289566194 697262061 830967935 478452272 573706500 558201814 860805668 570333092 771875438 417139303 757950707 882032753 903379481 83043681 867403981 634671440 991785029 539770667 756322934 479975840 925870285 637434313 694925249 719427142 768198784 476262166 514813919 155145096 900787684 515995976 948830753 796663046 923056126 394026648 809806503 806117676 888193989 415709973 823168817 672828956 742162408 856386586 957702091 258239375 812713315 63286323 713870463 894631189 988064441 365872395 381995586 65383775 829336608 48863850 280517032 413686774 877609147 878031150 966406795 847211860 925699887 815338668 908159809 523625220 583061695 817615916 982677649 185388798 781602083 918158819 930582956 813420390 837413964 44506055 687077783 490788886 905610145 486563564 980540692 896744265 975870011 893655626 966567463 456843413 541383860 302716570 711577165 586405842 936256882 577707949 650209180 919088229 976430518 28421559 929828444 95612169 279227128 760740507 815566217 199195535 723707709 475198346 996619276 309524071 339532478 36890195 678148796 590325311 998437923 43824167 542150259 207141244 845566830 76127271 118332259 499702812 614122040 935809399 984058684 617759057 681809949 905907735 946441786 565219026 962054460 741839279 804930553 124838086 411019491 658421900 800273129 611227572 856910982 953750337 953862876 377291545 887047177 75931740 706462665 745902456 780777386 725090948 930904012 938486890 972478782 935212207 975370418 854057275 881856190 910100133 992266942 423669523 923598564 593717964 899395988 237457072 616937218 837897131 946835390 683487748 684666931 373389009 434866473 896335635 982499043 695612854 890923915 87538240 596292311 77350468 977365921 234826487 369525295 933024098 975653419 261992100 463886498 702532273 953042702 2552907 715199211 460265194 825299039 942392935 981978681 902295970 932847199 291158422 340218411 144787517 764868407 189746404 401891740 264933355 827052213 165695545 861827297 154766482 422558747 657901895 939261051 631792921 660652715 149931534 868144393 65006048 469172300 691098314 927225011 881634748 888694650 168224403 645676855 760222504 940467554 244084446 729771480 574066355 755290828 758021218 898965721 386231533 393952314 24397275 898807956 524214838 654396622 398963660 874073093 982903343 996787700 127060625 831543438 639769884 829200316 172154851 392055273 212335873 474456097 956610885 958429792 377323526 419890386 237362501 356207660 936444335 997174549 141325338 810260349 319742477 519297064 932692471 981692505 339866333 699517084 86600693 446913155 865051107 988412922 517681286 934813406 848438731 928499714 783377233 822537222 806711309 836940578 446676574 970295896 202403018 505750410 821388962 947098727 180928590 257599952 526719316 680581450 605567313 638289813 790050636 823100222 73844418 314359156 880765907 979807011 213178212 538097849 747842084 997795061 843059558 990473473 473259674 693067923 490887961 799843503 984339816 990069757 526761323 865224379 808995510 866901882 660888627 775327872 919358446 965885836 81193825 192368439 119421615 184467910 726448081 966766691 918955706 949215589 330037307 464793071 375430164 831383872 766641743 956174216 566337616 720546420 591645426 967143591 243626086 466400803 897164889 905837887 864443042 874304097 939733917 970261715 32221084 38973144 912841979 954327442 444456521 811272091 845165239 869166025 946556802 988983401 662407139 721359790 459672298 927268930 699840980 992994383 364039925 689520035 691542330 692699705 475286086 896754349 352400724 758774808 354344360 878052808 190196214 796055736 404447938 781201331 152920011 884194163 929729576 967313812 173989990 894905506 912282962 915011152 331662929 423601602 992481610 997843747 325520213 459831902 525735092 682763063 407688626 420797436 785713427 826318977 41540028 249841156 852491301 945522581 261535826 569163646 922340432 984888993 571055972 596839306 668701480 676979520 990486079 994647140 985384301 993645378 262873663 797832734 319754762 828580494 918974142 922265137 105074150 388914313 952026085 967898763 305845544 744081193 739333856 951051695 347189185 876194213 388583605 564967751 650883172 723478048 252019618 424024199 775711335 844137665 743045312 775545035 182587331 721091825 816617015 816819114 810460738 923057109 558971703 656439058 76658869 952208047 305642113 650164205 758957927 802083586 335262822 418358789 977878504 980601418 721379484 738313919 887185336 989734709 633922867 672797162 782818494 790455341 514040897 598404755 67272168 609008291 249375016 934288154 964026499 984610344 412348769 453353830 578211869 671950458 207216387 451415591 339415575 468266771 107825417 175592736 790414011 817344272 915886868 984208705 557905021 982785277 505276427 713852705 603017706 832631937 898673638 921727365 87636332 914422411 661101258 912461365 932393960 994229671 66029641 932759706 166292675 315024051 411851076 655509955 981090703 991546070 95827626 940282750 334405742 691460509 325065837 947383204 451726929 817634307 927320489 964369890 466945059 889171126 435109334 979630100 504684994 541320944 103863009 458157692 287136850 553539580 885112945 992704212 941816762 989546884 319569865 791894446 797578630 972528423 974344641 998687859 62428579 325918144 98297968 346599144 748444830 898815182 502142276 964796219 702206644 775513696 373501444 872954267 768720824 835508837 72021613 159289303 397963255 734593628 886678879 934963175 22405389 690927984 998970736 999962317 578726465 624785464 732959244 760521487 440422562 508641129 221730195 893877628 399492471 499426451 352952199 435264455 253344317 398441206 559525534 810126478 647634996 782597989 44237569 124205644 378343630 576008999 401823786 762374392 469625996 558890887 903590936 961560545 452999446 612295596 266659404 328380799 93656560 186814160 295325097 582976041 933732933 942705184 630456626 796302004 954079612 985655891 296316546 929420477 533246253 777296931 261431264 807265005 234412423 547747634 191465121 881729051 836569304 955688675 402011277 978432003 229488253 703275157 309420976 713986671 604777172 825248172 860319186 887047312 62074175 691843169 132812985 781459247 880196350 965533340 4712529 43620110 311382342 480916851 296376885 366542235 201476788 588752225 395564875 642874475 100200838 583075916 97511299 333956606 983291772 996442492 220379766 410637151 387787261 827886890 277758675 823817143 449539157 856818460 290202709 913221146 120793827 794644243 816678129 977574369 804710229 895458206 797350478 915154290 533653532 765424825 403621454 593590037 228508632 297805484 194245916 269802197 92912789 412020380 97143066 912979558 651018182 910779649 36195247 471528219 721505795 976667755 892609343 951427037 106194868 224239196 62112075 132579625 983514886 997243952 441738747 610979825 83721427 831212124 155659523 724513868 981687261 997150655 138940942 595586698 750348576 905845506 130260555 586204357 232148987 986585217 204690563 901409664 804743236 974897156 338779301 502570670 949877579 988433876 445859213 863810056 800808348 965077833 433692961 700067463 68101457 645385109 32128071 111735937 349613664 525983872 584444745 753734120 802677286 806527390 7830068 963915558 849978244 962450413 565212933 794305868 410254021 491587075 524514934 605005937 263694762 652320891 956076207 974191191 107346812 344751391 314959441 802033974 619447582 997903339 966075318 982750981 308880840 805399493 875729630 952866073 899220262 899905249 422712161 792183479 280292011 802363419 639552040 846938895 870355017 980369919 777478147 852381782 301609716 713889388 475742741 675394589 728243513 907741666 579899454 950504359 507352796 775957819 582923405 921191366 725340736 733178329 648537686 954255277 76089111 913570342 248234903 487786951 481767667 608810746 904219640 934340145 300306148 327982411 491299030 644636046 954677961 976200548 334289781 795904446 532746407 615598087 753695358 852957738 750691390 988950866 377843416 834701606 398323945 490417092 872008322 988306227 117481672 123976106 128299881 621074892 466516433 631446936 769366109 958451424 682158811 729119162 87393215 342572714 496462482 882148549 322535673 954283558 979272343 984731357 632225852 868447563 406953407 538534015 103343117 770456259 694732960 792167052 872800972 886780599 153920533 818862420 384595235 554359432 179709619 888325872 706442657 780405299 615405464 779272574 800986298 874060167 45777639 158970803 630193182 876753889 581022382 919161991 974224871 990840798 852971144 946331417 97693943 330347230 164714954 960294457 710517479 857715430 699550103 875982369 569597312 853310332 93413566 776930543 59457404 859231833 727084493 774924254 495949976 795450469 939654074 948031195 239019723 464061226 301888941 640077495 725075905 846756321 56900108 695088400 236959293 351361096 646276098 715123075 875842475 895147229 506619150 518312822 347331943 920329270 844117082 974073109 890818492 937215687 905423153 912261391 998642232 999672754 967306865 992621825 235597972 421135121 761902508 878210491 501741332 943935536 42293818 152695837 233706648 471836878 965310532 983559536 330985841 773616529 59013707 180090580 679394266 971322188 891533941 947953388 846402095 900847817 36669816 905580034 182652288 700533676 828143225 959404780 97339494 780015055 739720049 929591161 668117180 992563430 283901824 959532664 537469852 593267526 193954210 659279019 910859740 940478322 850800817 856558143 930237697 950602996 519479713 696857056 544898656 974132052 634623139 836578026 171255011 500961406 615532200 901670099 375633852 409665209 748119771 828875517 56846499 405465200 436481846 649861364 870638736 957617283 597641322 893252440 195135970 990674331 695313168 924226426 844069264 875103415 689364345 884831063 553908031 996329876 928544987 982547867 513441313 615061057 709965443 861720399 427809352 742813797 136387066 885216067 384570628 733177370 329681802 631909089 665207987 763130529 703686919 946555460 569350424 843582487 482513575 948210756 510310668 883042545 345254660 714649262 111525718 869746619 603282590 955941324 82940053 814738390 626165834 742862566 162895718 268163155 77823382 309070639 714939813 719312171 702080367 983034460 249213636 847574099 276923343 987413843 817829193 975550198 256272661 558791686 454138019 969385473 180639279 775435437 711866772 738072315 200198358 396147612 318052371 639126486 433721097 866829872 613991390 749200895 671163752 809418433 9723719 843960224 695553486 837890870 882718941 930252178 500500504 941333211 399626302 791549609 846261122 882317568 86066326 381068496 211261801 397415473 712932482 731123749 341333117 474406044 536969624 733379438 391118292 625208042 818391873 834327712 829042344 882198617 131275281 738953227 550142705 983045875 463843121 640684741 758844645 782493921 824619108 824819367 996333219 997507413 646585342 655828360 694991823 938317416 102055717 964995268 28751209 477047541 527253895 925121892 276658256 577026579 299667374 521990564 224671861 335622557 871259556 893915321 849827347 884735744 480199785 603799395 847187828 975025675 526163657 530385975 484631108 612010723 150147524 632508111 126160364 600495491 369807540 715068551 295787505 380978376 333026035 802012143 680549634 816114849 682758704 791003724 674780327 693875981 864926112 981026710 747225764 784550979 632537342 806532247 828440406 927062848 10416099 209418730 202296123 630645522 878711685 918659310 811246844 875555292 774683910 789642571 311490772 451171521 282721596 700107128 772047580 846800528 569279711 834501733 89999060 194955656 96636792 558455711 992303037 995376402 445212255 561356395 43311286 685387184 143417220 894047246 812474428 826592505 281806399 652341424 587018116 876403016 810226457 836166850 355429005 584915475 639060449 991477693 450847082 628821733 99264087 568891774 275633011 290978040 36815299 217024825 740650383 898066503 396885106 823476139 269510682 574858249 590227633 781674853 375980364 608041240 179301001 702184617 284021325 927624893 834232010 861394028 478706062 512475956 221745289 793159286 68201779 558044136 426653544 493591053 225384588 760003350 181890319 782485096 231675930 390662635 125478730 742962667 676121134 875925519 183071681 431688514 644726545 891537446 431971595 833233643 211221718 314351199 407562135 625646881 480282923 940559362 936881491 964804204 554279766 874583510 742538613 897996073 559423553 702003490 548251190 848972591 964572607 993410961 767759705 891407547 82934808 480340496 308794937 576983513 240106940 283000453 486789573 782215389 970224435 989142381 192454092 745329456 868946470 962830245 142828272 988343862 851314533 860923136 504686443 980508418 509266593 639595615 609652870 685970134 266034648 966211525 333747802 976671323 952119903 973227984 224584273 941933790 285719486 831755589 992361858 998765778 328381006 458105448 278003415 876551315 913736210 996297911 372404550 516764223 379431639 946599130 860980540 999528684 218643891 835962498 107972647 146312936 420025015 531000059 137130704 951077681 345797134 610739235 263689430 415450743 701320350 873413082 265443279 711239811 365787318 598391542 869223450 878931906 964059137 978434137 118506614 815274114 595324882 940072787 876146694 994054634 668525719 701193773 756674803 966376078 394532113 699482707 558620143 662931266 851736023 955842440 10251101 988616605 453198178 909128767 105383824 306757843 533749047 596781203 913293494 941580711 83669238 978713365 712135945 960587963 73240778 992132892 250561385 760466159 26857302 591748264 593455549 886251639 866778058 896500183 412472951 684956092 832527030 909898589 999098431 999434873 940403562 971938162 332267863 352832148 265475842 471791524 535699818 989522564 103701735 614612395 714991083 794042159 522436380 526749244 376239923 785012407 269846056 897062513 69600998 275670382 409761425 733192879 775089881 909938878 322276107 789794219 294900444 318570314 509407831 599533253 291244281 560013292 465037275 656124793 603645363 818983518 99754353 345086688 202021291 226058954 813027876 955205641 308882177 863942121 727171051 832289722 959252986 967385945 548368159 608937717 121457500 819623372 890734625 978306709 196836394 827134057 180457101 760317730 398563435 890916544 159805360 200484944 566450061 838562828 563745118 707161657 491063554 776475586 303239402 326071411 466044938 664082832 199809439 328354810 255786917 727781212 355466572 684728708 957713580 961459030 262018965 922225534 236897000 258079936 209146355 524716277 711131221 814131868 707515482 741736370 440916535 962003329 480515467 975361436 325890947 426247688 536296425 879378853 578189404 604423647 94638733 412922209 421699018 489352465 126892855 328653039 449423409 585863762 242100266 782635502 529812979 856442373 5904516 784601833 242746725 272410740 340693225 694828654 638429570 676017226 450915482 729274417 262393202 751441478 216465543 477335202 838169874 896634003 425503447 460760183 321893506 503747816 178603994 668375350 656495720 703405359 162003481 343424238 23842083 77793517 849955594 904855992 627439144 818488364 10813064 380744161 463271402 734918786 760536863 978462810 730262475 812493219 331256681 673076695 66039631 606750542 523048604 552534279 219284707 881017153 451633370 681792234 44385646 384197040 324735031 829988628 93381055 372318036 686914156 933712564 508403403 960683123 911085483 941925326 321694704 540859174 835049245 973371557 307755661 859149104 270675432 814727146 396581844 566261485 819745507 847176905 403998171 523552724 240495142 734680289 879149568 999258671 854996240 911298017 599411998 713845938 237336935 314869155 790205690 999905091 475218545 961874956 915898843 971556143 411864237 992794761 826364136 847117340 236364054 579913016 557238552 735382624 359846250 458153859 736669986 928874085 99536785 770523431 465436619 607258355 190617326 610878971 814403245 980323821 927315874 975348810 704206599 721130681 792457033 864733536 653580297 886778316 132455750 922664742 670480207 726429780 985856001 991061130 830003079 932501945 829606752 858851192 106649717 768174980 487431954 931877850 639675880 858646336 479188007 596173212 217927926 940655363 424128730 637297326 728022875 862865227 196091349 928361854 706228937 731271641 590724835 760045644 203236779 254051923 486667283 839118654 803371539 995676473 292569970 360902745 874813319 882655252 583594930 967059724 849474493 925587835 861948718 923689150 457523215 943452277 126989940 925971056 362935353 864220429 218766874 873065535 546886343 700135252 899939412 909111962 195625939 681785126 758234645 831695536 485333146 591177120 609194957 675188591 705025496 787935111 942898451 965978961 83887708 241960944 908775002 998346527 881902067 927404310 951617799 971978581 31622853 219394517 623274545 722585883 209980371 500839328 227207263 432344482 268273891 619723357 788863753 866207491 170938854 927333756 87955804 521222607 404914186 530428705 144016693 661400308 294752709 933511417 3674392 915876447 403710267 625466182 507028194 780761943 299500652 847647333 629183528 695155327 388518212 482610001 414726081 493420403 377176098 401933851 447764479 792611384 856132248 915884952 56980839 473683918 160459752 311844330 500300506 610025710 759772487 807955618 81090788 135810443 586936977 943728071 690745333 750110935 245599645 724219015 457367554 636619792 217873997 482342376 35373997 128146798 702535047 886266803 863065751 951943376 508215272 753027360 112964848 782576108 849411572 999357729 504258895 527705133 83546028 810504500 92286838 473454741 822196483 993646501 140261672 947057698 793930986 874742982 810737237 951372832 117931251 879448489 993212170 997685241 804425648 897295738 994122331 997375047 475668627 970928635 37173139 937289129 195245833 612542024 751383731 961501241 536814981 715510557 579866387 808797787 317205331 793775742 685577735 804647823 41364975 908972003 630879792 787074898 514689672 574684981 380315780 639829986 941298229 968060788 816761492 847854089 688240540 944123139 707113907 753733351 414637710 920869412 61239905 658209928 608758731 618355676 174333574 618176239 971911511 986838869 645160111 918095418 15343690 586513140 903861741 991862018 59956246 68950566 316668407 378874873 145838345 471182219 179497817 316163185 918030217 925119153 115073603 501201858 108539705 365715307 754767262 815302672 919239305 956748567 983558899 994614686 213263886 606114035 695966137 733690070 844919451 951093236 143947500 219894578 730157680 855228706 946437112 965975180 80164773 367667974 578628829 766852143 946085652 986784248 958585412 979497203 885706636 995359183 159875873 168054177 258492073 595693728 944841222 995712501 466361090 550434705 592135154 821833951 67663609 555734469 973526863 990856290 38244487 421068352 379635775 643378405 246312053 846994522 83075161 764458790 765080621 804315002 72766729 785802135 918652008 940119744 691946641 920182073 358684522 722892186 298857675 756902307 500662351 731541426 938723177 963234407 909304455 945042403 557272043 780794502 820176314 821114492 401678178 683694308 730629809 905914483 505562877 581643821 755870157 945392708 681953684 806142209 607858684 907473682 246716478 585572754 101419033 282669624 434065525 821673203 438791397 478550204 105800997 222575000 293594994 858907911 483709765 510450191 642506812 748757401 549401897 923998027 937285048 958011371 874475762 998815302 501266036 753530186 27828346 289359082 993440886 998356937 315716820 561765640 701177867 823003900 265846179 844704114 324074973 570655111 111746324 728685062 617766695 807278670 947676150 948426581 409326429 960632143 530208597 782076929 340560064 998395149 299043271 654344858 106851306 956395270 246640760 257462774 609714421 679551920 76961661 199595746 432439822 472830966 895205902 905276821 553944131 562667137 123651726 310701726 288819208 539497399 471999925 542012217 140626865 348566246 725052685 841928436 534196473 933598668 697877472 701376633 546500664 662568563 35357336 523465943 643163907 674128885 551650678 614335171 983256485 998866365 376478178 527882716 909288646 915020974 268287133 493090358 621474950 889252575 763185046 980777545 31036442 155110653 437934127 523402364 635282049 957296473 176031281 970065597 772815015 875406569 774988745 803458720 337361700 544023278 126621554 758686369 189919385 398033774 899215467 946562919 684686561 904050524 663793088 864740101 884121203 895327185 643765220 745734457 166995164 322437381 732916715 929995951 5763225 290110382 658629377 785037878 78434137 596147851 205815542 611476528 832197747 962911360 122432830 729222483 705638990 906659508 352124772 702510519 240810377 621754759 421045943 805162242 25564805 328968661 842025294 875739313 951131408 994850886 131464958 763217374 403935316 939899783 154672289 685784392 365309782 600637878 189564101 406247964 412429403 691195450 987316235 998616290 14502704 334436601 978092589 995575877 744462681 870383073 235886308 313648119 155646681 623077097 168096296 379947671 223282372 830753639 693711862 749633780 734788373 960604344 555639260 840190305 955332718 974228290 408448452 877339495 292429929 556876138 954922624 960478504 837918646 917405285 356160474 390639676 327390933 947990974 950574973 978854282 693392935 916566491 806213524 999345244 445350759 487306543 593575086 753014412 258545603 962237235 466765133 882423153 238943084 556598276 560212487 601359327 707804522 998221478 512135745 874107197 206331847 343175673 363671888 696654708 38502145 979512084 333367016 843029917 357200017 624467153 805226483 923845459 756046920 982060239 666596131 748389241 790567732 892906513 151816858 634382240 507274692 588478913 340389621 513515860 158905239 790401550 645646402 878765301 280917853 371811237 915441114 930266976 92611544 659044124 796999707 945929671 847020568 975442909 646780131 917994151 288303398 745031396 150035185 390001227 790192251 901596305 221217093 493631317 935478623 975943346 899691553 913968767 492055912 624843453 299859723 332175028 885407668 945611675 511226259 659718308 691562223 746022531 286225715 761958930 578643956 707398711 464519904 638178880 108415970 192155040 292459043 646748060 176650987 531196943 816495835 851186828 886417880 930993475 655507822 997279834 586689995 852677745 387916477 678648847 518843336 526174999 592215650 934715196 817040318 949084677 547992424 658956174 890302140 954028448 652585167 710838343 138706641 781387322 50732225 213705536 512073640 514277235 66323203 601960973 81280388 91364093 445455347 770950644 819299004 864223682 35857003 685646375 422424636 457914124 222694575 967722238 157600471 248286501 157617748 555423263 457848403 507238388 982745660 983374344 970962911 986113881 988589930 995627913 192162746 801778200 948021092 965918035 666881830 872367328 59717959 360665150 771510955 941215758 583984428 855719100 24788334 753655208 807837391 902234419 864067790 988221095 132200034 847254259 829309575 920715559 244679641 460138418 531891835 943035971 11111717 496920372 703995607 812380080 430485152 626584971 328371396 455663115 189359249 230229220 363542991 974538872 395395600 757342142 704495371 767365894 614118152 719081800 211980802 479789188 115354065 865977749 178058369 514930547 202653662 509978067 329808698 594712715 424435924 923965473 785410758 868926659 454389026 830511409 700627886 871507684 145304985 780830045 729672738 821909417 138557434 306852762 480298994 489603966 389846140 510376888 251036982 310182587 767922277 787332293 483107694 533143834 344927561 401022067 157538805 417787690 566511499 867440298 258325877 700387472 931902545 960260100 820573834 928631191 192091876 387567072 271621613 954225023 71987479 821982817 661716762 888016714 955239285 960254657 959610260 965594744 405264357 534578336 586883628 783247940 598885894 813471407 381751030 744959774 929108585 930360907 936451724 950126412 489223462 672851770 486093242 923179845 296485291 316266939 555763450 951556380 375848882 779461607 795189367 931288218 549728712 762397774 966689678 985295955 122256893 341328964 133336531 299903236 387890669 805087254 315784078 575479408 214947446 553061124 553428804 865192952 542251000 844244671 291288473 502587120 682541794 684663663 693119568 741271446 894924183 944611403 461932082 790028561 428911961 576143811 220719296 976190284 780956714 893803452 571378003 829201281 886241114 998503448 197908485 420639962 892330167 905328635 301941677 564310898 744004683 985780557 922189564 924137799 252657883 567362259 40433816 842518661 925807432 932088140 673712958 737957118 25863222 62653287 428485939 535493202 877863437 934319497 302566828 761207821 582473713 842467243 4891893 307280458 400252043 797283068 377489006 379791569 939633729 948008098 270318714 623315211 269945650 925937895 246379847 306784133 276287509 557386684 316178624 525720645 292973450 725072621 946151674 999651911 224801688 969089497 826848969 954205805 907484702 913112727 143719693 994560923 624851759 633300641 453006799 647546559 743042425 849861505 588289965 611330329 698390576 829322584 358076997 636197403 517475338 800021602 619592339 877916928 108994920 949169579 48697764 376079350 36071871 694049870 956642408 994348762 43403336 918127383 949019927 965958038 644194294 769937159 21222117 742070102 572196808 919184808 849443104 900508419 390655958 611708750 15601521 935783855 279023292 634907675 765296151 866466000 972449333 989333195 636572110 769742906 436563430 881911216 18992693 165103506 954411719 998127513 647837264 714246500 49491947 58934037 464603175 561032664 805739804 897130650 173791058 989303688 920550916 939270424 241700370 933391658 365359650 627039713 943247573 947589173 4016074 79876014 714847727 740491045 967095667 979877612 998848355 999461417 246394289 843321071 287135066 665429039 529294529 788262216 213363112 465631360 382680363 570244949 523777773 564255888 959090664 992785408 882941331 953634115 595204092 789635693 281537528 820697142 105222112 165063325 23633607 267215850 814487839 910304672 507958561 645162440 320813897 497444939 62216776 650211484 936653910 981922762 998436030 998757383 925869060 992680388 398175444 465317065 127547146 359339851 735228464 918317585 289718932 729516652 361983929 920421084 396614156 398583657 514341787 699857898 660898006 742621435 803932226 948963419 252153774 535056305 823501467 972556579 946357679 988461938 449992622 946850264 269640691 637939026 775495642 967599947 504470326 771863652 888149021 902930647 350938361 469873883 258857704 591675034 679975592 817599308 423138930 429343780 70324553 667919648 12526422 215326411 127870960 334412557 952997740 984334393 835820969 899701922 847744765 988047650 878206858 990483417 994414838 999485301 780668981 976047467 560462766 565319184 295108621 756020396 153227922 346215628 155436556 536159636 49561298 634893249 205657221 843800889 44371174 298635122 589146737 925361980 857704263 879454114 63692083 497754484 365779544 403074985 741223259 794271092 187610973 994610081 785845727 828856849 408900031 608142704 614370853 729703359 400025247 643235118 252618436 928936109 375365880 728884014 909264305 944836388 915895544 953322458 688710541 996257307 345517696 927351878 479356246 582288275 386448341 474425063 101515462 703712843 916036503 958706333 827171940 845957980 211178463 940669258 228326679 710135911 417813222 966761361 945447706 975197484 54620070 871976421 730294287 736488317 457961990 870702991 942978747 984786289 261347784 716684539 373352473 594559949 719892966 797356067 436550743 912340250 925884751 932103547 763217536 948971809 677097233 865938759 687544925 999224254 337090052 397948333 877540822 952825441 287682823 669086574 851971672 985119296 161059244 780433844 949874896 996905234 123657901 417884456 799529600 815154073 180707148 951555879 154851432 396391050 517387494 655689454 429464839 907816166 651554966 918399284 979441941 995401005 135481927 225174516 769873817 893701114 140531909 456727568 602926875 722910197 72680952 181802931 233226813 480506626 465321085 660265325 27569626 697317982 371170437 961960504 502450189 682330500 312273872 824283905 575129770 700084195 362761796 795580956 132288562 303354810 267363405 494525213 60709174 421457442 433164427 647337892 84274358 755055555 358334597 980250544 588696417 936432326 644319828 866568230 207589996 333353663 800199470 936280854 370209131 470945838 589160595 709359831 219798355 661212922 365681904 861409257 116902948 833292537 896936839 975651103 21051113 716482097 367621754 639808351 592501854 668876105 748833516 970467950 256421086 502130163 526201482 733761115 190003611 292961093 438039866 599138552 815617981 968223670 588623235 711908003 104396731 469869629 32305468 768067256 776172496 932976130 88648538 868830325 283212096 316639754 825880994 992454036 692727974 932843691 35123754 518022743 871772008 921053107 698569684 804059791 280402835 700409166 766077308 809237206 702480826 879668685 658819140 788503774 696983097 802680028 581005864 673229799 278938032 448359373 931250824 992374026 894122377 922542776 912179967 939443123 62106987 649725720 521974954 816498069 687551600 734919119 539814512 986055557 128197518 667755762 966007394 974884767 639170170 947209040 238677738 928724801 126129098 522442413 203428945 333602982 265224403 411576957 409206209 547659298 955165705 964851835 593595898 820817069 305140720 328188968 894429872 974267774 641108720 799690540 973093345 975720177 698671141 788752510 70951706 447839709 147581937 330729720 429107425 517737344 451370976 950532705 808851571 942848757 210857360 745444974 565145464 574043448 37123208 90816173 722077705 958905448 127293193 970814412 187429885 525665430 487908898 669246669 636893041 842219300 329322867 871453135 978724130 989338962 518078769 961352684 629141741 872135685 838525467 909630956 22941599 952071000 481015336 768036307 507206040 930000522 250958884 787935383 645990682 958342707 728536428 732930578 714183250 730387689 973422890 975955134 269683332 991122441 59338233 947095480 385470756 959813324 286315958 762178489 232586070 347172501 160748695 453648695 575655560 773847094 421205159 797046986 778939055 915462708 134579186 726907438 900011837 905182254 529693235 927721850 169382381 219538993 255757342 966960895 366585577 942370555 534373799 799065983 640543879 941867785 294888649 348798125 610851338 912965521 367176261 971320719 172505349 820208400 606342986 960876197 709351157 872900114 261649842 764883600 180426236 225556667 558031435 600014033 759158240 928979356 113806009 942928190 714650333 935714669 840286062 950475940 762874640 882310364 867448842 971286237 843270819 870570251 651514593 768507088 219711460 564316570 792452733 868568542 816006408 819313057 483354261 599664973 127968552 928635909 49435083 844847183 366156092 458414144 987644363 996317282 92534459 287770294 160950914 686116836 453378960 915306255 379614587 413497952 9118855 475530620 882323774 961947007 787535723 993697374 364965770 877259919 270307617 373937368 840441266 853481531 43689592 848009981 142003167 707913672 650494477 697872934 983099941 993676542 817604182 991914355 478518943 658311262 78885160 691511193 683882193 702211624 903091268 938918473 559488566 704988440 413999403 729433861 96658537 685313679 578208124 810385701 58956970 410497474 938629014 985600712 325551014 341853705 681379643 895792124 859471429 941751791 65159043 151163868 846734365 992885165 745031517 843706720 10692177 415561928 141846066 886522349 209812973 736329843 190971483 869321720 776290967 964774300 856886447 983212012 348767759 522233196 908312000 980922089 754268714 780920895 398075931 543004121 579791022 934684246 165550949 592580971 231200524 951115266 838319405 971989297 970080238 973038512 810491665 997565095 941455812 997682839 720661176 905600337 979387081 991421199 745072204 829010937 590483084 800225626 639164027 855943347 764249031 789379063 525782011 779669161 287725436 977347835 495834042 890627723 542366243 917287584 13798092 450893129 676014382 886982597 106322780 274846263 503923340 800652933 16550046 279023322 556269695 690487834 870313895 903770724 879027045 924714305 64404988 218851922 650226734 951741981 285953268 471759584 984844347 994221071 818569244 960232795 79385937 415039678 789638985 970598085 600325954 757829604 847976797 972554273 817787383 846926048 219142092 795602305 244730388 895536368 420971093 840335503 335262045 401605729 445237948 770773881 850562991 874095510 397400985 544222535 72516137 159129540 333482362 802835490 628783107 867551606 368311485 809324852 237365171 498644720 731531192 835952361 952908030 955084607 174087204 802037869 18148715 372645649 72719941 504779349 859718871 908209392 771735060 920515473 136209356 917517179 340171079 411390108 743376368 847139915 717773704 964203552 275129897 311282937 921820825 990536436 621886712 685624814 939973620 957018638 921790997 942572240 126811960 567461787 762938000 782953199 336689879 386579158 211083917 252926652 586333484 945802719 272536059 466719325 43238170 140229372 230277042 645825585 806972125 925096240 111030476 944860104 318178242 953975987 997790318 997940075 345233514 872341369 406030854 847851215 901361332 973212576 888644311 984855021 372844864 656985371 726958427 970585822 829946535 960833658 608370997 812408467 751526652 952001268 702450402 755255017 614909113 934618016 404473728 544710381 836847912 902126949 933847621 963393884 691957535 843607654 462207990 942510308 848579509 912161969 495693575 831138108 822066535 940118956 802745035 977534419 265250969 564468643 719390812 790039732 750380175 950454304 75086413 995950351 540554316 784188986 268723805 986105027 833225209 866062970 699447462 830028808 322617143 616793755 159379105 928013977 60105867 198931812 943060033 947050568 198968465 807876533 113361777 677389115 318785782 728129457 678031974 978048559 49570321 864426347 292059681 836979983 457349392 638966228 843096349 964377087 906338342 993962633 645850875 987117256 980943620 982323285 244653819 836287524 987801431 996544710 717746249 730696346 631495073 707390613 502290189 644948030 811848404 849112636 507279770 703276682 998181976 998786925 307369103 888451101 280256186 676139382 958982732 968424787 655765353 774796090 231464657 708503756 916699182 988625096 877179994 941847322 813305339 875152834 30737906 461287649 202655340 944496377 590122000 836559481 848372106 907894339 653252872 752497156 9209296 192083918 926125899 941732447 767695796 902366513 104451183 343667849 591278248 654909222 137700861 464602012 963383277 978734003 984517052 992352894 26819100 824114848 328595187 386454303 817989018 915289146 85689297 773081519 667023451 999873068 233956971 649492479 936161196 992459553 415066855 667590330 290104475 311879245 653725931 873728299 423949329 442064461 296871646 526413463 706555021 929511610 196308103 267424034 999124970 999414448 288837420 856421558 920787789 921331174 80628715 658675884 378645210 532395371 348228448 928300261 514558079 857936355 883023468 889999464 565008190 618900217 738105358 879011969 232097845 819074455 994929018 995337086 951242643 982243460 709920923 785287024 789193893 804788778 270164996 846994310 648534419 719205023 850733252 933200556 140415834 964343504 774810971 884715346 474350908 716377376 197074975 353709485 161898636 500345744 665558965 757379446 380840671 583118147 900085820 993660461 464302141 639392700 196087496 823375427 534112652 604720240 554443276 698901458 834884197 953870573 486277028 624425812 977519699 982993862 217056509 464506845 568327462 780377291 809199306 813499712 679403082 702082401 29276081 266639963 750128381 914052657 727440355 913184593 921150799 959506784 723147525 771613335 176544331 478795694 517487169 639434164 617265343 767172780 571304374 663784667 250308922 387174227 142807805 947322757 386489923 603102851 529560801 984021008 296643193 833473018 706276122 712019374 759641222 839059988 633290994 701726435 378464469 628025274 266163040 633197381 678965216 949496669 921581874 985089262 74536167 576032890 715972478 872366389 128614833 692112505 361947875 761921710 335964955 514645403 874477284 920824957 925321921 938556266 825225237 892914923 838544909 908203124 791343525 817045150 101236848 180475309 288352379 567001010 310588760 946174315 80134521 505189277 685491404 860984860 702295598 769995645 477487483 899641542 214463003 448748736 377736784 445682954 861717075 862595762 971972884 978002287 992633854 996690238 661840495 770099524 922809035 972674191 302533641 978627914 402766007 591202440 409374885 797163210 282662957 574084164 123355064 741297987 992932417 997181756 555205291 862271711 352387973 949382670 202574580 707940701 943473827 946065951 269962044 953214168 365765100 470069224 713334574 911966106 82025099 699998627 996132466 996434808 863016346 999331002 555012497 844615189 637771605 749218104 719490354 745880699 483361557 526974107 735957823 937507827 556728872 703860349 839334966 905056454 382633611 499996991 755236555 889466928 647910878 771030666 455730827 669448301 684288984 828246033 654788131 751174485 571327905 902998248 906669409 961627372 311474699 470877800 67565623 148141480 317379944 973679344 19323973 974602361 630843199 780118906 292704463 804896513 309702017 696086383 579526244 617676651 668939439 786650937 79414676 429354608 920640498 996469281 914615159 944885724 334371239 597408571 872154005 906192958 168921524 200020584 934783317 944341967 608189632 743344367 319785774 865493920 418933076 937856783 800576950 918195198 288547110 646359056 99791635 563850695 735385805 909320234 338684331 394494297 808536990 905378479 375082130 865015518 97932578 532938040 869831185 880127162 596806880 849118560 426589537 715929587 478564738 714199589 209174260 971211527 909327960 960017019 776246337 828845340 715366798 831092948 82424374 187474493 572282941 998905459 128036806 944778452 344536927 585954546 110944862 200857344 122604650 920634045 527628460 664559775 356720651 866505845 519304388 749920533 268096941 805080885 947572276 994470190 41089771 719069846 935053299 937548874 855444286 981210197 319121262 868017281 21529042 223296054 271212667 683307917 876291390 998045313 276780568 817931189 609514358 904693030 685245615 816678401 553465712 908828264 441954814 877328078 911912618 993506362 780340266 860742646 32641987 283099058 832538849 934744571 384300855 481701607 183656793 884584502 737472213 939461438 948753006 982813413 268586292 334415696 508360924 590919459 312813807 617057066 414184550 828089844 534489149 888376564 808286146 850742802 558264667 652260900 761151053 992383025 496493030 960933079 393550968 777157641 32584885 467738242 179129761 615479903 600746484 689454167 681969527 733017912 952320338 957423866 622806632 969500749 88752437 960080818 746066555 912469855 61395961 865522073 795466126 863339396 996695978 996905480 311143380 518264090 619806926 812250257 232838217 891217611 877011951 926062649 559370648 602276934 392884303 641992986 337582339 795385520 69239350 205165555 171371058 977811467 230904592 992314360 177307181 632588321 213356451 431055173 937838965 968354462 372132338 734719581 795807267 920920630 574519960 679444124 386907835 959583496 750924885 963906943 849587566 951461921 971089072 981607370 169186848 362924138 801419758 930123209 979410526 988805629 338511128 728079591 304085719 927580160 321761090 496992294 363931432 801705332 257812884 939954775 427125185 897961637 193978879 503518566 366313837 914865302 498256125 506481788 836715297 927714727 322130761 819382730 397222578 778334238 347086921 963863362 838701425 857815569 108175039 852750259 595200169 772515822 470410973 543668265 679793565 745761260 328938691 866436058 98790888 135013189 426680285 746117266 51693845 998960003 226349796 617452266 633805157 690434101 204633243 782682858 546421031 906612938 298253343 771120772 107599296 562178684 239527932 733146843 554859570 672800804 572631061 581946170 964029258 970437971 103332945 389397265 635698303 843998358 311279437 367763158 240498963 955088659 399664329 829318928 576655705 900061339 604168067 989607082 685083622 979080215 903910693 930869728 404611416 944388716 976165625 999190312 888886525 992609882 779591081 939935159 547654534 640104757 221952861 886994006 901148400 985493357 827812043 904339320 563507938 643065996 878952577 891948842 172090159 983822997 671080306 835598792 380814142 437088965 673790907 995030539 969161456 986948499 359417342 605730279 599783475 651971032 350974111 423504491 218248689 742608881 758812855 942101345 209445961 460830704 261443402 821101291 773336114 878639345 937483615 986558145 525342843 668412741 10863444 104694205 464023999 585646171 845137445 973241398 118223480 696201873 420292186 777464963 523252931 865728763 101832160 382597127 390522517 419123899 421072975 866247737 316528042 469817157 926380406 950852510 578495576 630512286 382268346 581424675 878899591 886310127 790451485 797859039 666087432 725580823 408602179 945933238 510433909 963741082 185485548 290345868 178391933 266833176 653975594 970670118 800587793 885042383 202730459 764868717 353561507 786761995 273352740 799528103 170838888 827985088 97967709 511441536 380289664 885950869 915369097 920569155 502005249 606163781 384177584 469584403 381900543 614978861 17710533 88093683 592119047 719703080 990969192 997420447 12828942 444767079 703395917 809322383 116887286 276591227 941205169 962169477 813845625 847593846 916124217 974019840 96417676 293971842 523568871 896489619 111714383 922896900 685305460 784896290 940837824 973942798 646150670 828068427 753246955 963390549 890099143 996223948 221411309 808551284 985778583 995742346 653385171 972184549 16933753 616282729 417722715 615779031 995324257 996065712 100162586 212113335 632155528 677852276 122362683 820493157 476138965 942266010 336309210 796490169 787996166 841370325 614330365 918290528 213402540 825872140 23434575 602413268 425837617 453796771 405185070 824827602 31081483 856412463 806446569 874757682 913872371 993354626 466687909 868119985 601228808 709978492 211219340 486945932 338506998 787936903 238832078 274984267 442183608 474138577 357795668 430623249 637623137 653901645 98878939 781594714 531281313 720050453 457739625 661253933 50106670 809497827 858749692 976043993 289700339 348885589 879997075 986382015 604322838 665735070 630138797 915034958 612004273 693550552 906764401 962479861 975454873 978927571 15987300 487965370 872936304 898081283 110334709 181450420 860878484 904281949 436937849 608492345 215173949 642030722 671968389 765881324 117199662 427145352 984540518 991094675 538375041 823426733 74345838 515227358 401090247 435482303 306651998 841866780 474895778 887035569 560381921 736436856 838744664 999932546 264529426 582482546 27097929 322531597 753357345 912109739 82852858 133927288 453040987 758150730 379819150 460830077 884221159 941070958 108943613 787883625 428980829 724446732 943195317 961643264 891499560 986263366 889929825 918694274 957831597 983152434 105587867 276442054 777908015 964328669 911726007 938066438 753164302 768301957 443120347 866381798 343701614 869803455 736053377 997634395 263859542 501717195 309486154 405133332 95047907 101496085 640257852 674531884 836556943 899430378 691047250 798622170 240974296 659870005 242472501 937716597 526239933 972776324 638977369 719059685 767487641 916817422 786247629 935041482 149232387 685936335 538627950 758631546 164461178 365739070 165004970 530975281 208006721 915328470 527505553 592336190 411955466 784467270 604978110 754885434 815735287 932944252 909014834 964452077 545580102 803959398 512575243 759650817 847527510 965998252 590584380 743283869 380461355 831207344 202396987 765547976 265549431 487441166 232768993 649068161 341088954 998276124 503349320 809538748 287700019 393675229 573555148 698757258 976348350 999158986 246686209 982940069 657833070 705379877 673276921 829329861 964536301 994903175 773617883 894021224 979412587 994799031 2234354 399018977 638768899 933152348 100379966 992634026 83818192 773753255 763296236 821052801 326148241 694997689 906044119 949594679 802933626 915436235 780206540 877651675 245359120 652098810 977864315 992282052 371989128 797419933 58573669 251007185 878935903 915419370 944366979 964144011 902243191 916709743 671034221 882925018 983011593 995648670 924359787 998458743 166356903 538530898 618971534 950759429 560549779 981792825 999484983 999627437 968014078 982615397 286498280 894449707 655879646 961348378 624186939 792573436 391874037 568278658 646103213 962347284 686147528 764366488 270263842 646592160 170549025 348617783 493133334 585376381 583288814 849522245 585617369 835072838 806747558 995544062 658750006 669769615 800292174 966085007 677432187 682136875 495592652 987936331 125241596 152237691 450610579 458883961 322614496 851091986 753948954 863817986 186470639 320323242 450406099 875849051 400199244 537597185 320192773 713334254 261005494 827561890 93439863 717466973 838643494 848985217 735539107 912248056 75404656 722072510 273010195 320325611 221936362 580008323 98071299 713125991 999634050 999848096 690887541 861657457 370215565 758452412 963966081 993439463 775675922 911146122 923085924 983072884 183729034 752452633 269868428 287325428 673422378 726472709 352060687 553449118 411837952 787446243 80119613 371731817 544956875 788140292 354066014 585996694 119373857 432849203 510332860 798833407 57675836 93789151 477871548 623494027 113286419 172283386 5063947 628302957 856620482 992228834 799736249 802033201 714941305 841314014 616968989 733624506 589859193 882988529 726610014 779006468 734063477 991667786 645914161 712588389 246380112 398456625 639439980 904571097 928886362 948302242 227192657 808980396 761100353 791054274 667899040 709954647 547040785 771810901 609494754 862739214 347395994 690873754 884164413 923192148 797764200 827383452 328498416 737592385 133178055 390129144 101290017 994903342 324744537 692969988 693143138 955144196 789711159 851750476 942314359 965228635 596887206 640493314 871329439 920289276 346397684 353360358 410761826 725647693 855425746 943219649 125104505 869973123 430246 130052336 620838150 836710356 212839510 440825771 554712845 818304521 939897249 943679350 653960442 794507315 871569978 887010615 111024968 985007518 211492178 640051444 635980334 707817779 726318070 864640479 730420203 890282623 967426651 975346735 138929881 506307912 885911627 950810897 746657909 870430372 83568022 940375029 124433856 466757218 890386135 968349039 711683027 994211924 535018680 739755818 952929292 987716187 799630079 843711819 539053201 754908253 488967282 569425113 24635476 156050792 762859618 872779824 354949675 495571784 97179911 806442447 548662569 715827185 863978077 979030854 198438002 535548032 315398694 529274991 703986628 728295102 243555569 633872350 827793735 937381603 713494081 979604030 137082023 464485681 188011418 596402869 331001880 560751102 636400795 955931133 614933053 717832727 617686409 995661826 98354493 248195604 492210488 612716567 916173671 994450671 414000206 649384968 90936820 179501619 953440268 992833042 558094151 942419713 515644686 706639298 25550885 985254426 206847609 899592865 282716663 547002942 104151452 414690365 174133749 433043782 298408890 776880546 111009601 233305435 833889303 921117585 86718379 590659079 497505237 852821668 878403103 894718740 32010214 183601737 79516450 616577587 313262106 978434706 911501323 978308145 82065041 907961013 119812552 930613903 792430453 945248241 519175035 725626679 649046563 999511789 168791488 741986392 532694788 655698225 363337043 892216849 16932766 758804269 735280320 910399268 792179786 944646960 88534309 720072306 985600241 995974854 928347123 996813039 995421093 997106029 961540178 971794824 530234688 802034412 445443850 749593800 777763700 986261220 460165802 828156697 460623724 560425278 189214654 763286799 832679984 900347410 215828696 620235939 823442217 850428231 972067955 996230523 695239634 742239022 373190095 681331158 197144688 862507967 152036393 204917201 249277140 288545046 883085362 985780470 377929606 473242608 15831781 394969302 603068230 890500296 5377140 259024064 560085002 990925007 51544908 576250180 600897328 976533498 590503053 649743488 285959571 309560062 911802514 956234781 28515415 305418636 146094071 523268513 240057787 911315732 506155481 737331699 236585901 541527888 868571255 978765404 382644608 474569178 4437349 753483967 633457670 657338469 631786758 935566932 631334403 893498529 520420948 942495296 668948032 921164689 16295161 296165056 85087427 876469463 646499398 833231037 69163844 133954269 859360820 885619395 327603606 661991203 894034577 999327341 203114332 339764792 382451388 888828354 246089650 592851977 414790605 629347358 488342190 542752587 126990913 699514840 638601893 682133215 980010060 987839927 729255282 836377554 740264786 930720039 617193941 855318994 663591242 984349743 157182935 448896687 328882893 518744409 757707997 892094993 713204446 735722914 127203314 185242936 986272440 991903053 681996476 728941078 492076269 528462171 878572816 910456763 387692320 708796355 814382428 865869103 669870225 745335829 329756877 883880953 746018343 750947114 536818746 915698463 500725604 814376229 420914449 594647581 476780846 595218774 330865806 398246803 20005553 618383302 171479016 550183702 590981267 811173596 767412629 873607616 405123231 458652938 94640612 659884473 604106245 961747638 837064300 934470573 655649420 795390674 862678316 963955874 785636901 902716496 626897896 707536553 501117116 589238761 775746081 860583463 363731617 732824794 310258062 941622592 813488131 990451473 252369033 357216251 463106189 998648172 828669038 831729503 688781051 947625968 758526204 812165455 494187008 831260235 420514916 496751205 466854817 644815380 937875059 959737545 426173079 924294105 101506015 217558788 51148320 373494768 89769620 404963936 764608805 831580260 17462367 83397473 944039438 979364208 193550220 832797942 250007743 481667822 654359739 975855990 932727146 954472216 60060263 328113750 933518237 976956427 489476973 809236776 654313462 807695671 116838153 539744480 355270679 482176603 144130610 503210929 764616186 976029401 954911734 974312277 204203959 370722036 187543815 885907838 940017905 976364643 767535210 884030692 105255524 971140456 990105536 997645343 956804848 987172404 582163129 759537571 319796122 351229838 525128268 998340528 891040835 995739219 428723790 945571442 454124410 680795217 147264591 559161117 382322078 521205524 141971300 550691753 972616898 988633412 628254073 703170564 589487478 979185846 162919557 916174833 85999501 503181301 481770945 691739266 16866671 205956955 21730106 226967887 368069158 920299884 56711062 972187175 495681016 864441431 651695017 800607909 541531832 780314816 698887476 945678123 2292173 497875338 810945406 857643762 480304823 564170794 605513634 655998999 285940005 576693175 684168579 801240238 823953666 952632595 275770057 699616861 697140953 946577894 416062781 929118445 225946976 394488932 63541309 182653104 781184063 979790155 358635251 726104258 717343403 891828898 288229557 920618642 147462268 360926349 942099340 989252022 71953282 514186422 928502137 955953681 977463913 996156032 134647682 927923394 786195434 974142952 214203597 746746980 644667129 658799319 242927719 311606074 711262402 948457464 774238892 868566499 850898741 885065175 692585165 948640691 509263744 541073685 998263620 999202084 615303199 876324691 766486301 954961679 165643740 882979447 79237393 156973573 974551764 997017493 392449702 956101764 730573970 885498226 613179214 754056286 397479600 976147573 20725831 84954012 255473697 266059953 503421211 915517052 174427446 341350166 795237062 796421721 85584169 192889718 369554563 966804614 428673069 673328284 189479184 939645335 806172172 886518519 256935237 402036212 56776553 708557550 89764601 356091109 272785429 626730930 739739855 950440014 195458294 375232947 353999680 872122505 27143180 329592376 923984420 976860789 998571025 999393371 6892177 59884156 840177051 929959434 200027088 807432852 423298967 726275211 207914548 745809346 686332231 966148865 152724672 734694289 474455018 950444687 663007103 750499062 699888083 959249567 188308261 639165600 561270027 831780608 51658142 395521166 573140384 585794371 465327474 794280084 88029729 980148280 387854054 599434776 19493282 807478036 865075881 966251628 548612149 669591570 257596158 787684711 119343767 249182084 880343277 936272525 499776101 756429000 605977487 633817553 153497122 831196663 836453272 886524542 894931767 955878017 446387355 988530820 330613445 786362972 770015763 821843588 124211999 243682278 14054114 208436095 367047575 709409440 560370854 797789399 959184974 971901682 966829831 988435876 942621577 990081521 804252630 946442288 893755968 957551235 334109016 502941473 892963584 933284283 393761457 825981192 869402837 991838906 112518551 765676783 486873315 870025455 625437256 849136019 175312572 462469082 343457302 923723083 50715482 108034529 823286866 831087397 486189760 887573875 2041297 752675823 224470728 830881541 480793782 614986337 516444277 705416244 460381889 537159647 710555412 885403325 282496462 513054184 98740057 740044252 679150537 943450144 121429528 482590367 529077705 792713865 614865050 662855605 127617497 902356741 136464714 621099019 233452835 594904614 408977955 891300296 957398068 966702473 951132817 990525568 563854635 995628950 222019966 486510677 812959563 858762829 64668087 688295925 559661411 770225139 323426228 922755688 438240689 545139323 632428577 647971562 299708442 664077530 570001968 777924796 355965211 745683649 990353520 991198331 427662011 793663377 230316121 799760998 596256467 599962294 955035543 960654129 155223750 319971386 566687446 918066214 863876945 906757417 71572043 861917427 634045161 793021500 223409810 950965813 355013374 994580272 492158319 610279631 521889160 693111797 345295934 357654842 743328078 835758790 514737451 703849318 557832050 737747770 671928874 953973700 217149452 864285529 599913630 888744216 71377949 521462032 770823765 949957078 265658831 862176275 563211558 980749789 983339505 991335406 229838382 350284512 924715545 945268752 916203386 925044353 618623349 830708494 657033723 726939317 984606264 984617321 695889814 952010112 892728353 947667061 107904124 790008686 582015711 871636057 521738721 867619279 98359752 231850823 921133652 921581886 210334821 260130426 740006678 742703835 369679014 574335382 942027689 993109425 503131915 552350509 516935348 602572491 620317272 851725710 432537897 660946334 678560407 832823748 597809922 756021746 853176234 917359525 752499096 758768746 237221512 651874924 616781878 669018998 299957552 636768390 159657074 410301214 587485909 663770061 687148831 983321919 869673947 996960556 159067696 599727373 394508389 998602471 5976244 891341556 42600528 446631663 306488009 770272459 731023932 825289633 27360899 324130372 369919850 861143695 754112791 949238257 901125488 970725386 198894259 386427611 452840923 963404653 368998325 716105306 635635882 810780584 424535175 689298939 634451555 929660940 324504618 855543649 838951895 903138239 387804493 616787676 511585027 877556353 167050316 744354581 705345456 944393674 170166126 244614265 726217921 782053650 881362219 975803371 906410279 954153006 868383492 888832269 627951284 742614670 788568577 861306018 511400694 818217493 452834490 555857878 649050618 917268783 3107013 64135053 551044389 934010488 712237159 748664204 774521410 834209850 707273514 997128590 528690810 592119070 156230154 997526451 643606356 789338148 166607831 454015502 808573566 893379029 428793650 684205848 447963148 547375761 250460521 477854854 284493541 413948832 85121705 977661558 351694382 495076704 371904519 470701465 580793414 782967918 290368011 913972947 937381598 964284690 695093321 794267933 423145770 682434590 452246968 648890661 773762581 871295973 578159462 890169539 2590944 949141450 538426157 868645090 83067708 603941963 217880264 247871196 362590084 415853995 15372207 31980366 30678878 784646301 509205605 988749808 501697697 738562882 811472543 816047064 192048990 980453676 682497031 695918430 792580178 972864304 869684435 990388200 908282217 970851914 251608467 908555986 615268345 616823308 866221636 896498218 393637551 942561069 522055605 609023492 327463159 892922401 74479599 227329799 179922223 597203688 260808566 548828878 893544997 947795315 536491983 700369794 388811484 794362892 932145233 977621529 92936149 826233995 821096346 856584261 22132132 153820148 402880739 678211711 988039433 990748860 527149558 674490619 803788331 822743413 606901439 989583324 342754672 846403634 432989832 772095974 232975429 678256615 547874603 704555410 177081502 959290836 622104562 702521423 456009730 578805673 448854636 955049763 877060828 993600748 602237807 893437833 10056822 505871929 108351684 494310310 378070014 378122278 342718326 681670066 111700961 643372696 572141864 691532440 686379519 825137561 911544941 971772604 302596170 558385121 961948798 996151204 542309937 937915845 83000131 921315468 411943370 930300660 191339418 536279998 799046256 935608022 251732093 505157439 947925503 974466598 943518269 995099551 939983069 965809018 590419481 973828740 956627910 976164248 661067825 931140979 630301435 677376930 449768431 897799823 339951362 389669649 536617564 591190868 881407582 958225845 108716866 876102984 724286666 789760700 422911664 559467826 225121162 588895850 893320154 961987226 614987239 800202879 779285172 981758196 745845768 835351073 385560621 710335787 952334740 985038573 530212961 918080740 510150801 658124374 4462196 932924545 821853545 828022305 891683979 920565359 35061278 347363686 268530758 668811098 19553443 963693248 286851301 718389401 370620209 862385734 657657170 723268452 763596228 816868484 877747399 956374048 564719622 906969518 671997079 947967295 977795756 978735351 831177974 836589157 468311016 682977264 843073109 958543126 98145641 265677124 386580584 839713919 268371387 864341026 630401204 751744455 678311075 704071964 579626250 725690937 367620282 972117434 203112992 924085368 77499908 856315583 770061851 894961730 649635573 751180635 721992524 963080860 118939456 680765519 288573351 451460369 493427618 713803756 357855213 885429825 705654847 823882847 651211990 661500367 533116841 952867218 62422922 704023318 619865005 645579442 958995851 988465600 986430792 993387420 562346727 634274468 631787611 799322179 345111103 416257528 281784490 732566221 146385639 956408614 147967062 707154754 776321082 963685915 693681612 912862189 217369339 502587410 75907075 610001805 419462255 454147472 768801595 818625778 654448632 879939653 297841338 683300663 313824351 330973774 116556104 974783703 684026592 926009698 912083111 912301320 275031003 342129888 793737374 979378201 751256155 879277905 713796204 926129102 401522401 913040958 42613966 607826855 115562143 728652372 598551471 858982831 388802975 983156133 709666628 871804764 595652486 994050586 409590023 416928713 273865955 505644964 771765005 857543416 472236102 769809602 855677323 935532753 289466334 933530286 348106227 438805158 292325654 625154944 330694483 936032570 622550510 649515094 881672650 927867047 798117878 821642025 948931495 982980919 254368421 795718008 410833023 560374785 961362560 973467116 664554647 823302363 610337404 977079550 870211115 987799746 564667028 991747998 254977411 436163117 155504962 757909075 883144996 987062314 230714520 614435467 391851860 692835490 178804249 567424591 960710100 996531876 555036911 881927852 184461385 984660443 108640041 679513376 107102550 332826375 662274345 934503634 56016782 513845639 958821893 997521599 376138027 514198796 231184184 339580018 815176588 951294511 722213204 994655682 488658844 712742388 678123505 697686456 392087697 594749652 314071613 692724564 367425909 933369416 492913502 884625416 997172135 998903821 614741086 843649780 632351360 953340988 103928918 566763624 908000173 940445256 861659661 979185970 118636246 472712658 320180320 805517342 162537676 969594857 572774026 997510486 764593012 867528685 949565148 958291354 217183019 664243917 407971599 809267305 339977213 434427753 775149945 862906151 411984372 708624405 234199019 950851401 366318265 499626468 347849957 823744828 353603943 735607411 16129416 331084046 125515336 539615060 42481790 105073782 644764491 963805533 142648702 840936322 844865619 907568020 568320382 757912618 48708097 750693177 922624510 928364103 850770336 869351375 98507825 844482501 811400162 995998889 960811112 994978651 659471913 667227628 416707671 767196926 870199297 889018398 88688454 207628625 946051152 993938506 261680875 766773965 803346886 830796411 720240345 736245931 335314141 473320558 225982887 396531647 284455566 634391064 697169256 931213361 341868871 585455648 814538748 945649869 981081788 995410607 127819407 481149400 720916425 881422731 760954927 961217406 849623757 929361227 18149427 981671707 207632146 836653372 325488100 522104637 356010287 698256750 440631792 890839653 961798576 977724370 527870224 976067290 324964485 349716993 776735254 906722677 523368507 934992154 875923584 934946653 220504427 375551527 258547694 450619821 266223432 329625510 24863850 386891197 119350320 663139506 831071636 832271220 966281459 975142414 193393722 579318830 807151068 937960288 206312191 357670957 14283000 74189496 731934115 738405951 41788028 722999896 984844970 999660702 972953936 990841223 762746071 818205646 627985128 970635491 972977476 978411066 100313833 580190318 279740554 531848038 652287834 789425023 534709211 927788446 965880813 990689371 247839207 562799018 182549981 326062109 115450202 436775998 228075002 678005610 927224635 957727030 539497414 606037830 330495886 526651967 842139801 857304600 143290608 584650254 133004238 931115091 362094166 507820848 354741434 959204972 279355972 527367659 522489817 592584898 652402465 891138880 583728072 993997428 864017249 944793994 870561512 882493426 451381781 982158953 591542860 976404114 956873981 988798877 189808637 369931307 490802178 606072937 172184606 248837178 254534369 837074409 243280071 966243090 716212238 953847425 143574367 472777441 897256291 910762209 725758934 735571890 386687504 771554685 697048317 810996392 169265728 316098217 773742154 837494618 946724141 996113307 302022285 472966169 621793538 849823776 483472712 723350902 871636961 883083689 629247180 913687744 904451712 933944837 247125864 511128107 564445599 706179049 668321680 988721279 880678578 889146798 816957188 980407853 970958360 975498945 48272335 90347343 647579584 931524983 779359974 900885758 348071630 468864915 121436848 798509928 145136284 445526387 3424708 107023026 612927503 905695614 126781353 797561394 209615998 607100940 300051409 801616181 844535531 888879676 418046954 968089840 363712791 420909333 826930637 941806245 853138568 965764308 16443892 108379198 287875867 594755752 453607106 852538436 176983472 620907192 693377712 926455483 976956041 989215410 843250571 905396904 533079182 626011590 389508226 849076657 544195375 931215025 294508625 823201034 326899688 916616667 337959505 947350693 364792761 581216977 777333859 877916477 901312988 914528917 415845950 683619310 295517528 638022851 789411851 823730588 970856769 971840804 875818408 931916476 532597228 740097434 60665925 91992558 960221916 985656924 809507679 868506956 344575543 869051595 367091257 801519129 508859763 710789653 566265773 575730209 313114655 360238661 333241773 990857972 15043049 680113881 154773023 173195666 715649860 841388464 605942042 991466928 357757742 777120046 45886662 922849260 36671391 367619551 157581452 325834746 304734061 811742442 813211747 858308691 203288811 349448133 989036755 990665558 116420893 991472628 835806028 915535989 338274264 385248503 342995350 910636190 925623056 935680842 17438361 275028756 558533925 581588234 10545032 45910882 949715842 983301812 991115816 992101551 834045808 930466022 899037657 953296311 937972176 968315531 270889291 303963814 628963693 926103327 213831194 437435336 621613304 999734362 830032987 834090295 54932668 70963696 35560694 521550559 637915720 806166815 552215363 771699365 366773219 614180770 612235798 901550304 907863631 948024643 82347297 243221855 36094322 66026160 88678607 333238733 460403088 491070129 823412225 926634655 738968588 991755709 455370877 555887135 145986148 712627118 959352499 964676989 602121750 928708595 537185451 551918963 561269934 757342493 170370083 425643671 613732091 885041665 515970234 708957838 248452795 590402803 369470211 579416087 353122991 628808883 282620817 820257760 608093029 772792967 257918238 360708473 716388627 963137480 986987355 993647253 131145650 152669404 274475575 628960300 93159315 528428870 669585289 729956175 107887453 738487118 494063490 962029514 662692028 799886702 303519198 371559922 764938962 919123161 803973422 843457380 786905704 924793198 296351846 665843174 432881530 457988470 877706880 992790220 889310524 958093011 674128745 963623184 910315995 966996378 617531863 978004991 103084085 688330056 806484982 903607659 258418294 391051105 926497750 978522053 758432146 939837968 343628403 484491161 600121352 869349899 346315006 714858412 36363829 295456726 8551090 178301259 452717755 875197088 926103243 989337043 893345030 949215967 422896546 549604693 404552116 743794039 868274217 958979845 308143296 767765618 966373605 985682253 736992767 854289746 65717516 141674497 414846226 891994621 121428947 653995014 579091833 764860934 873448831 966123622 790167342 882223882 855609632 907775678 748618672 942776850 911618634 952871616 366148743 381670687 789042834 830230324 659879421 745357775 687161011 827210878 171673928 366927529 804670224 913703108 907648902 957987751 483529157 827369121 714190390 941358228 884370145 896469087 677174262 784395341 140769213 757008388 428182633 863562029 293730258 528692715 431062490 640808641 23265917 945239915 82696117 738115787 447879648 989784089 101661952 295457062 40196935 688174776 253313992 903224124 861860656 905202732 245594993 655406940 211486800 907022197 9170866 9294037 890050852 998276513 913006113 937637338 41207768 811302889 365492492 821221657 59618170 454946635 605587852 606363441 674553856 952398819 910323064 955061326 833319584 958323668 369993047 521750018 392647402 848180224 422580537 956818724 410284338 536388732 244425483 526272218 286309633 646990523 991650471 996681709 887335137 890814252 442278510 617938987 157548381 618423423 756169054 825633873 896268090 943696186 61047818 377585620 844112864 904238512 141972805 587617048 944602214 950488794 751475929 842285767 569662757 962022744 454992659 973609940 467235961 470987826 809399258 999109089 936198369 964064067 67617603 762249719 477864142 948746964 578828621 793334089 234973288 374097797 166737521 200463695 28368229 619725449 2239425 463466252 577045803 838506329 529258059 860943843 608852837 988036607 475425741 990832005 315895989 967341598 66046679 959123327 560660795 657538681 638970971 677134814 918172452 927432808 302694491 755375548 927401225 962423258 349352512 389144722 406754985 710519243 485718977 969933798 872784462 999672199 144852822 580151509 376132150 827252220 545791434 907388429 562609797 969907203 203171953 835924185 58230240 443280632 798572378 802519953 90333579 876149755 576723593 849403499 595868704 692628148 61439309 787501259 838015751 908645195 900236960 946901603 367396195 964342972 811309798 832442742 860534364 971469528 40153128 874790912 870067898 910418059 798321393 933593408 415449208 680141912 989690946 998976798 750985320 782381463 774335857 972329538 662694597 836671166 904259179 939468225 309460010 952553709 63246593 920366785 267648674 457758224 364099462 839347182 365817138 873726867 319626984 708942773 547014295 607594523 884456378 923631833 116312967 762044207 789818814 971290420 259953199 669598440 327754431 676286027 905263466 928951668 63073332 669181088 432592424 763252440 345477393 938071907 237452325 528552117 421057694 646727246 171720882 178403930 579955801 782143284 323912801 868830733 272059086 408610351 466491475 719284526 938870594 956944905 74099701 827010440 609069712 800156804 790813589 924673963 240943377 801173001 768583755 905553065 585661135 613988572 651195983 782922154 574137674 901265077 798559413 961520532 686885319 722857325 730363044 833635702 777834767 918571577 690392495 975411198 810160869 931221714 669388567 881470137 636289991 985152926 650674398 824752610 639894044 899148391 519950612 544792717 110056297 396722724 425358852 727292777 632611989 870040530 743238829 920733520 315172879 748015182 535790932 868476499 544729019 659451229 185840437 981644717 699112729 939517646 154271954 963698890 268219394 566575340 532088198 871544556 358185135 538639915 233885302 591247128 77359180 950576018 55815213 81886273 253028403 375288878 746479332 776953451 586390684 596618090 872174963 938383540 182782065 301405661 862095732 957907269 10186185 163236816 431006801 835308403 131397015 969873141 906600771 936403535 844072932 944713755 532505871 712346315 26373665 478166689 592098337 843750308 123313713 168248996 179651885 921143258 651992934 863247313 672523383 739181597 230568346 280014834 404209854 690687243 695602990 892150686 490126545 845562571 582421232 896790222 314398242 565327277 732414635 801730963 405562924 556360423 993772773 995440718 951798074 952243313 691765802 881957918 867355087 963739845 108229459 692742570 257222665 794115920 698170735 789603214 25096308 816130419 985350360 992694159 121621185 519268191 417039469 863415810 9266687 356102411 596489374 796510081 765843883 940197640 96726780 370874104 497388881 976393991 823509109 935709809 614666642 888690125 139252295 985285324 565876218 713718649 304692916 813842919 847564718 918085355 438943450 817759288 221819950 482228573 764121318 877844064 230131162 979775180 871001257 899351316 588253163 821333936 636738443 807227455 115136024 817881129 629763227 905220427 934344624 943073299 823842496 921065997 206489966 776218184 638839825 941400714 248206397 511669132 78368596 780192549 875986972 947557990 354393208 958484926 313146701 429765378 300818350 329003689 18101799 248432637 111730967 998100217 623448155 948727605 508326984 724191780 533426949 546538340 700072255 914097784 799810619 972747724 607794120 638106090 786882826 795832805 958310195 958562326 479850635 659474343 115319988 195942167 135136264 329711560 427113043 906884008 149913331 808462671 559018584 661200520 64009253 224928649 342008664 370328917 987188094 994445797 861864611 940606857 860544340 958503178 760809740 874959247 341778542 641048382 642189735 699338578 171585279 615357875 312747104 732308452 43642038 979249028 842708591 943832549 280208318 396762228 649441960 970419847 707048377 813635191 471127460 670977701 65857795 831211140 647685154 750409916 452811021 944086730 664320329 773393260 946194698 971325228 984372833 999031850 762510700 809689632 449817726 910357811 381727625 775459925 741292108 786521009 9566570 570931043 347502774 428294782 601459912 976688937 198588604 648341530 874778206 937534171 281569061 377830136 160400261 451370175 912177959 995726280 534617426 919822946 190005553 805244280 634373922 951395378 104782064 282379158 769933355 981909238 898549544 965957718 899558006 904999910 646659735 780495744 499818810 858367661 811938626 830516315 315123853 999210771 858953086 939877649 295655065 519306035 656138895 973177223 277023957 758770933 910678309 992715745 135978855 678600057 458172638 984954764 470141594 649740435 439256928 978877526 171606092 787609243 792841447 951260974 477167594 907414064 415948957 806592764 826170381 876326229 821309361 970555511 660251060 793799762 250831428 432748468 913556269 924394025 5081519 393762648 201286988 654413527 930261459 961492660 474818022 667226794 237572124 529429034 489902904 623837570 551390328 854365286 247210674 253102393 421972911 660633692 845290582 871106334 945572622 956440914 527170807 839187137 972064577 999380122 489568268 577941656 155487359 613333674 527217906 765462138 929652792 971076796 66489954 117785174 741370898 853658016 108753490 365446418 566899858 647424816 960696840 967272378 231774627 941751373 234158070 772160273 421856603 475060185 642725308 962981057 409408504 659893187 137484963 451050790 192335549 298980124 487453235 625330955 281899981 797482224 670482007 924285466 738081563 922263419 116745536 481205063 104790908 129074328 520966125 992092298 966646328 995012821 184393767 605019007 615443702 800709167 493196434 849627016 8753014 363365653 995043554 998025948 755041321 775261689 290690788 616616212 219065688 691653646 197112590 990871670 972656661 990768025 238211452 655093140 983330212 991643256 979934968 996139833 26881466 585339601 673265250 998740263 557859026 916258808 827866907 987348892 984269628 987006171 177095371 985216683 412846269 993845370 891204751 907901044 679654900 815726512 779792058 898083313 90966456 711420785 985106478 991571711 119253872 782948869 515963224 698124545 439384819 733970305 8096550 564403865 277551573 413700463 205989135 706555046 84602751 718466607 306091681 967383657 626830470 631551517 568495213 660851788 214795774 910625298 528027212 805935672 891269234 923156184 539935344 764824824 223905962 778094382 17752482 818276398 724885282 973645494 175162654 647706079 510257193 585609069 651175757 872172061 562312879 777504183 711748875 912834637 104273866 709091915 109511573 839026590 875749848 901377239 902603525 949098842 122841515 674766719 638376699 774355008 55227462 150538388 403151298 938054403 499173011 773693509 293065000 496183508 347935990 919786744 952017057 997936920 483212017 822173348 757394527 845767524 618816167 901857150 951331585 966606299 870231232 870799488 260715782 705183497 648555110 960430269 903260847 918868657 952202370 962218594 657211990 930441880 700828882 872893180 58241041 983390901 194686168 443242472 390673250 955296513 14261708 83432673 706588881 813658368 7222929 60943406 267305990 674080312 838033651 844662538 327872345 957371203 425558766 991648903 175933934 684764458 340221930 852873929 111396685 743020831 71429356 442914078 358698588 536744508 850230772 945015778 303351416 388308007 815567426 827470077 358100821 570721262 546545875 947145015 627188486 958140096 391198561 768698849 424069435 922147169 906459089 982603940 227012093 804671834 587642578 739418102 674347362 945268750 408219425 566450796 480233974 637497506 350889547 973991442 74287173 593540223 44358487 130302375 535274689 709833874 94520172 596324289 773345210 882275965 859399915 974835418 356862806 508581378 198538384 366964499 714600493 967083208 613475122 845950199 994105487 996094108 126065958 308984408 247220521 483081257 524418989 739420600 461495359 790063824 802880620 860918207 562139176 923829101 362971732 898025728 165932651 387485339 792367258 844263251 497735132 774937343 960716588 982809065 233464567 524640611 741368251 800671070 991756378 991879008 523870596 837058060 654573040 956298251 258675929 774944780 850321224 870702770 754507117 772718510 795984577 876021357 201000109 510128021 194141663 870885487 242410063 966472295 509231322 754710316 879768267 947797010 60953259 237443718 182304033 668016956 446064132 487584046 870816085 941620645 151971911 370964819 39096888 885786619 172170484 875867357 891952271 905628899 952063419 986542703 507972176 726549888 221546420 516509336 32897511 267713013 8238312 576454231 36048982 858073768 57582865 97479898 190651005 681463247 596336416 732898998 162010668 287058532 223140208 785472785 345773082 548693757 290885330 623669587 884488290 943010971 740987936 755270800 220704499 586927737 762765935 848141020 120897554 361518936 648322025 738826042 725044060 830296439 894396282 920945250 487810985 912777696 807528944 931729193 150381898 903969177 800886841 974474892 396998163 989263422 868926393 983756792 510545909 787046116 750024745 821681760 79548762 662499360 778699610 923455826 928248011 964085413 377969451 875442618 154835012 275840578 153303745 747405595 471711543 887523629 926748492 956679971 838339633 994726690 487937847 527625928 264777506 265454005 761837811 976886528 250588959 709191970 257712276 985071881 139504548 642722734 773988936 785111055 603941625 806735202 536238263 593032471 483746394 808801519 985941289 994429835 427113962 870132566 720300486 847671101 274035543 471101281 222953334 998352437 133733025 598944283 666530971 739967848 58810013 992839284 567877675 923189985 587805889 952617843 466433851 926833601 667741503 976461751 114092942 802119013 153469475 672546279 514537269 988913280 135771763 717329828 239062327 288034907 435425515 706315812 957915953 969748848 747474379 991129946 537835954 711421154 523386399 796333085 63572269 713535153 316981024 353117251 48933466 473575896 775751887 952403506 316593587 645162426 252247669 481197161 260044543 651892720 345620556 676530934 796661839 832738255 874551903 903643023 871887102 945549221 21204486 94824244 688336176 706186476 18647337 294993571 252546927 425818046 104742703 427708510 998440257 998963086 905492905 906027398 953464728 955626450 120701573 425659730 880086585 960578005 788942076 913850482 652451370 657064584 993796790 998869201 937510024 971540824 838846003 994089981 459959754 562883892 633789858 869418292 3178094 89989192 105373214 475315770 448483941 886589137 739390124 829875990 259249238 712807614 421830241 746632974 153525320 507776937 751548132 893975280 676111032 773658895 40569013 197878047 664729513 682352882 524439091 652303556 729805237 997261145 681368562 746908509 174382967 868552858 368628581 707880237 119262074 893597679 468996352 612379870 925472879 990423505 401054741 480735119 879303122 883784750 198277422 264279363 274010789 280973249 284351984 978524189 518649893 753432100 205360785 580341132 140135399 584540235 564586507 899939694 793500534 823687107 412268441 546678525 575042617 743462186 774460822 885477613 266646460 879440870 669796886 688954265 37526286 777651561 23118359 355217113 613974668 800723611 184105014 981857654 500393393 955459746 23637407 884239840 323237404 513518999 392001444 905840900 852177699 861782164 512251914 649550397 876568472 935723275 332375812 553506799 736214071 844509415 28491371 271604138 15293698 400293510 319922037 678179402 998458500 999963600 51364917 445398348 927520118 955477143 302799140 622528523 523633875 964666220 230917 366404001 834918528 912124052 814329383 847304175 923941366 962976368 243428728 460027878 134980288 945531786 597977536 783120136 428668223 737957427 10950906 690893210 27015085 896259928 278488460 361691716 944068761 972238701 300808356 966628085 830011298 970305250 286454937 817416548 76498252 286653064 549637512 588318882 435546082 982385371 301978588 348603147 440281346 844214879 728829830 926110289 657988666 783641189 528915717 876435457 945464904 981927032 864535434 886924363 106971573 962047891 593513487 873214234 923496213 994915011 205215007 835822197 557765249 671984288 85331800 512875392 6111380 852219460 547667002 626009879 666605355 960523319 998968054 999355871 89833724 757717723 432493075 986176976 671538098 841278553 632047133 847088513 679491358 811797722 210105268 760946428 703624484 991361898 660418126 974984209 424929788 824325828 275875022 640630586 69305415 95341091 811661337 996193213 114913381 606011877 693666196 958771137 944020729 953410453 591420046 685097186 489607921 946635223 245046807 368485765 775773983 834693789 424720999 722237666 783857209 858776284 175246041 514262974 780866277 982230663 777094167 913890741 361044044 608822945 923366951 965464145 467191785 988319230 514310876 784507053 269685229 683941156 290723354 997747192 202332694 941152446 724345436 806215571 307843877 988974614 428471033 578933766 964215247 982420007 29145164 966435935 75549242 708414512 781742320 988953220 338971646 530386518 718490112 958403297 252240407 492562424 251933368 326019688 153851190 242898053 756955187 932860259 952500396 974776133 325391569 928030641 494433568 613075969 544544534 963759963 64461665 821185770 865942142 965057640 67172071 476052400 816039461 934110523 929243630 936127537 543542149 845003992 223368860 289754053 277728458 331698173 442626244 821698383 559015188 932118217 884300704 986303252 361823608 748732559 686793990 965248817 14025915 106568544 912058311 945091135 395485184 409333048 783342505 842993980 684196727 826781575 493539307 750981400 347966303 657607963 337142369 400337322 345336116 730099854 389563664 408950393 125710093 870666253 734864013 760938445 909702415 940645142 98803613 597841870 462969793 617740056 748612308 758031785 341826852 480203490 867821554 969225263 530985556 644840317 917720760 944634603 913387841 973355344 331944048 636013686 844737914 950384408 76210141 809552098 195838635 306251910 43066426 89882019 290691164 643075046 14823831 823078156 631221339 971201838 652027987 736806724 638037040 946606215 563160211 863043866 98759000 404377853 725652483 736233362 902746098 946498538 897427371 958166573 321051615 715301654 589505125 703979770 121758463 266721986 461339891 656612153 842372669 886287605 991052613 993818678 226939991 762581805 145761147 970295726 158803401 580725722 768772058 775231747 194259175 528840880 936305248 981082268 413534882 932598178 729455623 917796685 670060879 871725297 331100379 837280867 305034644 993706374 161473422 858718483 148758070 200878597 1249387 616816793 456915612 732598800 105492082 387653681 699871297 754893499 597255822 675190379 594182974 940702889 993514485 998062976 86592292 713903122 59619416 605430956 725176438 932376206 522098631 755004819 167241293 302961055 847566669 961143272 604763645 612569182 822510960 963210863 601038201 831235528 435004642 856670058 24798183 777719543 854111326 949582357 456256155 755693378 877696048 971438663 533182322 645535768 544866416 815286459 336156730 838232675 199966615 812176431 548552896 810643816 65218363 550020340 348620864 599550634 316121575 362645181 793103210 961279292 578329093 824140378 790610947 893262601 358960887 969437985 414152362 917375541 282547422 898210782 344617235 583192985 488884355 869701618 371862338 406246898 324556246 733096198 682169533 730530389 340075347 988753226 397681793 975729036 329671845 889624415 366919182 881075493 312215487 832021014 640724151 885452497 176139411 822791156 39597073 155556666 169377002 909632324 337998965 711556354 665309193 722119503 860171456 987371166 16631493 265126844 870065565 937396441 458230637 773002530 975637909 986556752 204854735 330614896 713513090 940611085 757417658 883627391 463361521 666136363 361499877 774991102 884171889 948858279 715529819 905861065 953720192 992639676 46340768 442464023 402634910 736039659 986960808 991311498 312345929 970977951 69662546 656017590 29199741 390106412 450756841 590309960 147014523 361102439 846236665 946300994 726523932 906908096 600539364 748047576 195011621 412710427 524170345 847805797 619338567 860017766 257994836 834579986 454481370 610894512 300842588 575518927 451678940 476789895 208931757 365499898 604272604 919509533 831814176 965543161 890131623 988808428 837728132 880169845 392167119 686489163 322266941 464109293 521499286 689584189 172137736 449695937 547727185 676518672 964716721 974255052 307977770 502348222 649368940 708391740 152352847 272725736 236260455 786759260 991444622 993246467 788047937 839355324 743234447 946254165 650208422 998515042 506014872 791232795 784702464 907242228 408893226 455925517 101132025 707168855 832748746 949695168 406223873 497323995 152372672 241020773 31052064 334883406 102454479 575466315 396733268 425322324 665748166 702181072 416834742 734104623 99284514 778925672 761004417 982391227 868121848 980589083 114661495 409233907 126401081 306118256 487059979 740595768 454947722 710766134 409582166 622817280 229765840 961869519 540346659 855384693 229296924 620922284 259051845 950077047 637502362 717593024 882849019 964811578 240712460 966936008 62095389 651551678 528552222 866568063 776552769 798357858 109938270 825961900 484188746 889137047 564095502 652337551 430631686 547858106 155617830 296833488 978609023 994533587 923729836 973073166 383500043 472416781 114315605 843368458 547225147 807542277 378747534 917711598 456922572 817781393 884496623 895866019 459649005 766172225 731827335 795629418 336138103 407646076 921452432 962805931 220778385 871161363 496574205 906956359 263509370 534177391 347770959 426945759 292554545 801813219 794985618 919010020 860185303 998681558 536930817 727789854 379026036 495174315 526117416 544812652 596574967 647449471 171658477 521823972 540918194 743012123 612417688 623864592 307755686 311280803 741568760 857272522 118109370 574885213 764454099 965866550 429005919 433015598 302792213 817982186 965256955 983198810 71999069 854995677 871698799 966834445 728047698 874708512 491447020 972387339 334579700 471978522 830136048 872746957 257692164 675309935 103992708 324931407 116122003 560919429 851177580 969660750 775288113 918269411 195248930 999691689 308015899 461735157 355689937 913543448 310997422 669245741 63740413 103889976 980592316 989432871 759448500 932757418 441333696 619947379 509288921 852065195 637545388 662298361 318095286 445117903 623975079 964097467 60484542 611798792 234727276 284549557 443470924 544323165 138458416 317068831 701095005 709064510 984331938 999632530 779684520 842053877 951819779 988568466 795719330 856275744 601077665 794340279 364122214 718816788 672648122 860719969 928562385 959566224 230696063 866259666 643498197 740175180 773391262 938590770 140730115 449140523 371164128 706274220 435424656 616201751 866863834 880915219 363798798 882724568 19060936 380790134 242748518 402086956 700306897 784592592 232990497 569745309 978442938 980569636 787692189 896874209 345086144 892424661 326546119 389832295 190888664 744323806 137189586 346540954 617034525 834679968 103255169 419107277 836160065 840128057 721964480 736749585 879473244 916209472 933582094 988480981 108215242 693003207 462139633 877543842 201450907 477679299 881390582 969603826 806531000 851862145 468443870 478225663 123116283 435171973 425062726 552696832 681883405 797444832 302918801 879839745 363176322 682092846 387777431 653223847 533019448 624303182 420624712 887050114 103575593 856881161 925759328 987635243 540566169 956785828 415545371 831994620 158535642 183939174 87689639 441664808 322076552 401066348 358660465 444583886 637479938 724281827 829438868 917129635 802821343 970663070 769035094 974963609 187261635 718277223 855121786 948099663 892579024 960555985 601951845 907056371 410758538 888805011 92931371 142031869 954909621 970607474 296722756 423070609 581830368 672444537 49169989 755336028 847966011 933577254 270871236 898490100 738717587 963785499 522683212 666494911 956415948 975006376 981627472 989434109 641122802 961189358 412882057 671848577 453070818 813734998 228128060 925956456 133256318 891175563 753986804 807938002 11865259 702962635 18642980 316216530 190561756 504102142 488715478 566142402 129952576 494931497 644300244 748430078 751697285 776485571 876700610 910420491 995891991 999730655 38887516 720748431 752807405 896602067 915330681 970213062 869019091 927710454 950315763 963801733 30435061 897806105 421553447 850088588 377453421 711228328 970424025 985092431 558261069 965260331 155259752 886839160 348762384 523391240 440489961 998565044 755425469 873062551 444207865 589138934 543650418 959184988 596258734 776884205 511719491 569178922 587961205 741513619 102582105 877470424 826271019 942844702 569505728 963397702 872654861 905105908 704194393 904074829 849633453 879337636 939049325 994293399 938069099 938760846 764213012 828018075 831445480 904346270 429135091 821975470 92783108 738694635 704395301 998124187 332929350 444057872 137261820 189598855 391703014 562314075 612974899 954874989 707641594 758860974 332220308 893064256 534615598 643797071 163727818 939733523 531728891 619429949 9545189 512215668 730307559 966597318 728641439 913917494 528185197 732075671 647846348 973838515 720475903 800182548 124943647 928384047 672917674 962273396 375988416 714968181 199448110 442083234 692266886 852284782 916140984 969004624 162001632 972200143 271169657 933633377 464189246 607922837 86818224 527245283 815576103 957707254 480806916 757614630 689244337 938690875 590111448 861877556 125200939 421875879 876202434 906981971 679592301 892341427 74319736 439108887 409896598 636069008 580234398 888547716 556490310 689598402 887316224 994628855 283091344 431438073 277551092 584300990 706455774 898776336 295149580 796585722 404872268 726771013 781165013 983605517 815740228 831149074 252445163 774666230 169591038 209254971 225906544 671077265 290073300 924897001 395824788 669064579 556929020 590945710 271183886 423345646 577670935 613922467 636804687 693177610 379600940 961279831 758515475 763641507 896147770 918255198 895495669 895807851 822946814 886220697 772376822 971512444 213641059 218871213 840795547 848954922 542142920 700235843 692710032 968650962 998048912 999799786 928790644 933872185 121435513 458483729 333999593 589518785 698305685 918058672 398474597 455020716 481907305 652138243 535634691 568214213 930287966 965729703 814432733 940873672 150136664 849063306 267203627 822067822 212554929 772197879 706818175 908066602 229205256 868151187 781984074 825841511 605772765 853196227 320331153 479345448 411735667 855904848 424564013 531083167 334529867 874605022 365777603 883053974 938438244 964214172 628905535 682810576 641357221 670806584 804121643 817974750 520740347 910461347 778141499 796500248 8179434 704918277 85310667 867731736 623871907 626805617 55282171 870757032 589272567 669809590 613604577 755214778 298812208 793082591 727281919 970502615 84538330 352405846 245473218 577066589 979227836 981919634 247577907 559831497 301198728 407437164 343259325 461023475 193497963 813137533 645393942 670906248 600184274 656242953 950401262 990228649 160113947 459653192 164858998 492171836 418521404 652968782 470779476 908814979 675116845 985883861 689728893 954266403 934846966 994049010 876226772 959611058 486288884 519744652 972715490 996540525 99193574 266948833 535632915 560293213 642789395 714206121 730559016 859763318 129305040 487237324 519616692 894114179 509714209 837898833 444775406 856595146 676870740 764264234 416633313 847428895 137890468 453149687 97581684 309202951 666099827 678050260 615765239 699881878 54709644 940479542 422202161 665150346 964590758 967056687 619719493 868387448 355746937 619016452 555997585 761508318 686141194 980578138 305090940 822511796 117921965 944812518 216885418 731704438 941831318 961117622 501254561 673610280 98033743 163661896 37279334 912202376 256111328 634609549 868089941 915553023 178243919 956490541 816368266 833514559 196571358 719294133 788328171 957785476 542400499 750812347 913916412 918651958 799613595 935451952 722484592 959688580 51503192 418805875 60650377 502921379 564078676 943213270 186687319 261602257 426814955 790775511 202822290 625934072 919800895 926106769 288051714 667459895 343093959 514011720 920402529 937364605 264475722 555845149 877627664 938140803 986039664 993360591 589642531 771429924 651998654 782197281 959021450 983027067 60006307 432910424 764440148 808545678 137807637 913254448 452751578 659190329 527173061 678573628 719658414 750745065 557994331 562388255 118566728 585435856 746361590 801006492 925802267 948668961 288814447 437587804 730845793 894739386 270753885 318397364 904116391 904616538 238548232 898309323 355773587 879038798 807060720 964881347 185824499 444266804 390170811 799219019 656753469 836172550 592847453 660350336 41128542 680248810 934163988 960827712 909378962 994163552 481452398 725224292 954945824 972665547 69153721 840206037 698869472 938077236 407324664 911525941 402799651 969523146 842950258 894810521 632989229 745214266 569803936 860735225 301147769 407354483 793577457 906733814 919458842 961302517 428749614 471105770 51866736 181924328 32314134 862725587 770030607 817005978 502414269 769118873 233276859 356304749 30550132 787607606 506742279 551567715 64475981 277363918 149871605 635135359 102863540 891052826 877982101 903742285 438686341 547446482 368063488 530382144 746953803 864914983 131235655 970883639 762964101 971324556 725308424 912256405 406470411 850725276 836872534 884812860 581543639 911874641 804407057 976781899 441575059 755515735 719410100 827757055 493385800 962513608 965633739 986787385 625840001 991538611 277811331 425875940 554188384 662658618 126933763 687768560 421888219 953963862 680074957 742570826 172053184 973237813 119408555 316260000 656704803 659558361 693528562 757590535 139825907 271575809 93233509 534244430 694115937 788157168 649166885 983143540 871390094 989032919 546387079 964622676 645443637 809045338 950008957 986860879 822386904 873340500 805098063 808779344 763805615 983617467 318589074 695251343 10051375 107353354 229224964 409727240 848550950 939510789 145434302 271653718 416404511 511484763 524642049 886519937 224369480 712265773 492404405 941294618 817242583 837025919 357664186 565918843 749303521 831883462 849754466 935200060 179411323 903915912 33903456 237661887 820224057 937205054 43057617 92279899 273993636 421114507 38877587 869413115 2341345 750294282 15327025 810499810 632544586 862834528 586853056 879189815 893709297 972318751 896331548 995932167 817138041 961723959 575656659 815956169 341908208 637226906 156597043 947903320 528821721 814181170 88020817 585107307 10442303 300265890 33146268 913531273 658557366 886472632 204442725 885093489 692869919 817168548 128983301 430039992 448170594 827051277 832517687 998826202 717278217 820865964 8961933 632966288 34153174 265066172 838800404 953716119 662825608 711834961 230736924 480699961 380394630 480215733 275222567 604238952 422468237 856545684 493758930 782958594 128896991 487451840 942657325 995927419 825250142 828649370 495505015 968756795 266004480 978657295 986118881 986795646 29592032 860403498 413181850 891499197 512424488 742492042 207740777 829951013 988082728 999384264 600203980 824845966 320530985 817714531 373392133 725545459 13199611 827675779 246794458 337042022 270745189 495419917 759709324 951384178 571395365 781336563 421871670 602123773 131448355 917108020 947443746 996104909 843629657 917243496 888599415 924015200 889739640 928926011 485170177 701116442 475328462 903470290 797467367 932671058 299033999 593949598 108013507 438791822 484989399 774388117 540534999 586058895 36831822 523263366 442997521 682869965 389388284 525059150 911677481 961126204 776059504 882411338 638463391 746716466 309800190 355594775 539850822 949886084 972437415 989700517 289495103 685372792 254878193 257233858 377736643 382460699 670584607 783151915 958681492 963121061 649458496 737250530 729375867 995982230 819383430 866490523 371279102 430986410 327122790 380774957 806334731 868906406 749362711 990780559 96090897 823686672 618116907 852465418 666939193 942719194 869429879 916733891 831182448 884194501 716655439 854127711 766770711 912693692 805196720 843674353 176139913 535449975 324109046 562062222 668530967 753218154 186351640 728936702 952524857 964749611 909245322 976209473 11768475 926632608 23229711 267439933 534836018 814258613 742736053 873190223 944508762 973829505 230224279 264490623 863035203 895308612 700937147 774526176 474201979 635554938 277747977 593955573 202574314 663984766 515380727 566132607 437638382 522004776 319715100 533892653 418581832 659112671 364434393 696451535 858968467 869438282 717618284 870657461 475311691 649337592 949728415 982541384 880310020 907205834 525612867 834717581 680044415 896862516 525259709 728834141 979719516 999458271 699608019 755225987 15458665 412440165 159247467 681376265 120732099 191253544 718387204 831982449 200272804 393456704 402409882 703423951 474261674 682921767 971763402 972083089 860231096 869988170 413054490 736061396 887802097 942653583 513401704 630827303 578200376 665946828 353857143 558334268 876127438 980527801 245379042 511908488 551389640 616313953 3794298 365443037 98470213 997218548 813995539 828081132 507673421 729286738 934244113 973703030 861627731 943946991 102603217 847786668 827621178 988619774 603813251 759463225 241080053 973017963 537368614 768200835 611695109 659674135 445935622 857553215 147203656 355895438 51140104 590977731 769191371 905485144 136142545 174944235 22012000 664295540 508259409 532660760 225059180 925273177 233074274 931965409 699785009 943757204 943909061 949132225 495306537 813413303 372568283 516252997 425736418 831234951 266019178 489452025 259045842 496585335 939944031 943881672 801251581 979574535 747271472 829756046 660595644 786993018 579815908 900264896 926195080 986093947 823581756 917410789 872712780 931200038 22415555 942804662 424429961 937651363 560475823 844427317 254649829 927091791 949234974 951845407 513447316 910397944 343544776 884030383 370551228 609478211 481135377 626101090 452955556 778466825 758069185 962023926 184158771 535766846 945424363 983196267 386215579 607554260 317524047 631994114 23493642 261896654 364400908 765701455 646759083 993014427 979626374 980985118 912075670 927011020 681803783 778162413 89405217 437036995 140539629 653969854 292164176 901961009 849505340 945703857 876043332 994243838 294866928 694193797 443670742 475825296 707711546 868335775 427053288 475849897 106535331 878388309 2789287 970911326 514864605 911506813 278546777 460872365 625490651 676203786 47985881 952146077 932705413 933081090 284449582 321912199 403716651 625285004 106399889 224922060 531328297 856212088 522119208 550090977 417095082 785817654 465286123 745850098 300126746 383850420 604886641 773090329 727730494 832964224 176630401 876909733 290728146 740200004 859047373 973842095 806264482 974062134 375615134 747156767 345322442 632162453 142177229 771143595 206168499 406933961 627538729 843011914 934302687 948835425 540623495 962470224 455200844 515534507 944545604 970128400 925381912 944221254 304774623 499306474 636438644 910439818 200534597 514072001 851446541 957247129 122038111 632306409 931935065 978069283 460623233 555540105 101553170 500645462 682194795 726561324 22412233 473248404 223532087 747794959 548082730 590609967 481485375 926536524 207182560 932652678 857145566 876979333 391094284 904923337 796830519 924591984 397977068 729981108 323810823 863870025 366364182 488649287 63212039 200001840 243294644 454724474 788233582 921836723 959495342 983115655 143042148 231984377 199432416 756745270 950621159 952729360 662718645 863418808 839156101 848727454 865442120 945795165 662589253 682363491 874857416 887263798 385691529 444694165 373189078 412975790 10590817 31866282 830372863 837391084 994524484 994913600 907181467 946177584 828120366 862925529 71952193 939637414 310512583 987461424 41388961 420156839 398338445 690523221 344468074 439266263 566010718 858700104 702520522 971288923 207077172 589842341 62606796 523536939 742348510 870270637 966329558 970520612 14387850 844113809 839445832 905611203 941807577 959032979 945461624 969744787 862768406 959485936 600124867 953264806 589832276 790217590 312233589 992835326 831753574 855820081 834488310 929508699 667220333 797377285 421100640 565335279 748968158 823820472 332201603 983670652 149674340 168851962 234823367 561820634 722656035 980260815 298557036 796564138 119073521 219155207 908857567 952976600 966415376 972922031 224392233 335497782 425546812 632037860 752471546 872964737 661807122 664070824 337018278 360384560 366823203 463782017 355008636 449005882 667288418 953452480 109796248 662525420 560373971 679361677 875327929 977380884 624387798 710846499 215532021 488983839 657973961 751871107 833215685 933618156 576144202 768458422 125145305 357836363 735370012 907496070 123249017 759464775 734124191 949109527 64091958 633716842 185778693 411347821 450292281 868278126 304229524 492900289 630560559 797873533 912048386 915425409 104191401 968085069 514445730 615519047 517686691 975696866 732813341 959935862 57945712 716007340 228793705 234880668 993134047 999161848 755569102 971850413 76933148 96621414 139099353 508423637 11095057 449392929 106353061 720968115 329319808 737637388 565115300 716466611 14248821 729566473 780147220 886233010 763069352 979812701 491575815 700886250 123070920 846628291 80310462 975132902 345584100 802226770 742501343 842091467 464182837 835892663 401691071 649372256 601143498 730371940 996815307 997543261 857992941 997535063 935972611 986764380 594937281 779731811 363362811 471775960 702639457 969241047 514361621 865249142 102567321 386758802 632408299 830768729 381265585 690545261 253258354 279568801 255851000 825381973 455626431 952340947 638313015 961644163 801121037 973872783 268158939 726669164 586866298 617704764 82696381 504836505 926764277 962785552 675817948 802007978 171211652 660804962 848972273 935212582 641830974 960817351 113170099 566531347 530356323 876927887 161714713 783354034 415788228 668799559 107874016 462314417 968056458 977293484 480988328 993865510 103021281 633502981 909167019 989683576 144106658 562258058 126668754 511189613 551515370 969286737 856177469 986166851 373647512 955147873 839405230 843701941 555495746 805043719 829960940 927162791 565584655 599459279 352109851 724802967 268387817 673730935 500847451 774691231 388414789 426727907 740917326 858634890 202181648 445516712 977491965 992254709 257054259 927933145 321104518 840664661 83202520 569874448 550347842 888450618 967836329 995660706 659734882 705188683 685033661 757851028 679564938 704373913 676810984 879053089 700424782 926955108 911288180 979725722 275682321 802747011 64018215 480193397 675940683 745369153 66994178 918329375 390313537 994733154 298150515 507820495 936480106 938507555 250262733 972730619 805706091 853608062 686197179 717584347 198208465 618948686 405507090 799675361 316280370 996370903 462172268 890073808 991226837 992565773 302077010 441771191 801296253 810400696 290705421 934273091 422662347 447789586 439961224 736047435 831059379 840504743 346396390 433579406 237911102 333018073 58161639 390704312 467605149 682507078 910023848 995982252 864692873 952647301 215775521 476970861 131580021 657336768 908327880 948128505 464878089 578608119 3503705 281782666 541586583 805085625 336359972 933401673 70713190 516983066 167208649 220906247 256303547 605562852 688777084 871023546 830956895 948484568 678602383 881787110 710788472 930863431 925175272 977727691 604218919 692162680 85322905 621476294 287856031 593915250 275761870 475937665 501427519 899473715 698839261 897660597 467214615 676129503 411613825 743728020 11732190 710008015 168662637 579964206 218712589 995616001 80536233 368533194 780381163 863606893 858484017 863493770 745292742 815149566 998544632 998887212 180818557 760916622 703408374 801796628 292400193 746827145 669687631 989265202 280522347 828994788 902920338 907926521 940930011 955912429 521875500 989340801 644156868 666680692 67115132 360627452 447750178 455083466 249537609 486019333 20340768 848214528 480721886 854623574 626308999 757761377 846513113 946285616 985718473 987452096 426954422 956838393 624021382 933047211 934370032 992233307 127242671 608091819 197695673 707349004 88407882 935512681 836773010 882404026 744893206 933806355 341248447 575841883 108942503 830224701 895354044 952071210 472785727 986454970 536710740 621998405 275806738 533270792 641916362 995747805 788956543 966566240 157198400 520759323 486921824 599887770 739606709 831845445 461049863 855327570 677079868 819297877 767802820 784398511 532070168 636898945 189623482 656113491 630922131 979627313 232144472 370813365 469853725 653040472 66419382 414620564 727388622 788431088 543549620 807903526 691393651 737269745 347712708 538695670 69369152 857109932 142480460 249247669 259980431 287674438 106912110 181709664 149815235 853857295 634813514 768868947 807742203 967045673 779726974 983638671 276102300 859944771 362167923 516483684 798800969 952570701 580306327 756251526 488244450 611390831 588651588 696340254 483561198 673259768 733550598 977575194 738903458 840186518 91179857 737553138 550666956 646591865 97633613 880341567 684921941 864683442 380857180 679982889 838132938 889037575 594718266 607801176 305249587 512001348 628815422 807005173 293239654 854234344 371326829 898288941 412062129 436118249 652157382 797649248 570400543 732548820 771012586 910440966 486198089 757920485 702544035 851445219 304227295 727134136 350426565 980846064 315329280 436100784 956038149 995043284 632331530 856019339 762240802 802663549 447243785 808200000 948417160 970709916 18233634 690046729 293502936 926735335 256769616 869486882 729092469 995992875 160133942 685001318 623389661 782320990 704669230 984891474 647546505 925636520 920239389 991661954 819682914 940047397 2158865 73200299 241425376 435098414 808332669 890732441 879000932 881180946 484070772 623154500 807050647 943847288 98353938 176971187 890299251 904088944 884519785 951670336 67326330 601422727 41713088 199128985 871545962 937252242 768213319 932760151 568615129 908768791 586289161 859370459 927354002 987139778 185637394 630525769 260176655 354392656 677345502 748654957 832924186 925086675 393715946 495367818 385699403 676906182 549229434 872932718 676962678 946879949 700278673 934180105 306871048 666409378 482116893 959138450 131424101 296571537 656299257 692171663 162187333 428018388 63960369 758639249 960947032 976022596 976389963 989495530 860743118 968269111 939857399 981802042 678054525 800402544 5728825 884335186 329980794 462220292 277525292 405390715 45116883 503957697 818039858 864372664 319889934 381008883 370033858 531040009 429630300 767300270 922162835 971306334 178110485 279767679 993232339 994701858 814062037 927431250 827303497 876631688 576275584 871834061 928816432 995369469 732877884 991751865 717934657 950951247 9617086 39732210 687002271 810387237 63022465 638968756 240505052 860612043 300120662 650484192 543668508 808851526 576305517 681358402 828990721 890548140 773376119 824756177 905424322 976616503 186914518 861815876 383879584 420116787 642021993 986124596 987899776 993221010 430289719 758296888 696692387 770758679 759277189 932740148 564266423 876864240 868040452 876791223 415026159 847183657 520364548 647288454 473469119 823066823 676882684 782377120 921236464 944405053 641159427 983018330 315214878 748460624 184549710 541231866 345882657 488375256 793476321 988422439 9886826 831673088 964470315 983231348 277810689 950937626 854906133 922853888 624981445 702014069 909753096 974150771 395921495 901107339 678217480 870587710 167493348 651322618 729513609 943089083 263305912 309288425 962852877 987208467 400792637 426016479 231118290 525261583 69001452 694775782 203864152 433018233 32596152 580545755 921889146 969892783 296421800 515559251 671063612 796842325 529512421 817187147 806089934 854689034 743689276 774380183 296593439 313467241 541221045 717830434 671937324 956843381 225053069 753657670 53611373 138309865 735338271 885287378 875482951 978289132 272614555 661876201 227454686 502487045 109024736 160962951 317633920 940874348 481844214 831427345 60141977 695892033 622690078 946619959 472156582 914490918 194485247 268437580 754870154 886450644 568755966 806058140 167459274 286797612 578437289 800665041 458713362 958349803 345507740 602845976 819790638 839528976 744657727 752906813 611985860 755670317 302286018 475859333 262557337 739298890 869029554 982436187 119941405 334732934 659346546 778352779 11342302 856098921 651172285 835292357 395727546 983873362 255475610 661053983 51793174 125130812 992744662 995662602 131778242 273457010 240286312 994079988 839245221 970225651 645729513 962302729 89281194 166194767 815452937 905145016 106141667 480119123 919503071 949109344 835573814 992229447 672241340 793310890 617485769 915317193 506744777 603484690 460141446 510274781 959866721 963830149 284223115 334924010 225127854 730142326 814327152 851317445 752073789 889012081 608961663 786309466 109344520 140097497 687222051 967250673 621373743 647904958 604542658 868806816 727541310 796382271 650233230 845447642 1822630 738269102 504372642 737337009 301468760 579902047 812625478 861599395 12590478 607715530 316476464 589497738 19756929 28056393 961649324 971832340 7493076 830550511 725796743 850080481 21333435 150735382 27395592 91899388 588475938 979455332 534136257 588227336 161260735 541023276 666351742 774547235 590856960 850783457 889110229 905838652 947367832 950545557 820147884 834116788 153731398 836890476 761728992 975549731 754553255 798304352 623823508 716467792 210412688 663481726 731470039 964961532 361233137 962799724 795687867 997287464 273425233 723751695 656166382 933277249 958375843 987916033 305703830 383765202 30400748 384034791 765706631 891030321 314692420 463387734 163191511 267184930 352666924 988806630 382900720 595516783 259566132 617489388 547173850 653704066 263733708 607242533 688019850 893827949 909895789 948645973 594715186 838953944 467652032 781971842 138421385 771267550 217814 451767624 813451419 970689003 118402749 313589418 561432398 644306156 642047587 768843027 782667986 904210313 508037616 952986719 770671506 913146975 277482561 598659199 456250572 855851038 359231375 956702047 583047782 763701351 256194965 434730976 732487944 782251763 68171022 171631342 902193166 975197270 375703878 816399802 433966743 594002367 37752184 732923104 875349317 980749255 87536341 778571928 211262062 956893213 469574474 746524998 477847192 539672419 117003618 960493895 149357308 960558794 669991599 978146337 718306296 852239453 55763448 403014009 121150911 151956488 854311560 899707889 774665624 808472195 143683215 578221017 44206152 71729131 164688416 443932978 129356376 641670938 954820181 983111885 779470367 901729041 408505384 787373600 393050992 747420744 546963492 922423777 140496209 545705459 943154148 974142329 219426815 493786228 759929138 828976366 223664612 806648449 399865220 776908164 746726194 785315327 549432152 573171185 666455048 706580203 115900021 216768951 318996815 561479298 870075822 870813294 367849948 544633731 742429035 955003418 886105930 945331129 409396456 525589875 783351758 801088702 837259851 865877502 519465871 676178631 882371648 888415705 576532152 714553333 544293601 568041964 815530001 958702483 255428683 738951476 602558439 756192135 664614270 686810151 633546503 834224821 548778013 807471266 988401098 996189523 868426237 937710868 856702476 926982578 347373782 420741965 710805820 889277433 444936580 592166044 920065264 956423100 690042098 944682555 645784894 987001581 625214897 713233647 984494235 989525794 606059484 674938180 938113201 956490442 333228628 661706137 764054132 822999286 690237380 696001293 734159297 819117723 178530772 997786934 711837175 903587705 187650102 637651156 364622379 396479604 692074531 851359507 891741608 914723433 947503660 987850677 747594524 815936617 140532434 409156011 455057130 639499937 346045792 642770745 568596149 813634757 900753150 962211650 169224818 225303042 133342894 660292546 148429790 738652613 70118832 408834312 471016341 959845840 377455705 756177930 304709702 840611069 963426501 985160691 374233978 936418137 943769692 945881579 275726142 691251536 161361022 205117143 347862727 676712834 482959280 531044915 245633872 630669372 662897692 903255015 448973457 598623799 825055940 863261015 934481979 951061928 959577025 992739496 213290035 675252076 799352688 948191435 104886363 365774582 322729065 975174208 58161522 531685142 20999597 686389514 507266159 671629750 634262365 938448972 669643536 882098545 968761994 972482800 202186283 840992574 68433640 637033547 223623362 489106110 675127718 861791083 585664433 759074721 769970081 995030751 798000670 990832998 718977825 946171629 255099484 793971838 255635209 490693459 901615982 929226275 962161588 979676958 30381225 983118693 739881590 817067130 139188604 323956623 255089616 725913954 862652004 993353884 839339919 979805245 574517224 635745284 378263937 880786537 401753911 650074843 939804013 965941008 101004465 424660055 688273400 920547509 497759327 709285383 206365184 578218662 617181327 764753203 930758531 958209299 867930370 898862982 330332668 954271396 198737490 548160648 623535341 935426420 983601839 997041427 392710113 399125654 272933525 564567731 964961770 997764990 644687087 776926744 994476829 995157931 324127637 509020912 686219675 817748626 960969403 968303903 542370943 972278791 786326363 915782092 775607476 796679052 564276493 671129395 571788238 609436745 297395620 714524547 366022286 786421197 97574763 238839356 603767411 703669529 973017184 990698117 844681305 921736893 344728873 627174581 698783563 769961529 881240475 897489182 229711964 958031643 969230823 977505700 437494398 782676274 914240468 992483428 518127148 652748924 592263330 849005028 319040538 516055560 82510216 390427951 432087462 690855476 261754968 432540605 777610449 979164917 328160976 927653712 483117557 891473075 805102026 984029231 852924800 861620078 674888859 840653101 985916314 992423531 839639041 921242227 49912073 623177220 213977010 252515588 903563658 983158323 853199634 989076274 20993475 732110097 114971899 882347188 475128305 851532803 89044639 607462136 827710481 948259257 725405586 873750783 942378122 952958502 582111240 753433082 73081300 255797925 195561724 723697874 15043573 726714188 636539105 771545234 220103953 976384098 345868834 659891916 444118048 538889256 469435879 759357756 782606921 846286695 842880699 989603042 337980014 481183950 52500749 769021377 810266636 945983362 129094410 772493423 919426400 920387734 136864232 944933210 619854105 977396887 119862310 406942355 301105331 612631826 53182025 270414066 251788971 660849794 92504410 926344665 996335526 999446917 970649950 999754454 288846197 794022386 734804287 921179521 704395326 939018717 475680323 685678749 67242524 359249133 345027687 789889474 403000826 857560355 384318377 435482683 621895850 705492488 761321234 918984735 502547647 669654765 189707896 395889421 512285258 599855257 537959939 760445958 344226267 572815759 369152121 730555314 18700404 711586548 731987005 905422155 780716886 804255926 821366982 965630914 604918539 672626064 106354216 828274167 329741281 578997579 921316903 931248538 68146518 906964461 547671700 824820244 578019206 739705495 779649413 900706534 456158493 797078008 889893546 935077682 242448903 834054517 475049508 839771208 666687369 740565700 390112001 643011512 908286706 933624620 513154524 790052983 223326859 769454600 533327139 830990332 487674978 669049418 818006357 975174027 433959469 776562163 238492330 343283527 156230151 301900450 683426968 779017729 834507714 934887117 535408958 636994762 134755450 901960897 651399926 833646879 387609268 684044436 700904053 794812083 735487752 755319141 254458395 725435102 587740884 725814903 872556926 964833195 249630939 642077439 210687149 583959353 842116922 876298720 300578463 804687881 100178701 190780031 161551501 557481073 830780873 911999430 158348862 409270890 429767040 650693471 718935239 901757219 586672295 778667098 521852350 637628564 23414178 477755447 761134014 928970515 728137379 945617898 596923409 724857294 240030815 795488516 925644231 992826215 217921122 404759142 461583544 517843823 400586379 624627657 654487561 869783938 787306644 829988275 191215293 962230021 995523607 995559318 273297963 402052358 289686286 831398234 126698255 221907392 609940879 907274198 482988857 974963073 683464738 812811262 757925981 879482443 73805843 138898289 865711856 908971816 97203934 243228490 186145258 199342368 429991314 811284585 133012094 790661931 214748953 701170153 296203064 639009383 875172008 875494497 392593389 445697910 414208739 722353768 890402682 905359919 200084470 287693035 624291384 794489620 265580104 475893499 242500651 254315228 246322632 824605672 483984379 923624886 460950714 750994861 921821043 930294300 97605688 774143237 12765595 623694700 745817834 931297557 123842849 905928734 512655025 743368425 899584764 903354565 550505125 724464292 584521617 698577221 129316498 664733344 933342185 940621305 728977407 868603573 766840884 914611303 9307227 438879409 520490974 902937213 690328636 854174316 821686101 880983846 550551393 657705800 400511791 750347425 220919563 412337716 498307940 632653905 572422707 845569165 907427624 975160009 956237031 998613626 588591791 972489971 215768913 541026226 486239314 927524124 242754005 425621075 789347200 975930143 248468290 857247996 649843435 839057578 736705097 966266691 325099593 417875441 182001272 491966155 638044462 956383908 806391190 969683983 840753733 985824760 741387495 790666034 605467643 674544865 418303820 991349026 658092196 975500816 304074011 588739849 594247710 852257020 424962875 695572761 905006155 975675594 790893588 801707965 598813005 698782733 278482615 605736807 674760966 967176335 762966420 967242051 204876189 281857048 554333973 968817829 207726429 435240037 35199458 435182017 465699054 535399976 706233664 743515613 961583137 975725230 82323031 961181704 958535453 962580388 70759914 906848318 173810514 570710654 778119930 952158281 77746599 870091549 437287385 647031120 34555647 521787623 233513024 958913090 397399875 536230997 32416619 474944896 107433973 252295464 663870535 962465921 78860499 857116094 794295002 878425103 47971222 932066506 794808925 808898156 105271252 561469040 684161155 723899479 906774851 998712371 908831412 922542268 297142318 990749246 771185905 838854331 698750607 836970770 771936775 976833402 714585725 878331422 732668213 756757422 18939582 390600904 22182322 693880724 913078069 997376321 360251519 562989263 248392912 770528244 431531077 600015130 901686122 961892109 554252106 911269551 339144524 738571805 316811855 829119341 929636776 968780526 669102415 802375993 188600424 372366661 909415117 932377519 437555515 691104511 150928660 243047753 954476537 998158304 708577799 761618081 497745371 524394758 777628817 779606139 803915466 967583231 90396994 809684593 333935960 730443196 746258119 839689204 419636150 864946624 648957839 786991633 141631757 637148161 418859397 881347557 293180349 641038088 282268851 425374773 236333151 852703941 985011758 987232318 823447945 897634404 24206988 371111694 519451067 911093283 806682875 836447768 149620492 962721342 456247036 653826859 713280465 758472916 187413191 669780208 240902601 513774345 192716317 837970295 639679641 922875586 106870531 981509386 208108605 454974630 133584276 733657642 605949645 860072164 262648223 912935302 351614719 941273925 946808203 964568366 695944017 872168611 63585586 515472553 67269978 825504217 66833331 275728225 253048342 840706675 223955099 340059571 658770028 789715832 771719332 926869179 11334886 722863178 194504080 861050749 484154233 912378745 336679438 536866995 971025470 974978005 5449450 246573427 695300983 984654384 608090109 999247457 656468929 686677694 919562657 958567327 558215769 561366952 391391633 598159787 308716773 556136360 483263669 755573998 376452367 423500856 290520616 835882241 563830007 827009707 473436561 819253399 830016780 982368519 778880154 988588894 105565978 182666327 215188698 731055430 622974174 815190340 538420240 616807662 145553592 993784007 160341816 785521191 552036706 777246785 728325978 737981059 596611554 657597706 951829805 960685296 726848692 991530926 419155820 463801540 590599299 757782574 117547168 896761372 36461173 139119077 575799422 748519512 850207022 880187749 223326258 884176994 85091706 246285865 893737351 913411263 309356218 827385269 12644131 863889080 327192485 485715422 907829474 912264061 934059462 990021175 880007048 935336800 732060531 950183923 412395017 580157142 80799909 942214545 417144731 923418719 970670992 972524515 926768854 980387800 561205533 794783918 414043086 968403091 57901915 789137060 514971345 753406767 220582833 609783018 363817223 828811879 208361217 238060729 789153270 921355781 145065201 530136370 985655727 993805502 374772783 620052807 563767069 915393932 8087962 282067972 779623931 954181731 405018499 878472777 484464025 580897399 415270473 783463458 694456414 991159021 965612343 978708999 241332489 627063990 86174689 836382430 424935743 942336015 544941885 840902248 444967831 983978878 941637683 976789652 642656799 748589844 549201465 918529479 578120889 698673214 895573665 977653767 349201737 929652377 458909907 988890048 43776561 576164659 489174718 799266625 667141651 976449308 155293484 651457556 157090785 548304234 201469232 999349609 609649204 732185104 944467183 961018685 834401073 885003563 870972185 923862082 543809348 607523863 651721167 686489376 861571851 999652260 704615844 922482784 931883925 964226364 600586809 923410932 471652592 508849378 553863322 974152011 318232663 670819697 224553762 734189568 108339163 691126900 558554318 678794789 704527927 788649258 8337798 969657387 118131506 773496642 211847692 707399459 293558730 594604041 693558402 854652984 704874184 760935738 659718304 677725553 425481790 719378240 449822267 728666288 175851038 590056604 898203110 946579915 65732201 148431957 40098797 377655758 125649146 552387066 790915060 797555108 221029905 921981448 624535613 914298938 104714400 591526613 587989904 983297997 137715554 299425663 875927203 970650376 259063526 311945341 820868563 916725433 168185252 319369595 723823843 790961735 543849930 893918677 362608317 393162275 309537589 933840018 707010420 786569847 398028583 776599880 1420962 300048308 218514797 863216471 996765532 998618122 591512006 688874411 543626751 569180203 246669812 937919256 961138651 969465127 270790195 914975970 511013317 837456977 808405617 872215831 171546797 313880631 107326402 704203439 494927600 583511552 399799706 414339579 890051680 897013242 823844741 851689544 104968962 949047330 34505507 502671194 985337908 985742373 471283761 871946119 420328971 539559083 96676988 952086534 611814847 620301435 576313144 958236476 855254840 874191167 913349160 926164927 268101475 532122802 190982016 211625274 910790215 965417468 594569993 660607718 443846025 809703658 486428083 613067063 984609285 985601303 714504534 972889403 697754855 875959336 302804724 360189309 112637743 802874594 246668215 786003154 919961631 995946435 454270436 565596700 817882630 909535083 848646358 875479111 569818964 981802883 462877555 737438676 822295932 913236944 245229302 612760472 346163071 784769576 100623728 389570772 379757294 497010219 189623230 222797456 723878560 812545916 125662406 369508875 769426238 942664461 768475198 918788965 714554516 915134092 745086166 979098467 748987663 962725221 237621550 430950908 269439358 977734269 864551785 973797301 97094811 865700195 580152791 825223696 538531321 539276485 399751947 713525022 488288890 943435110 730495729 761559150 283532020 449116655 577171972 963064629 925769514 993586212 71962252 371710985 859250191 996498758 120606696 639631270 711042762 776746470 44084657 913283748 450605073 844940147 506535829 978749056 837102815 886691820 156345254 668190050 239301084 644545931 882942356 966511057 322132762 670722527 152838916 655921346 500652779 901825622 99304942 306644775 159759215 235325719 488979273 585622473 149257747 933294126 762972751 956434846 455162235 837794668 912749232 918476850 770823118 923265897 845524100 965718870 457491102 722671743 451970152 961431594 329274713 779642235 178656643 318358141 313761116 628719493 774088498 938506616 78069293 848994716 149447270 958065408 762849071 825358596 84866510 391966092 744610532 943210517 159835999 633593156 75077035 588725428 965705915 990739031 862798325 911188440 840301883 997115086 683445088 936085873 594042182 890413090 597946169 662618441 206699884 760525490 756683598 874062589 852781942 868867212 982869677 996421431 746399686 780756220 204795129 469167170 288145797 525470242 981013021 987462935 396647375 457368816 4489754 761268916 395514972 672078892 727486022 771035963 349881855 571560522 947387682 992264088 822538729 952664785 362029346 487442462 632416579 847100664 159360437 686712740 778217573 976670895 1230741 657856735 360910007 605110960 48914473 461213305 160292344 222455319 75980314 416636973 226244237 387502294 926013029 983173166 997019979 999831437 506650903 780289101 96266972 761639732 575352094 709687616 51242134 335016671 50046623 466416310 953441594 958713910 30232623 150351730 292086058 759202863 715317239 835522147 2948608 488937266 984500246 989923473 906688355 979006061 216206221 419712705 841483647 962666864 477909861 917465577 48149020 830260071 429668729 884898739 753325654 838793364 643411860 677118827 439872568 800320188 364185763 372962973 887019340 954267575 559556317 816240718 303630850 436385617 91490371 417993692 127764305 234452556 628610001 826218055 261646016 337741266 354925708 920459093 394305100 688286122 403866875 694570112 412978917 558737064 238562793 423561651 510044163 979856513 144272950 189940069 773228800 898241797 925744831 955345438 254382739 940967256 232167055 507198441 223356878 597474777 798378858 850547225 241442194 426064144 821881746 994035238 251970820 665488280 985240414 993903489 853652042 872438929 130713705 401759058 181931627 874032071 915848865 997655763 823631721 867490345 125427131 535178861 132749484 534515404 471821511 618468375 297848476 592772346 676925283 941125931 918056532 939975616 528631105 755002074 566158955 623001861 618313185 826777857 720643886 762746760 521690041 933321534 444590072 626372291 812391539 951145183 704833707 970607270 770663477 779954141 623021104 776361186 685907787 755586819 122388189 990122364 938704227 991995949 75331721 534821219 273185114 540767946 524924324 890250588 310170909 386240963 161692807 767228450 883038053 962548086 526086512 767725503 899514961 990094767 403193600 836742310 243233436 630043473 685668346 863663046 158139252 788550988 855873987 942198721 177437704 408157551 129553842 590923840 837393248 942158714 532821477 930837380 386394877 629332847 331812174 866174985 255533031 820074453 117304866 189056506 556325356 970337188 294118976 787005026 516410656 615718913 591967800 851819207 149122528 445246752 22012131 989581823 109950823 133063420 542176853 976750815 663338595 744552343 553158543 934879978 157736915 469942066 296201106 463622773 860075360 955451226 949353407 983007657 922480039 980390422 414882724 695975168 684365399 871345237 672123098 803472921 401361597 739915122 185594682 744743244 290759937 709184215 513712816 919477662 166238051 216733442 9194519 943086856 42375214 842908710 193546612 745064201 491318613 871321855 294899318 906979320 473827351 742513379 947083393 949821290 81433415 419294607 626252044 707545193 905794940 922095343 357229616 624877691 494137953 945405736 168199754 626650394 29409037 670448728 168467145 936407493 602964584 767740007 662252437 695064548 631132983 859939307 991295555 995395823 758949289 946424679 875995649 956504620 916027273 945085013 965454307 973667549 848276785 989351495 935893616 935960239 619913486 839821924 75857063 335982132 349655268 528014674 462980589 935828710 61478484 616656232 543095622 825913483 651680820 961594304 149680784 899055333 523241635 683754324 90003869 233188431 665553360 745882394 902996902 950753157 615668798 639309679 661449517 888239252 51203115 763347259 845577449 872999179 193030473 676170070 567255791 727600842 371542561 499371353 969079565 987871425 22600600 37087499 259955718 626004064 873957209 977750312 782617776 958175792 756192427 809945350 281658878 346630949 969448770 975889056 517364758 538624292 599778569 974237724 431478072 979814429 902900496 947509995 356493968 650832656 354929142 677483277 790692185 972563721 886946332 922324696 420819146 451534602 162683892 627013388 950759515 980502052 858193605 986774715 9094570 259445320 271210287 966476347 383815065 709625309 421243093 487237381 931847815 974789556 944291556 996525857 753958561 759940952 377212391 874266941 510483253 642777489 213251436 497410880 515957914 865837290 73031961 607217647 959928939 995011830 320692347 659422484 102586550 344570657 338178200 782056988 230031897 694493716 965184617 988112132 786659558 995437767 129475489 976988516 489107487 635663957 407132144 509190303 120258579 954492465 22776289 93074807 34584888 815696596 83584953 768288210 653674411 965181671 364676381 949739854 838335974 914568760 199052880 420627101 77975868 465811556 888295414 915338948 271251370 733104141 962523223 964765083 898191866 915063106 836482313 881574526 943191483 978116010 297937828 941953983 810030368 846545219 189324318 223919077 534969245 863041052 424680015 692335816 791561689 927642528 711252412 804782292 418909343 729845672 797904086 957956536 669991534 967483079 536962193 996943632 802353909 967055710 475687184 945141796 85288485 622043437 608074842 651942631 579404758 650816696 908011130 990455315 83191315 803557445 110633348 792722632 256087536 801478497 215318538 588670146 828745881 896338480 977647220 978279044 208577741 424444648 135832078 627945107 379400515 562972685 740452194 834132271 817937137 885437118 176963480 559526454 383888188 885046075 350943530 860299813 313644198 549703158 105852346 980278975 460983935 817566189 127314007 379533439 395809673 594843917 60131368 394369392 68079300 169743606 822091300 869832054 320420694 727049358 411690853 677924920 920244033 982097036 607894376 663550169 595363310 661550285 713051331 728817429 177036943 322774024 688528109 829558906 416648517 874584773 683628078 830054677 402731689 636071140 827097907 986298791 136347034 645273867 456837355 846962304 107490197 479999894 571337032 909518369 113348866 937978635 236758750 788231963 720882135 922859164 957237458 980479896 151400956 831744821 705266247 818571297 450224074 470528216 737618765 788351661 314634536 687111818 187135295 390510265 861151451 948259780 764617246 972239081 963903 798734332 945233224 991470373 102022764 308926395 827060841 959244068 191256814 392194519 231329314 440570446 549561376 708322233 423618580 613753644 147027417 217819916 265269789 706702383 59904291 815501961 376788955 593155960 790608269 854069799 445947298 478307447 310182783 843470593 438789750 591726762 3705460 215044574 603284953 655027845 19506740 779112739 638126560 922563333 258625168 865039247 605636933 645889552 599187312 679978613 401021202 584733467 252272258 464084488 243282487 368749848 494274944 641759026 172660864 592475687 151060603 765950799 701246110 799373102 604388673 625418462 152505901 909226097 19473785 505605747 175571229 267678698 64430986 204302487 458076132 651998853 96469924 449148470 712902980 924861939 783737479 920629389 384955458 548853897 651033519 656432745 618034959 734162862 290550919 531563597 858265171 870514960 207008457 614179086 442311640 538209501 287254449 297130192 88399460 995793358 952983005 978898879 163270019 832508312 952241764 962828290 278038 973960290 816490177 932136997 247973990 477787932 975251715 988597056 743995665 903581748 863155642 888762876 473241420 513563967 997774548 998723475 25587570 633458094 114160749 115148023 585170516 776451064 29248187 685858685 617468502 799941000 162051579 168987692 920140774 966939535 790609937 922324194 53989285 65278219 273690787 538203893 871671609 948264315 340529073 956387696 844713889 984042382 589144494 803740536 79267120 561399413 716656987 933921736 75505402 151904487 197373857 915578141 485972662 648328879 450637463 650038142 684608625 942008556 894526327 918826852 682296237 854903799 626037323 910239542 219419777 622421204 739590863 785984797 335921868 734892145 270944155 800759705 361227451 738319957 216648770 316213917 591177790 989148299 243831758 343322121 407508763 933436143 815935591 988214660 446567898 933550479 771971353 918493009 43635831 464664530 325075189 433404287 99229140 404516399 731350951 783990086 124181992 879911385 489848496 762588150 349874653 929842601 69070491 397635091 960176461 975838089 553458537 973160824 400414786 662635634 796355406 995529184 995317931 998135518 595286470 780951304 915108456 925948885 807681930 811746017 140442467 470832876 834383465 863808364 309347077 756911737 381816014 597165335 930603206 943649076 368413115 644862912 427479608 838304903 943957745 971726011 517712575 672497338 809875869 874873644 464043438 631887700 565099981 892559470 555039303 823918510 607676980 921826702 36670081 646136265 725614017 762365455 232747018 541811709 318270336 727661675 144457475 211935759 377602321 751141099 509827880 730253274 868519088 879798669 110359288 807123142 788694512 795781540 41804097 571709536 614533855 989899906 211424708 527682507 887708357 917326778 409453427 621873304 53976502 782609863 200283964 793718139 40605021 191019553 28142711 790707586 739984756 851023207 389964378 892230253 101342558 439990036 485513893 759867441 1528404 806938446 800183290 933792227 473118493 575292296 755694773 899571531 188290550 849300780 124401582 424127391 162101396 750017590 612010880 731156103 271943832 606537199 682352463 879003277 279821239 489146144 581146177 916115413 497522585 545961386 350934746 977820848 208303835 859225571 725199656 865673456 599152222 654631994 513913212 807309677 161378003 217555084 334366985 773105288 141997690 336191339 243441716 819798658 285693033 354771909 349821523 563816095 61837329 228558548 780313087 804226211 768155271 838601519 644857044 985270601 961650873 987074368 550650643 795660663 928073248 987753596 703574343 784230098 571252106 913322811 88959134 303602569 860041044 951886870 534689117 929048008 75511323 752760819 889929649 948640184 31068615 656224514 599752024 632245020 224026473 744740928 884330056 976390550 329756811 571753053 796403264 961148860 202984804 514632931 342571484 994350948 384985576 733120301 787246961 998832118 873971425 904334349 415104169 871097261 750910452 754439321 672620965 765859080 871413613 936407560 683842096 970401206 366534109 661631131 19647580 542147308 398065474 448178728 386536935 987862122 211508032 886536062 107658268 331976260 192283139 797037042 510315837 758099409 864553129 882346086 908162311 928392306 433745441 868144717 249866407 309399203 396684461 938081116 764973324 989332584 213988667 339604096 605747350 654661589 303628710 953995323 87488426 479781236 540849536 649672889 339370557 634772639 729107573 821007566 174122377 302482452 407964543 820877880 620316957 741905196 959253393 994569629 464646137 910183763 982595977 991704697 282252228 531257101 226691729 905422871 552787667 948537616 458738830 785385611 209362111 230548649 432151841 938214115 929804945 971254461 599237875 701906120 657671946 970701049 439910674 814026755 847548066 892589762 604664984 791027305 538312028 755080902 59725193 752287088 332873226 358334471 832276711 963454899 356737323 914756693 82609825 187428340 595522177 828698175 473777429 532204872 774871407 871590915 550619650 894902122 254945998 659506567 157509793 409934801 618127836 756887257 894296254 912703212 377396412 878223737 593561786 633420194 316192357 412241785 570986034 946778642 510361319 633792250 589023789 596255469 240085336 558308786 366369476 955086330 851724773 858385318 484492456 777493378 472261707 719515823 815104189 845170798 766147269 916131646 390106842 442269611 801165678 807190476 534131333 699450916 154833737 804902246 875376896 990143049 709322342 938410640 725224363 965082681 693986688 855341016 238942993 401613153 105412438 396405460 297598589 467714253 313904438 899209861 250516200 904120010 287099612 798748562 717804936 883988903 2031513 895556832 943786841 944015666 828082411 975838446 456058011 589078894 205077706 830967162 50194344 128633825 806569900 871824487 81309860 201319816 487428274 779436816 402428864 691485452 221785741 812761839 310248663 622478206 62165091 131450878 587693717 771930035 778800430 842096745 167339186 649105541 847774368 932530106 976730881 976925363 672069240 749920768 22521962 33270228 763753893 955291406 512554975 585714822 744895508 753459835 748699034 958784540 963991928 993101780 29879274 320018092 332579950 863318918 483766009 877420963 671370712 882358709 286997241 989279517 508552424 661323675 968226982 995791316 776784774 919622023 914595348 976527490 829806573 995250051 393538123 765154455 742403437 832244622 457975669 668364727 701115423 964903205 183829347 826660111 276430808 676337777 251982429 850312986 531827493 843722360 600446970 655639295 886628057 957541899 850476895 913063727 553857714 747073721 293616812 307286590 99677248 514718067 359331175 361610523 236545405 673908120 551263043 959762905 99236301 468903316 767846364 955140150 42061238 643825042 985647207 994343881 917585639 948322071 148971055 475751218 969588185 987520352 334720331 715763292 313345084 683304910 185895732 517725523 765214942 994375948 533860801 563238581 789173995 912875251 810765836 916445061 665098359 717660867 452149907 599225938 430531691 765343155 542731487 744179846 222849224 606193226 510737357 573019831 953768273 970826184 160224934 831868822 522003803 652469596 199269966 415971319 413578547 726878884 468479994 712597984 919094287 963360646 676748923 971326592 750974261 915244005 995634895 996349760 200161459 434261842 100961296 442868290 180305841 278459771 475721440 613285688 477603164 495192091 456008767 687371062 206945749 653941608 823019978 956980103 226733918 534121830 701913809 783327036 62089630 662140998 422835580 616564790 295797809 790142662 178813134 424246229 527181083 648404921 980578088 981258711 837673640 923105339 577989684 861715729 845434733 857513078 398099281 576952095 610727688 846724588 190323540 971438751 302902956 953208868 132174898 761631256 631607140 835162355 300019284 978502355 332176282 403205474 243524509 772545610 390060757 400165237 392494404 545213869 232159351 274186969 594753484 631204213 962651736 991694271 451457429 698846131 811220605 975963532 310561894 518080625 140617573 342069772 88813306 591784660 9500971 894850834 462084388 872457899 381862819 536785479 508149199 508845424 981580057 997528408 318196195 427414791 693551913 905924783 535646959 998433655 13051880 726451870 699180187 866367709 948803363 982680770 757530306 816575686 689169759 717763120 319969536 600710935 123873758 999331322 189322317 671097724 177993680 904810605 50334705 777201364 466616611 564792160 596675510 833191538 235468224 956015914 829154374 968258290 9999747 546239768 175819854 456891604 171585475 455345046 738355788 807625042 612260927 824221111 570067293 886553922 354317273 999138431 168781115 376011669 700993172 918603344 680416909 817805584 327495529 760219412 805802548 914833730 100611188 632372352 125117847 527135116 983800057 996141933 403209169 540337852 179593878 979582009 870688173 913595429 999151987 999506618 419112166 525787161 848419738 870133621 893616245 913803985 442074326 710916642 845572592 979167391 765699730 824103267 120713656 624051358 131275011 876468847 293289225 654050871 219968950 752303812 276132264 468150679 912304871 959479637 373133661 827223334 578432005 736764358 346199854 592566079 84520459 904574547 417279297 479113994 113171514 694304374 142568286 840440344 889993294 918880058 857163589 999576679 433461079 964121942 214203146 627313350 553385673 691051559 669740103 812304840 203179832 298278532 811944324 945214514 98844771 521222154 66132405 960148754 373870116 613444147 399306667 798373191 232763926 317763375 637845985 857558184 49309461 512010581 295431188 425551660 438642719 562895598 142745361 741780554 632708138 875191112 735830283 865244869 396998555 637246472 954196087 994105291 125623624 125966597 862185332 915709323 941812475 969388658 890383070 981251936 329609420 509973027 371413598 781327709 961887314 968162870 271327186 775086650 99192325 598100545 939375043 961725855 257236848 824399896 989909814 996857197 510364913 847993307 789696288 924432461 391791273 572935463 957692887 960085381 636795931 974285716 652690113 870745960 791802407 873753047 590457359 645077259 211870542 489372527 786934795 942188333 124969184 426807869 91992985 208799653 383242780 481750783 842844601 930078935 851166104 896960907 272863115 429827314 181458586 339573768 134473442 781509859 666571368 941776990 243750664 285130186 601063471 603149211 142765255 784369092 322483781 886871466 853305697 882238892 538260139 912072702 81701203 484265183 741373398 793575420 822670910 957693401 813780585 981090448 933380460 960362478 813516653 971072470 635621307 903873351 116616160 942466942 290305224 728985654 970595506 978097449 871445394 938742340 8854773 526695682 293528316 707830913 986906469 995491096 284516309 562535356 253912491 483964604 313536214 345045030 887179548 968870284 890634786 900233459 945589704 959410907 659717555 828004077 829049835 996937290 968395613 978284756 910396769 988338385 981518353 999878725 217651012 996197361 133086795 859624145 967835540 993227331 41055787 670937205 403697477 411001001 138920289 782423071 880651738 960607310 802738037 958966965 178463200 918964950 538156323 656072144 742681143 911270774 605508297 983297549 439163167 552504642 408904092 949767465 523840726 893341978 798711816 822192363 348029704 776047436 471477795 509284819 586435064 805239377 321676857 763237481 796812926 889835200 746910842 812356828 36155717 240245275 781075841 815426850 723537034 813826491 611920746 768378242 973632146 982251245 773603120 857122661 873309249 978105329 705025209 912026937 113190496 446019137 53290910 683171063 913401169 929906164 612372186 928005198 990304543 999733847 806362653 974507692 544145098 864886845 543951754 738698665 740753542 915192730 49809583 210382974 550038969 713900792 54744085 665888320 901955091 962263420 851351111 926626785 786885320 883850664 416115709 606984967 508519197 861428251 155845551 576768124 532109046 981653751 336691016 813197589 338226547 767639383 307925388 709296622 468177029 492553861 965416669 966085384 677520884 810767736 413075612 538002052 817159389 938405127 581577307 956950268 489273587 959418439 646133826 751086097 606059376 890819379 173807271 528560410 455466705 493761551 505957918 931653597 526578030 978314301 206068540 623567143 168502808 234354953 107265121 166289136 479006438 739061630 747018575 898878904 841847396 891629389 251591311 417037847 299978390 343287892 877844296 903857154 660224609 720031662 700825664 930513154 25618283 791449101 252928649 958991555 508756471 877485867 115182072 686108235 657518272 790928883 255091169 793147060 42578694 585938182 61681359 657992099 406356928 582696075 137092724 616601881 423914864 852439953 383597286 583076196 248644141 805047503 302427751 372681506 699202357 998685953 103129343 872798250 923070373 978006584 454391941 469063019 192409907 248391377 990118275 999046480 230576792 429102199 660536355 966457603 413258763 878429002 329547542 874659432 42159529 316877335 201881354 603124673 403323027 892934039 42995460 757116008 471780492 644543169 484851588 775902506 599964648 639018582 442150065 725134816 603288640 730019293 888020872 909891606 636834598 900281414 654180332 661562278 798478668 896194958 799209341 901011403 661408194 712856089 127110281 869353189 90364130 260136639 922746435 931939667 485902397 604673614 220308452 734877039 185708880 225823005 664530232 959475899 446268780 660681563 840676483 891022847 701171167 741449541 577127764 658469975 260057948 929236674 651782685 672560043 291708625 650656429 973840664 975438846 301757086 820586551 855439972 865291140 933334283 987073092 977805987 985771904 772234270 934336045 186420417 958865376 466110954 631239985 738372523 778187195 741632190 941630800 683217720 860782625 1458609 14928186 57457917 350917021 561171962 860016970 15654939 210825110 999526895 999755252 336634741 909617687 644248396 791412165 247895218 649733044 550565736 572487563 435198864 641811862 282944632 642938032 55674350 935991158 591814092 929685207 650880987 908375000 402847956 899561361 879872347 921744090 245986727 996489336 717550125 718628298 67343259 500568119 419895905 938123445 953453334 958998129 239375406 707048954 986479016 995920072 537823179 995130138 647767172 789314318 834339672 992091818 267896097 275553731 996309774 997150394 560816371 986591378 515426190 652334151 565214507 658690115 355325427 513847662 31816589 516141857 180175492 355238935 581556853 846821273 680607745 976771817 432274849 974128106 380440821 789483751 749220504 895443034 555926606 799154045 229834909 925672539 352197443 592609877 232259530 740391746 791169544 986680121 658560792 785867884 138768031 264243384 74486667 856907919 831610533 876434047 73352800 283545789 648935116 834119324 324361746 794297874 228532368 657097766 416831153 703866028 841432811 874216134 529215774 571145295 287926944 752068319 844940965 996568503 203195140 518131595 883860933 951469108 262450474 581577915 786612348 853688965 232553660 877374271 341501155 749186074 476406083 477431168 196285943 888086797 756249919 926814621 50479180 877698373 502512921 675740899 443091499 785812807 428380058 652775554 730095086 914621806 546363395 605147737 130283704 919371368 31629766 771578206 332737366 913907614 81538665 955539172 323160446 563810315 668676274 884073036 22606084 26987661 754596512 908061398 994460858 997918231 161517564 690136933 933199654 947345688 168433864 376397665 346719036 622484381 465601371 946134625 754983738 828258869 102410111 826016682 666309447 784369817 557905265 639165614 731723221 963244852 666817515 866823534 880254562 992262048 107568082 314021811 260876437 994916440 462427680 972360173 214338807 773165449 147243469 154629438 605055178 805469983 21007552 610687514 291862752 551133263 739891170 819542123 141345178 551522353 505988069 608015735 171474979 485791988 204316964 263797235 401780692 496503875 876066183 904665275 890358569 936847570 276487971 437193161 960211629 986809921 714397561 992252355 235533325 285968549 814521473 943641645 488814324 698379918 806375511 972942585 599654624 769285178 346354691 402492061 300636793 794401453 14358439 940983976 480039236 534916092 230772971 956939868 15916328 319618763 882032714 987467201 306472479 644619497 718907379 923568189 55390631 804087270 95256253 886735200 972442666 991880207 347329819 553818478 903130012 947581188 638758293 936811426 280795963 496294876 907547440 946034419 786299082 977244866 699576565 713415109 858289336 897840000 256500383 551463820 268514545 576743017 13478424 91600766 459475144 668294802 604272670 919615697 576023802 644722329 133143193 757666395 736175695 924814656 594332605 899569233 159945101 217953087 791549101 839700966 810718484 935907747 488018748 782928586 318506150 486558385 721042325 860277459 567624104 901975186 393314759 973479712 285182680 557021444 958444430 964523262 287246681 569082585 149830221 619331961 68416071 496619982 757068434 829519333 250092087 425355367 953596688 992258819 912958521 942907296 858799078 959722573 325455383 981474096 820513408 828318091 398317392 766451937 311687765 771528099 46443920 541256928 702094271 779923375 375098272 480502120 613393459 832364443 786785600 980233094 486039821 955183949 836407589 889195892 574737232 652275831 858670348 865920880 61764719 900754254 584881670 987479494 680988508 747237636 64525110 638124298 155717080 893392448 479942853 942292412 871542359 911418045 485239020 591437039 148811992 188442312 660774876 848768287 989847106 996431432 122672995 888021379 421583399 705712803 44152847 857352403 592666671 735270839 556738708 912658190 714704204 779704514 744065612 889912001 701531424 704373072 1728611 443918546 323111241 596820713 990596595 991857148 14030231 993216715 375297773 458442298 624393824 698325525 870677734 901656679 42737765 154485057 495012154 554661591 46052819 399836247 345253452 859789077 6949023 118902768 762566816 989927671 853417569 941007979 287550604 320744302 885855304 974249927 195937042 781609529 25155275 951764580 165395556 902020638 16887994 453279655 444075630 714799780 117852294 586007375 727504245 763813771 98263154 122892669 322366280 720149069 458886089 863035832 229292686 245527426 752608529 815318230 694294447 966954949 440705730 842184750 246184321 953914616 644667611 968990644 451968114 739016203 759676763 981334686 544063597 547498171 190318837 819325184 589879243 653477337 355080531 557263166 741709475 870711540 595994513 646614676 815969733 874913198 549657588 728776923 122394248 717806802 171102631 554172629 713489685 822506079 208196705 593245603 621641886 846489161 121032822 992386952 392431451 866190026 708028240 816999203 339715915 735112125 78142799 888696772 413632137 582273898 864235764 924057480 328518350 350777042 860412310 982848621 259559220 935324012 793586320 846524131 890822820 978189242 804283251 816814744 489033074 841084568 54789285 991735038 139112167 651883312 574529694 601451932 946051785 998279597 652707907 764701878 403200658 711442750 345874197 900165037 290869936 831354688 545563641 844262251 934300990 983407785 517543230 995961112 767028183 977822015 957150071 964677798 31238053 603952802 888297404 936707618 698392322 734352528 740109941 787476427 137262080 962301697 866852715 909413369 115542712 925399192 145880042 977218190 114084440 367644891 667716186 865380028 199506891 256629717 491539882 758951124 941902951 998967197 422328547 424970376 641780438 872939591 269843590 794015305 159446124 712130516 120351421 316786562 357899488 362588647 102142603 741145094 610671905 839412872 202413320 205660907 995740008 995985543 976310051 977903201 54381614 470390623 156363017 263837911 61861314 510712813 130818641 630955900 830295147 914043384 825088488 920006909 708512322 798694227 196032285 828502258 136080285 907932561 331921643 392348294 953953944 956620134 943936493 960807771 829141332 900469473 499612937 959686149 482749575 777772625 691277231 967634251 444471303 771663549 778937289 928302069 878812973 897022762 689070008 746472647 435962374 860130701 81500945 756315351 606521672 722940723 229569137 671182251 158400058 212298143 41456541 526772561 94834289 779861965 896574312 970550154 587045823 821586479 782786615 829476702 126329018 513472728 922675612 999360899 475545904 984350757 76972048 722333413 303075299 444003581 85540509 150301186 504083757 827369660 847054891 890853649 109611297 933265653 414573771 865263308 375924083 505586249 505639190 701813049 645940271 785155392 467237300 655167348 107965204 251123275 15897503 336877314 818422341 965736037 860383213 975386361 173791996 286730736 876923041 961427802 267721149 820236547 512970391 641251211 596178175 840414642 318250908 366532152 182761747 185943022 487588152 971909308 271879676 499866411 936180030 990596923 873346954 925694619 398543376 859865273 273747693 998460833 684679391 785249234 752360123 810169321 141195517 741081033 553814889 759057353 18390769 854942728 397576128 684223126 13501716 239490517 43730728 534900889 637718526 847422095 655104632 880244568 119652316 414773192 983489460 988488829 966771227 989702823 512460953 549946333 457296984 847357335 775913937 866919982 804643041 992268786 644582187 919859690 681268406 747505907 951115214 990593487 595089635 817682719 193831547 646255038 977838193 994303007 34732013 805829190 172483424 917197290 134444969 813002490 11662625 723237806 973384844 974304992 350614720 691801343 638400467 814757157 33665544 740948561 103048052 230691219 74346871 595020644 954900229 983229359 690947287 862798868 785872472 921650444 172333120 331421283 191735515 895399252 402041161 746908117 739879405 818035915 739543982 821833846 83832395 950252867 753368881 809001486 989417047 995356876 311353256 753424788 952267347 993173497 116132939 883665504 993330153 993599136 561541712 902767013 473790187 502904505 121638710 614111616 102409915 713639018 248372167 741936586 490128909 688060726 357644840 777124271 56021026 734362761 230322885 368091424 560501268 928771590 180211954 689943337 815894723 914735857 641269044 685196328 778837202 950807306 705762708 779614718 710245007 916799458 344071706 456817567 25700207 870722796 731318058 881459997 315328219 892488771 984086962 991860380 286537511 329608512 42599772 988193806 793432335 898578382 331498781 933548508 329922889 461398289 178026 578146658 89313709 210214139 785504975 821089427 199332432 610136250 794277691 963190373 257188893 891278073 316538162 870511439 752263523 779681296 848774132 913039822 901771721 952525993 231138085 860931325 642086783 960492704 346264265 799740453 874512540 894820867 388422751 406125670 223941610 523285024 515761017 848530498 868308159 971082791 189225546 994096056 148690971 790034089 446526718 584687113 80994580 477399102 632252649 993166490 438889333 573812642 171926506 622339634 205859367 653054065 44765614 327949986 126609079 463428097 237059443 602648715 11741768 148149369 881707332 917218532 265386860 847151955 82637964 306264247 672341016 683881861 546686434 703647807 604290251 896185620 956173947 964022852 814954634 911606701 918283559 931058868 529691520 963398799 259027887 955066396 442916251 717320403 809160551 824783088 420606418 571703036 514082947 830977680 701087305 919459665 683891506 826381202 49140550 131855550 162080960 988351806 359043064 636143404 241020002 442956139 815333799 918638785 919408770 956794058 591249649 712078963 127394396 402800893 458554259 650545826 130944734 611724856 149432212 793885945 847020588 869279791 697436662 716311566 713281458 888707907 47284241 570329685 486051446 520081611 911195851 982568660 545802189 910427876 851723012 898993131 566637387 849826661 966102889 980005151 303702500 958468608 933540586 960846150 675904514 707782518 792284583 934510917 296884418 923736469 296322360 613257771 395582529 923004352 341737196 667993084 853464951 951109769 783652197 859963778 254127838 325516234 447917606 660887070 842748671 907142932 150537231 256479994 20896142 799993202 560008366 869692455 636847725 744118661 341834612 548942578 261537289 790635844 932977432 975898856 772728900 844819802 513614139 921135744 357160293 882680663 234910235 850034684 60375388 508905804 616591499 882277215 63688402 184784900 851511357 877371673 566247840 866353978 4828785 391892448 253506464 442022413 119679727 357489392 365218768 893637565 393458812 982764286 214388834 983309108 43540676 517251689 634910781 748081819 696089493 973222329 649204353 808014448 414252474 441957220 567457863 821235770 997157193 998926839 609546453 707839336 311937663 708004157 282919873 916224635 340670944 451795445 187779647 395923740 299175329 586564238 50078541 765595124 600433404 669805140 483669570 952632945 400785368 577110647 788635334 922571152 860936663 875988437 912059499 983690432 235002725 707770326 686456962 816776590 29213836 638128705 61445582 965376059 886198959 957919877 97468178 719837353 455826193 733866299 93429680 508278372 425245136 495784878 672638237 994158395 835755979 857750666 367964434 634988035 814943168 849214917 735235053 934242319 376375043 521110401 376198486 907911937 547378844 607746174 653474844 933849522 230620278 418870860 924946828 925044512 991179808 996757190 764336748 814749534 424654105 526046238 213271066 987293599 538248529 605969712 709483380 896725159 199606227 569875790 906857342 938669528 915511526 958443060 6918681 723660136 59995663 488971236 26873270 87965239 590574591 669434143 62452501 204565929 656022084 797805506 807784471 884893380 485828805 721767865 122590926 753533214 651945034 863882242 591863909 962105703 47001222 587966334 976263914 980118060 229683949 626718663 612271953 996316090 849377469 866079713 734390632 802165951 585462322 793348931 83453960 878690811 608460545 746421402 602922313 849114856 850513291 857209000 743307087 830493591 800397429 959711341 822623853 850722873 853091285 856374355 416835336 945691447 143199327 578249484 39515177 233517550 258760784 918974886 276129913 742284611 67211405 477347590 671911575 822934984 133978819 919290550 115786449 154381089 123987605 662679571 655750693 907056619 38050998 700642416 949203030 985109870 997242804 998721599 255398231 879291771 693596005 817877454 447686084 791888238 92953602 169252654 762007479 982838236 314965830 660307062 783315536 976620953 549155788 620474560 980909628 986210229 118850937 802379875 347736236 680806517 912170234 977421788 626366311 889800370 875128137 890411617 598353799 831071118 161326063 602237119 128155657 638132732 431722519 566975383 574329468 589180736 646680545 815865045 458099071 691217439 83924530 726004741 616351409 918755431 905051292 908023687 511708059 994427865 271506932 545546308 507218992 652205230 757304025 979733820 454657243 605636905 127308876 180472225 28221586 148441702 952648238 953988563 795621931 934353398 963533844 970479569 270553201 801066367 75667174 334514809 199691347 976796790 614136409 721577915 980052687 981993107 993084078 995014795 455214710 456781514 286914414 409810464 60203307 583875691 552925673 789892148 98470151 920885373 830389144 844945773 306797803 512364388 371878477 737336200 760539240 857072932 304934491 843603704 772620505 798991152 256692944 412422739 188743107 770252969 451117333 789932665 279172070 712987299 265872009 869916734 811161205 904667963 624214946 983258707 653310440 690895686 742784322 789139623 51775973 215706051 354026923 826099108 191415219 530373522 85317256 384624702 301663242 798309864 542734172 802406799 808972300 908666538 948380163 988833757 853127404 900384945 667347895 781770197 148971458 221062888 51235826 152853412 357938370 661181761 772875674 868868831 461907299 821150291 573843658 979888156 931009723 967099150 925042442 970562185 901061511 995810051 147518527 959214950 474158664 748200422 259443474 736505571 369269021 936423956 63329045 395955467 708700599 825686982 446240569 960975665 479439862 554866146 755114834 904681559 205991595 396072591 154713250 977794640 212972575 218666183 87422171 145793140 135810327 211547824 799303271 941400547 873953872 944380992 136948802 439273231 162340560 667956332 631669239 772735569 426034688 529032036 832614644 995903595 892731226 945143955 823824349 848907314 18749644 123380888 697303895 958876030 617746024 718130362 256494018 445355396 220302966 274376887 120217473 522004465 476667122 761160939 473085857 983816301 733825453 871894442 422517914 835100804 314442643 641955794 608593285 823458553 864239015 918210687 139497747 860357191 512816579 608698601 170763323 943458232 419876874 593415212 617280492 784210953 116115165 668488657 67707248 216557268 349069145 957697634 140906796 592600334 163328669 775508922 752116547 793398876 344804640 347462179 586586813 975289245 197401879 632222664 984913908 987992129 467057941 933408807 577841108 902561522 453261661 543473671 340289482 594667218 586320276 909104548 913228640 947673146 382930217 991412832 707952613 892796409 974308678 988749338 811904073 955762145 833339247 913518818 845751522 851420018 408631240 934554290 735556064 743730317 798959598 892104853 473820604 748916147 963728860 970254268 915613841 996524859 758422768 833111521 82553763 966145995 997876424 999836814 646701107 805158658 485218880 503087679 935775776 987924071 781121300 864404236 263009094 362403707 588089235 739818950 624573903 819068599 995071137 998175541 24524353 420166655 955303082 987589695 963555047 989829057 231134257 679349925 647463630 687330134 830934639 894233381 740283459 921772831 272296473 777854052 793584711 984556171 709832436 937836827 813748691 919153121 698201148 815204960 961676997 990969228 502530807 890143176 789594161 888148232 440265580 553482707 206280962 515103644 615988215 985380250 995500403 999068419 607792843 898753303 415295364 832881153 39557607 701843444 536020155 927095652 256810122 920496996 465658131 608901812 56640482 463260472 326608358 418599341 823886220 969318031 886150105 944492959 44876020 505200495 365755141 712422898 966925436 980822113 300999859 676957348 610564031 934403232 306670541 699868015 681558522 705995695 620658990 955664506 311341921 951585961 493183783 790444299 539817179 994527079 898696672 951181977 517273167 543476890 516319257 937426368 978265929 998966989 188556594 237315722 31973056 879582196 575112228 905045017 198116056 978591939 327009429 810521925 29224630 814050242 980958737 997727258 578489178 588673175 354324920 691441550 266108304 446575970 702889996 767975161 351706131 893739217 195920482 363288195 535600644 925643267 792712480 904676221 790729044 927048408 833160614 979700771 645245066 733390568 569157608 862336982 106929273 766666820 815072869 985120165 611136378 859147824 761152609 819664779 591328787 748224908 554258226 635858044 507557209 568111216 245180660 509036282 121506860 881986100 689935896 784353459 303726305 711351717 848527769 936910301 961942339 995498036 705947647 855008782 270703221 474595586 568552263 770903887 265322667 937340659 805275348 852249140 107151763 690141939 751902142 941456139 631527120 848765104 292604527 409896811 688785922 873807273 366808780 641896339 284202282 724541285 304491816 875664940 257763132 800975431 676931636 804260217 766188997 953861374 553478909 870990715 920319528 979283818 406441987 409792570 858349450 965208001 383500851 526591575 961031061 985544481 853255070 888134562 116389269 246217052 351917364 774704603 245312717 414666972 916864935 946068453 614764951 848416149 270955112 772973104 299876556 577745713 515652660 581158643 186869835 310996689 71082627 510840544 910251649 959940783 546421362 934059560 26299758 46960177 145933428 794532990 986739639 989922807 3639551 598944631 764967862 902123191 21514859 978676328 541778935 560671494 807717673 908339983 426783439 961250162 743306348 831120695 977927452 977981968 775985266 879125607 793924256 949985166 75365244 875680389 335007058 526483105 58413357 321585993 334127827 772474482 846140764 875246332 904349843 932442960 1905363 92644540 979418995 993434126 292845095 550366935 612888260 621623660 311043821 335784929 432485029 680808176 493960250 958023140 739210191 859773406 944069619 952170007 39765229 121581350 183192431 264540216 350321945 836777159 402542593 840578096 534598143 730550894 436791965 827754795 84676893 668464788 680416502 718031619 496572324 684194702 91339428 619602571 361898464 936954385 427167513 892867550 954149575 997741709 169907597 959579179 398519359 421934247 666686804 821576320 189215243 573175913 956841233 998223944 198900439 320570757 542232302 622061808 405136491 758666241 234115231 525124053 981676477 997228450 145715254 848541598 78800996 717575605 197386501 944300090 466736638 875955898 346991984 428923017 762413679 939784997 352008550 971931653 81745781 205918842 683108230 883959749 37023557 494019445 914366937 961025733 987858111 994526094 840463186 938132520 44300787 608095591 717484690 782259051 372801633 924091249 155952536 401436437 311031626 604110111 586710584 647166979 966941269 983473926 819399747 832894892 96464141 854533766 665792823 808375680 289070270 406648748 236857255 319702646 992959928 995796597 781118995 961811131 301552748 689745007 761468360 963578506 656789482 869654677 412581436 907280974 50310788 651681695 627965328 782782146 758372527 932569671 159181897 958191828 721323716 728626743 791944730 970448713 767582394 892441872 204794197 823547823 871715192 890958946 135134582 381961926 686961970 853477612 168636092 877526359 346773764 432540503 61908683 90805958 650945750 670611351 296622908 862144442 934465598 981722302 971140033 981855185 433428231 660604636 553845011 964987703 290435468 463172678 343705798 581435595 717773214 963599763 992212417 995201055 699308464 855769173 342833291 672611275 161843749 876050126 945164894 971510843 596242865 710733772 774658079 923048316 358367688 752509899 410238149 462250071 790754770 842296584 553822460 654752150 588709713 997790836 755293871 891375091 941413489 981945793 760080080 811932020 385356527 399289536 496079675 800355601 921809223 954688097 155426824 367976389 224720059 267852487 473790362 507627663 820984026 962861367 735961060 764454050 127395843 438410030 536473294 585831278 962059525 989553692 942344852 968570452 550263220 723904250 618012129 774583978 968282914 991740333 312073648 887438034 553178256 854447713 91528515 233277589 749813903 797555804 93409430 682827156 827864988 836397316 733680532 839151369 32228192 151414740 484537019 726159274 537695579 889506919 312574885 731716198 762659067 794658732 26139077 984887312 916918299 930557826 777413432 843730645 816345289 940569635 989064535 999553251 847890697 850016942 766838587 869090748 780095251 864624589 544263792 713338925 876277267 987331879 221716790 665876861 858441434 884489355 774934166 779183698 527530606 619541395 885828079 944234684 369203398 762231756 7282917 681054952 838931814 962085329 824481037 939846381 627316070 821522255 798929950 937097882 708276703 755819735 808458283 926770869 140801625 891827372 254734575 332041213 644637245 939935596 129990296 880262555 274790751 442565260 558647942 881784327 72352032 709785068 752271747 838282191 904712371 944234485 128783706 554407888 878032528 881627922 575780605 625402606 146678127 437313189 48506828 491195137 14898808 426814208 350440377 981132014 203539859 650499546 259318230 330787270 837271895 841519810 973588805 977380581 367141243 652590366 336984784 631468728 940018082 967313550 809368253 900004979 747621775 872738959 108533211 341327444 776510077 798099420 138277680 531738292 15495617 510464359 669260642 680067894 938168774 968868192 420694017 451343531 524162062 811377111 587969320 700847323 759348008 780057395 881144205 969458439 678320399 888490467 575919132 827793953 143277753 426235510 482130562 530709580 757688921 885798257 772643735 809220434 503330112 787056328 354571210 646529963 175136127 377064841 839920791 968133817 732096397 868307143 576624880 671591934 436111073 745284850 688945537 789972538 804632182 877813918 188039887 435921110 79763676 107946545 125649351 206200997 488925717 521781120 313613399 466997605 912443813 947283657 947470248 992339190 154095996 187911445 162310426 739258418 197072259 780252874 609252565 726425872 72325581 987529622 819668096 908948988 779509468 933685060 805653118 960275113 913641140 964677703 712267573 943523409 281115508 567201155 464352208 488315502 424281948 896333999 344820214 836836511 601457102 957583160 541635028 914872472 553064504 845814132 528711373 710987011 404907207 849964605 920625064 967314286 927292350 940018288 609265774 744294037 280897880 587798480 886948020 957152619 472320174 941273198 391062737 623004761 820764819 980538684 869144104 942578319 86672370 477228408 677515589 820477824 826487715 827422182 986283361 994331571 174907317 750615396 631988076 769842307 416362094 612273555 938005793 997417303 928167792 976181143 465795750 830821849 186427573 523971585 974705977 984681284 586282130 918369807 852062444 915997336 323272692 564361453 670090143 807228972 652069993 841725433 185602878 709826314 969752862 998184386 166635159 186992951 341520196 839937621 961272151 983708423 280636160 668152889 323796318 822514112 209884413 925966210 150094025 865848044 893343220 981113672 206800161 406905862 707297787 805908863 762428244 765194559 784904245 942219047 369887440 378992151 158979882 583805771 888436944 995538058 561020685 685088326 540974206 870819246 82492864 101246999 490751326 824681289 312881384 801888226 879988136 896702923 663256242 733999037 507972335 997488901 571031883 861445461 81344508 456069359 301198625 321708081 389053341 637997670 299446423 377547393 817931089 982420613 825559030 960840234 764682051 766689370 127174077 514324409 226782657 323573112 297845928 725864778 124791470 303291417 818405775 934776382 397060457 647899020 142900141 674167953 711538893 899657044 365262768 840577719 990955092 993381934 149816215 296190369 308626168 579401726 804447689 873523074 537028825 929915004 294480223 743255527 222264413 299850201 511743797 955056080 92428069 677280506 739798750 915119420 103098358 664783306 500757873 950004738 142784610 624070282 991600907 992741602 68500056 661798870 206180422 888146182 752291060 986114331 969438654 971264975 201841586 745452425 977739195 979613888 363511972 810295530 198841162 550354218 514688811 565126811 102047979 479725369 24393352 370190304 820070382 974533370 137065785 760328340 459769985 883389157 175641133 699965966 488739385 929135813 238671705 511141394 256465858 536865640 787842363 908929799 721537357 738937955 248775119 370594100 965772950 982798686 642982000 998930161 989813790 993800142 483922541 563226466 693864435 715585145 970542483 994545506 880198653 901188592 95070460 917399085 189289461 902877963 585390489 867218286 139310304 343953661 860261269 890038545 173936935 361202324 816982020 998275891 804140732 897995014 447191403 500260715 59534584 751299150 715274583 943196338 402926774 757071171 585082482 599713182 752809175 930997636 346556545 671821048 682842382 915487571 1308748 577219029 825035538 932245237 553302165 744504378 349426740 479569808 781560135 870099277 158364062 597423530 39254578 221414702 936121959 942074302 346054247 465128721 778016427 782558630 486558231 635408296 87022508 96460565 797801023 984689543 841847754 842313666 47680996 272114282 187204627 365881580 832178378 959282838 859704914 919118192 848996462 976912578 375958521 942146579 724643078 990981319 317903948 460728270 478374594 839435910 274888230 665405830 50174302 383954349 767482357 819588160 801427645 902233095 895216888 901270416 875952130 975572983 347524195 810481474 543378381 995549365 567926078 743212422 574207951 581819409 224475809 446812172 773339417 798126664 661173409 731025724 977929671 992263171 299394485 983580620 564533589 735476574 880635603 893063666 31983966 640521948 711720884 800459810 767666641 999301669 424016363 512216200 112537873 380256013 900962716 924780169 52223735 349229326 528021276 822210613 299826960 881506963 12038105 81724947 898068344 966883681 15813882 385146846 914191033 955638851 8499391 221564348 316904198 931822420 677291273 826632771 291326062 685294214 910386457 929316299 501420043 946614219 841181841 994243735 644614944 765919961 403006965 855139822 581529949 860268936 274220123 876222711 228664203 324382163 964928716 974249889 17072500 538449095 708943153 974104570 613580979 992546821 491813642 653825001 281888284 951905687 428580140 525452368 339625117 581665932 742589183 756392008 75754043 937398186 205996476 341733514 60975484 223934370 814145041 877768163 906176082 973024802 607642714 914470048 629785617 975679208 348223381 601939476 879606895 931770844 164360099 510303360 224254887 270835443 95085804 321799340 635248492 674823891 598693292 990908039 839706862 861337894 395820695 528442926 656644719 764058784 535549692 683154177 273369297 693770129 234073870 505701787 145845608 448698695 950075097 984422199 206330750 426404218 407406923 421120564 786651116 817782199 5893758 141960356 64859637 914394622 606810432 781920203 608501896 891450473 155087374 507323120 477123928 829267959 680836133 938492384 934619837 982710870 717448640 908820521 445203453 511899489 207883697 358866574 339220075 856719305 505181172 858780436 517455175 762222490 908479455 931563748 331316090 898234603 279697147 531905127 358749430 749883121 824946200 964289078 876258253 995425123 250196635 848856638 618039600 954365012 193693000 339669782 238887044 259509295 801069322 851657230 362886350 659610998 388783677 506730069 679493151 999946691 918706400 987002204 951021946 981814047 383361333 662274091 574207451 591752439 53678372 766674801 507132415 681552099 857364012 866953787 504668247 896642812 269927234 995852505 73945454 499249968 983826650 994828293 222648568 973576875 59136126 435099145 448510796 856350389 47377989 355656263 711656433 921821829 192578015 385415905 161997565 277383277 47833017 604328116 727707637 938834882 369643774 614148947 458091748 728257808 15356793 752181003 767470345 988172952 772406080 981166279 743086043 992084130 879511806 950357175 605256861 954519341 842280422 950712407 957409547 969467362 106575194 516421314 336533317 521873449 818435436 822954819 66346882 900833095 732716742 983113987 641196548 711649797 233699793 486273366 338357522 878063462 406520426 767494250 825672734 902337137 923130704 953411648 942025766 948139842 654352549 684304363 681048530 964749572 678567264 694641609 180623777 238622924 397462696 601181196 17608319 216991347 92393903 910528512 511707124 618475017 279337482 463765189 656025702 910686624 285638606 594490645 787096498 827739979 905120809 984129989 572616819 839908442 722540328 753193092 287141458 865459818 549191478 864858147 116185254 138911106 930288710 967158247 820104788 857081200 800569113 985426487 36139755 778152978 319800373 385208422 135569223 662480485 867900947 964538782 113375201 397771085 385587517 653258533 308444462 387646990 743646803 921656580 384382843 440769097 378772556 992388917 265970582 816126935 182928088 854093734 701577619 994567571 238439502 836485754 774065599 910881483 160449019 696744529 373502806 560157797 874684559 995647340 20561816 515847346 956470634 971101330 378024066 493662432 979365765 987599485 719103118 908571242 904080774 979203012 142126748 638111409 246369285 338698887 360018956 414899722 9336782 798834055 156716878 844104051 549609343 728848463 346347233 789748718 896319124 993579437 230210861 269918869 215863838 787170898 383805838 576592029 39542449 428110970 951622378 959146880 99196573 176627923 546307503 764134410 584419644 861748924 699266197 751231796 918080256 990413865 269441067 494775654 797736631 862376031 289742128 962907358 88756654 626596879 384763684 574319887 827258455 954148052 8311083 105568537 306048187 990561366 180820196 378282384 458973038 972151172 486176977 548320247 968015220 989789932 483947142 755808474 600282817 693704279 432319533 634369752 875831859 959037493 538235497 940928785 725905203 813686105 33174090 746098482 553386279 851942188 134106854 274144868 452535977 488920329 322791662 335175567 437637877 716786333 751938028 902074821 202493063 708822250 193285299 481604357 711116092 845593688 186208966 401540529 519472656 587059741 370574136 383368247 750448314 787698313 562688474 899377273 408373129 422525419 902087212 968368122 958451295 993124831 201994286 323361555 599564441 924410280 150684089 707803416 46329358 122995102 524351211 565428885 975588927 999896031 94338390 725214996 738001919 889861726 765335337 956693216 177314763 846397118 22382893 615515449 140789904 251980107 254478292 785937019 175451109 847305076 447613626 621850907 752450155 892383780 947092458 990805571 638825054 702403033 418613096 609005763 287099307 346864361 112768428 517615721 251775757 667117467 923271641 989700633 385560708 941315834 437735814 769299693 374735564 496831910 395937913 499947372 564793117 639690720 543213540 706347225 273545853 778502415 663953545 948506299 901158368 947272191 165998594 173901412 717139156 812934080 339885154 661143317 4132469 272276297 504374887 526895394 834839871 966091721 102098938 988471800 92725896 700279398 314710217 744888038 75420820 767397621 382637891 393708610 676406878 774030512 381289070 526089607 525396057 703000698 928359098 933156662 913277447 975474100 342068277 391930249 221334644 869343091 3020444 191762412 943113268 948032938 996858365 997458025 247576770 660906665 835787668 968045331 619558875 730183625 32375231 532803941 585199039 885927736 899469540 939834222 229503099 474052000 291322472 468845286 108611682 666860750 854196782 873826185 905497523 906495453 392962204 775972943 171986179 867577344 7878561 677036835 932003780 981186530 944379841 956561292 544220632 675870510 690225247 997286400 702553729 940153181 329536304 609538131 664073102 983622614 76811895 466818300 824210259 990574940 205168872 807183688 22092750 104977547 417353641 732326583 117618017 197348511 478597029 949843117 789532315 832994203 1870216 525568888 112900403 426414606 804223635 871405184 172397731 273054900 738024884 956918488 564954596 588692077 874445609 923058214 255956060 361203686 738481611 750037354 587538720 624796926 945356005 993645730 593812186 951870930 947915835 967263424 245412474 984256728 812493949 887170075 579248034 935538875 345583462 483982049 766574834 770232485 767237830 989515353 528688749 744716302 667606977 893586747 108953916 286562150 969639928 988518379 553656429 948465477 547643534 964524321 768069158 868092778 703909372 755333959 341074437 807701316 553421692 608987638 79790564 118796374 191990974 311253788 85028781 92879788 78981482 204328516 20084015 853189783 948866276 965085280 414614255 514992661 65060644 438097836 432421711 494587768 756863408 849807950 121869915 873227350 212885755 224254938 393064104 427060209 373277607 448747499 686194326 963069699 849870673 895661769 956784189 985390408 893950632 916706512 100291651 213237921 299228222 873464916 948520529 956842777 718454918 875892905 467394041 942714547 996733770 999506286 597928320 799960921 240796054 814713815 227040751 643060517 874551332 985742139 413479821 559701718 60363184 230961303 317855624 579013398 5018819 628455554 399640766 886149760 397100465 499912613 590802280 926130411 390919860 464264173 294252842 468366786 972715433 974168119 191000879 619281279 732265925 922892612 215785751 285893702 333534748 652731998 185542775 569038528 112844081 298366191 246293681 986183371 125275162 995285631 372922750 522435761 939769170 958086041 767836041 998242897 893611569 964120086 716148251 902204723 168971346 548711467 240133829 952974350 983386469 992844453 327393004 361985826 625377539 669501816 953514138 999395979 563012999 611460631 13138201 640642337 462175174 542966516 744131855 921892563 18316718 975066233 958878921 973213262 555943998 578327879 400373459 688228671 122182202 143316378 644847381 747016953 633894989 781873160 200941089 415987283 273659902 292281103 380500746 873929306 213137561 390607000 231180928 337161235 229901931 828907470 593342934 837768463 487281597 705790153 134751325 648505311 893266100 906111834 565474417 828409030 390756479 922580553 441111904 987825598 56550701 602462462 98831193 640617583 987198954 988578931 26069293 800119837 483241116 694342746 580614059 596625131 488131030 848213231 279986194 599715844 873909233 930202880 559189174 865953986 749530585 988530891 972671489 989936510 578780543 697520584 532209612 837732057 985785867 992145157 415831796 727808901 601458938 941823958 798052329 998884601 250022823 254391194 923817970 994467594 796768773 910859998 242448167 439890240 330629492 565885242 754219133 815292632 769439593 958823010 617488564 896498174 393077653 860456101 238066868 928868837 838128517 984602294 891537199 967072292 641861639 997910850 369714672 662982434 113011884 532710416 767610390 845252574 784845334 928363640 37633852 549552243 520780447 782333786 299803856 556194865 965165671 986166037 153239651 204076754 78612974 190962627 919223842 932822117 680292379 776069444 521857592 790248383 106125648 896531606 523395300 727096298 259328282 420386291 85562362 440283934 9416091 964096067 190892426 324410258 418738056 582648028 364000579 980658397 571672533 615972081 440267792 863506867 846075580 886042669 43990721 821968680 610378595 695599241 464231826 675768500 37887594 822039994 244611431 489099015 540798290 608017197 306048545 985168832 501904650 599729050 384639168 748717218 861824877 883253427 383307934 473909048 902831128 943149944 523097047 644877195 38346884 596685595 540667071 844713621 691808800 995711269 989908120 990893500 234526902 592360103 413717279 415021655 76768950 911893893 194447748 650909702 672171968 730818742 988718702 995230380 383296018 609934313 614338020 656750555 576069020 946630439 699717852 818279288 799208560 859784769 224140872 893245243 789640948 815974028 406616621 964399039 121488381 818232886 825545727 933450992 364978346 553882530 959577785 973807869 905108260 934414209 91680515 685169140 106409112 996533265 641266975 769421626 496091455 949080570 925793101 974712967 259719555 941221819 314042168 425233009 177066457 961602107 164915844 604248502 216570365 960766048 693552147 964584478 340948219 443101187 111248223 173515823 359043042 874672137 824218796 869642066 893840706 947478592 276366217 876399029 322407884 359966774 882437455 891390866 531875604 569259976 998978660 999078628 926576204 997577856 737741337 945017214 634430181 732039946 952359727 981457980 464868225 579539521 680166364 687925780 236989001 372330825 541128317 840229985 416396830 755014785 634458923 636390970 331825327 979263279 477971539 634055490 917346920 937909355 930924422 949549261 65493745 547306196 464784736 938697969 622970295 873056112 450323474 787940110 629359458 971751081 72120664 186979825 343437488 510358171 618188150 671681312 996475044 998582825 667721312 762004116 596041727 633399313 483335 804156267 667907066 738979015 297688721 411817872 910342903 956190319 522076791 769851273 565918777 985605978 829457602 959633244 823046512 854274355 175756881 298941888 488644447 832937619 836282102 971220277 770904563 796236619 6352721 124730037 705696282 941232762 689771914 819561911 795845200 938517248 58569194 527961029 299976104 783746912 44896796 58273896 302500532 576941237 509424961 716701473 708082920 888834491 118971375 687341015 437981773 752883794 127362441 574287163 711398224 731580931 372511185 632341892 619871264 950158500 860177852 995365525 262735683 882659245 664817777 968290601 648849164 867117089 471290611 861693000 854482850 889700307 980106299 985704392 119763247 483521157 776157662 794559775 372684722 943532220 398347204 775781406 898099944 952944865 974911932 979002996 692477994 700547097 56779009 448339537 2469029 632966825 257424068 847215900 550795604 768369779 927670901 951266303 729120821 738479214 15831519 98920449 334269676 572860031 928099036 952178706 930018268 966279025 615677625 955097503 518768624 601266852 961159014 968666410 294935253 962274469 486318333 610485358 954750120 974188624 85465856 506046017 739719844 874882140 549819638 984438198 967854018 988769171 631010595 909167177 723112271 860905409 626436143 747916083 342046956 764914785 678552930 820403118 932621439 987029742 932071816 953114507 794182725 936730085 298313341 498987135 869720444 925586007 158005958 770102148 294473659 693779348 177633801 542229206 324126094 899212094 591178291 880077537 728344869 996589545 174403506 245949766 884592426 928046204 575406773 776784541 793994010 984571564 613178557 692124635 365685810 455497984 103719112 917067651 137626366 219978700 963386332 966829953 255140562 595313679 113678394 797053334 318815780 606358510 330896656 412673121 919832513 956282014 160369789 178096021 69704589 609997336 488378081 956236478 976460552 990569177 981951186 988069243 422601726 685167417 32793421 916303030 340818580 424142127 461613697 967749526 960205584 995841371 226066331 708970457 678640526 923667451 967466133 990525486 973836809 992202526 194336402 763417173 605811534 639500255 917066110 930737679 235468899 873098459 896191696 969939501 132660568 993720054 472523866 616559081 38394094 245616062 66252730 170824354 729388508 982305872 915044362 969115309 858310414 942575777 785295876 972997953 235313955 591195248 808978889 835617342 583724339 883549358 22388888 659308035 28698859 41775837 871342948 952190848 288543027 785297281 499838069 956340359 819532441 946949213 698798375 946545900 752127340 794338567 770099223 981243554 256962560 575925353 140470733 292574167 650631748 740629621 742257038 865925183 493123185 540908131 473811081 741216987 730114460 952431266 763758763 909330065 54751124 359842311 519247221 760869735 870141957 927602477 361024628 832177940 903192076 979127853 524808894 852262802 192166215 573929295 426254527 593616220 52244167 241442092 81790763 213332921 962661566 988331254 58291683 515953787 451737050 468559071 542947019 653263599 89430193 740232202 164586078 444076667 578351990 737782570 156476310 450077288 132526669 540071086 768997751 873959994 404987394 465722990 904483546 931484501 785271019 840475059 515439165 751099156 338452884 813547647 72160518 750005296 766851694 925562182 774074755 959911375 230637180 310191747 526795560 755539577 840729724 874380614 795468331 835914245 310520446 757658690 525177335 985887619 379241776 537518063 917969336 997052277 910907152 981534522 501924029 864895281 151722844 301706284 756662513 986384954 655688897 948327472 299385539 370121804 718053976 899655607 208153535 510453039 62853769 703858836 928395163 998005939 208990689 716497973 201061988 352350511 726432938 994489829 909912376 980687575 866276909 931762428 660955154 977314722 872100863 982729644 352147884 907713905 525077785 606113894 216991821 774757643 686452497 694715895 997569415 998596879 302795146 775073786 638223220 987584599 451372535 886844339 862427164 996832246 989130122 991957182 275709004 853612249 637559724 983622576 200418689 830188313 949010180 978534110 654643827 722264647 117801228 546594682 740525166 999458133 828138338 937199896 701275720 917915313 25053570 705224436 257529894 370708247 44518609 975302595 847644294 959489244 604993288 936467712 389621255 811548499 851734023 856559562 225587511 513031287 280472703 627517784 510863256 583988762 136148093 867189470 915724287 977303728 825146836 933008130 703791444 807571475 612028798 949170868 821598883 902380307 872005539 969269116 511191143 841935998 257720737 352672704 846961668 928551821 356073266 689783314 273060997 297490045 605433592 691073436 657956722 819053731 924307067 958151551 230659192 570899168 76367321 228905661 355001198 487033110 767654867 981764267 534512126 736801088 92874664 603597283 729187968 769147192 943368150 998667916 74178391 221237121 648935786 846466454 653741733 857559645 997489407 997526199 760883201 901121961 822335849 965438256 888452114 905510782 638564609 662326017 697482470 745444707 561488926 988181378 70922197 179092120 524103021 902865512 766816342 779918459 154565127 905594284 734755239 892070551 36234314 526013246 460549744 847841865 806666228 996138301 742982842 853443912 190507721 985202455 531204357 781236971 493663175 884837331 840882467 915921273 344989898 987440871 56884785 259305207 467139006 745847719 109015091 699655804 960100066 978754558 251549127 382916637 757507251 964009015 549133889 754402146 62352816 470116822 313557444 539574582 123875787 160434326 893403617 955638264 12087939 207989063 969279411 971138236 949876911 960180161 763913402 952423390 17008236 339237145 280631452 639905926 4972104 774143794 826135383 910596984 287211750 654446657 10436878 748268025 390825283 494816765 237448250 613501316 528427891 970238611 516815229 790269186 690800327 722867970 736495741 902522979 751599504 774744833 391854298 658451774 856135031 884664990 311992488 607334621 522171163 650965229 333917552 368038220 828256712 885021936 466668377 779637175 8631656 818331513 583716556 890959616 745469869 840232535 22808961 449364142 35276803 593195245 473003155 903387189 806774080 860389692 714020002 832639247 870821666 999618969 281841029 508321014 155529913 792526352 855533886 892540119 559756029 940098064 511481842 770931621 576649697 608712320 727707814 809534027 904028283 910982156 670329252 989398311 247972116 312602931 549782869 596505743 907869269 948155269 36231315 244568071 551347480 756960940 984107997 986379279 579667751 847716416 960046735 998876814 256911069 599776172 754180529 774095834 530079918 656395592 583244595 855436804 827703623 832502818 959396808 969849254 442755590 475087089 891481874 906119870 143947515 402208821 891536591 969568087 180448039 302095115 374539967 883681866 573781862 611300096 476741955 695134190 588288123 739279294 29753908 622507021 956507824 972894072 722943082 857372449 991087525 994360364 825422542 900590350 73762930 200155490 200723493 894758642 755729760 963363026 937073166 973235024 492676302 502646739 776573604 857493339 70614981 603638542 191957353 815431575 854230095 971158447 922598994 978700747 117462245 840937087 457853984 829429670 538529661 750072725 368606796 572570734 712104966 863496501 788616610 920924707 612116026 751752773 103154156 602797004 978220961 993584564 60511108 988239696 593682803 888623531 181941171 316529056 754579444 918340849 738597451 789714023 120425579 824876817 481692122 859690970 331607760 925214774 218230376 635440695 757280615 776886816 922629055 993916858 985799310 994873838 384871160 881519622 830040963 944975616 263155602 634453077 257223126 551413572 395437978 956195392 35350520 902754629 83061302 666982132 286299612 800641489 966181921 974275085 954050870 988429004 881899930 891925199 25430183 791258267 244589871 511690361 332893515 333830620 971862849 991014297 796648720 949872781 925594131 983825739 901481816 989432564 118997564 939198800 742790050 947653282 178661440 640400973 869239769 993772299 273299344 499783216 686202361 857343068 318410501 706563786 57875206 204429984 437843355 808037231 828461428 880015247 867045029 897379653 756506687 833497498 388839143 519717806 25717055 292512187 958139305 967708784 354657625 523039513 586004365 655380705 65760381 951692858 421150058 830504237 686422206 846526436 171928673 392352339 75107472 552562653 805285609 900884223 108703770 946786032 39425670 195097786 295123312 895795521 313886231 824843948 5149240 119947567 849750341 887612578 97974700 807469727 935900327 957840077 968869025 981284085 395474105 875392095 610534945 984207541 899605190 963922989 343978808 842828660 842692525 853373911 92782426 362503444 144021102 383308952 169145396 674038274 257054239 913644338 348616275 624357965 823215753 979902232 973209238 980434548 27960744 301652919 750232082 789739217 524572352 572361740 688827837 914938785 644663519 676229100 309550848 320697340 651499547 908726599 893584031 975627568 625550018 689788259 856333253 910684665 167084404 733601662 419753782 807346256 372578453 481728246 754405184 905637803 30757706 688070419 201260730 732307669 496711505 998312978 572883732 621865263 678333071 788205156 914822837 971663139 456818 304066926 496511165 502705166 975578679 980872788 352074306 896898764 782833929 810703640 797929159 882924435 268241807 694638519 293824441 661164381 68245282 625462646 739527282 836528073 128209996 449433274 421959760 618597436 665678511 942732031 571911891 980024604 75683692 462011523 903892982 915203206 244336894 455343311 562174264 973186298 333005575 718895487 827235884 928410095 254130579 626353461 961862213 970606647 511572747 756737570 167478462 436029772 653664656 866070102 349218208 561944128 435291034 761456373 28841386 392266476 670497594 979595757 61457124 733465603 216858107 604684595 752113264 855397166 576149018 676321292 453572694 459225287 839947916 969974239 10651422 157109219 801395321 986023318 145076250 944199473 332704043 833698832 195667528 946012864 287924427 541080809 451005373 488120261 820733349 825760320 436882400 643485384 562654763 601734639 48028088 283545504 233551838 954890617 220896985 242928558 882196921 921592469 713971466 954801447 413736055 716162675 606486570 950883381 177488114 838006606 734082628 832500456 384565223 893042628 319035042 787845656 831489313 854563578 38459903 323404218 113008935 580304147 224347578 892874322 711110251 733979024 499852337 878985191 98046965 812963411 937711153 942222866 832738713 868883423 340496470 810896523 47237753 690385431 87933585 95778734 903012390 996072841 856743616 978555664 753849017 815372756 967901086 995810729 551422131 788492159 668634520 948204445 411039081 578531150 616287214 949802159 483755042 530863210 396790576 660463277 324024027 473862699 483411992 710779330 300327095 949162658 201071541 938399028 993480496 996829075 891652866 979061613 474771739 844095462 792568021 848716533 421088109 457212508 834255418 893592566 971518083 978911632 733055389 806324971 860735346 993338944 966016771 970868890 80417077 137761138 186637264 601814683 325192537 908851028 346943500 812455926 446008158 834189703 186528885 786254341 777721525 956330161 993131990 995029186 765960417 907344888 505853028 658940360 136397901 198835262 110774215 582124225 243922382 733103072 407934638 412711861 844324358 999492260 448959938 862567405 618620436 619599107 274026521 873098432 630442910 668254165 715320434 822076813 750695477 922275100 734078256 925869902 489494423 803137139 179102360 230402042 42760338 416098907 64355880 524881502 326699861 406462571 993190600 997722056 979170099 989130631 775699011 880967188 301301318 964969873 717493888 795979920 542205517 820819138 492181230 926363951 77846707 147756716 49670653 973150858 467497280 954742018 505399402 842470141 645361090 732594041 887432343 963671546 367398858 972275064 169711703 868402555 772136271 844900642 91005453 419522424 610124023 749618433 89130093 623598731 226988081 579914200 963267081 995311892 370990446 839059690 863559977 946658138 712504141 955221652 709509769 912336128 358272864 993892975 676809600 832964562 50224990 896395109 550315919 937756167 319155117 553909946 35086773 539931813 496075683 543092040 285763158 868835198 986343355 996698893 486578145 920957738 164309376 828509306 310032792 656642356 480973082 509540806 433218911 650372637 568869287 698767133 233164237 772455707 704022249 814292054 618051610 811217510 435280256 779146888 872001903 954368139 39863768 99416088 122498203 723259383 41887483 438346354 278828481 298240962 807399500 979397617 701144883 858047074 60252861 734767607 451225999 543231543 452453875 732745113 421711851 890378572 60246223 925444778 236507510 819764574 650904226 995888252 47559714 307881041 121014242 600761821 447963650 557207891 351179210 858310267 318785787 735812725 114439311 315829293 523888969 972383711 564602193 838553386 69502525 519225084 73703634 484935295 225771805 850074694 194069693 999022697 702278861 707874315 132730420 841934444 903279574 962817745 208271842 811298259 479762881 968712670 363486031 644156182 333560728 566258055 720614730 938744665 853101894 857514290 293610146 938671240 156099715 238802962 292886636 350460827 68747893 729221560 264646395 497451255 42816929 675577194 651009219 696924894 614675517 668877345 517748655 564150038 124465269 383057631 668731137 903609205 457275554 654770255 505280657 831223307 988784114 991597405 895675877 937072966 517950623 719974204 859176034 908093223 632784371 913067359 724413979 872215731 379526636 449481109 45516958 82497266 748459298 855140891 908177588 998603002 249157718 892721304 763000969 969187773 30966937 921598019 797544697 902414442 211728269 802618485 680742765 974292164 236569371 690973738 342349325 369481044 685203454 818663448 937838248 975062076 437295083 857647181 751094254 857197211 708006168 938656543 691122406 775274652 561341521 810816156 452025971 534828098 376543316 929481924 984619403 984723308 682388592 901605450 725362419 986619170 148687980 447337427 167253624 715293303 921254315 974161228 23910313 507118285 817357437 962970610 117168497 736601590 961765640 962681730 957198172 985921582 457434396 723756217 238164146 342259756 92496997 128261726 637769143 653793515 517331130 630881903 997442616 999038079 688989425 702254517 494575369 974420258 363867978 949558017 446183258 635123309 269771841 745750982 879959965 900245559 703158501 852746601 66600149 893896204 371286113 767923160 261143138 559468817 38077355 992818128 286929919 821184145 482888784 797347994 254108015 910526976 271346163 898665993 256167321 942663901 602517586 997207335 191038040 928478319 694855684 865030091 894634893 951219416 672388031 709699062 889485474 959704474 557301022 709794710 721282686 763678395 491076439 712251234 433122908 479683601 477172571 480961567 481207341 941405434 50656508 84547474 4232500 954922857 732931597 950189851 425116934 547658051 410150434 626510966 333820885 638452641 252993991 547521554 318207193 699380000 448084234 959454140 951755386 999989967 659210369 715637075 481311673 876508133 10521948 126768055 555471963 685922460 868575544 967395392 487683048 765356451 27915467 55985874 652713137 664634226 720050931 924595007 141421438 547749130 609957164 916245723 68569649 922356477 237661506 682343653 809855053 946487317 76249878 94858447 372113697 858683414 281121855 613171900 970362798 974648536 862792069 883329452 173066477 406830384 579768048 752200700 957549880 982706185 261014987 849595743 535328377 723486685 995360581 997690418 985118697 990690836 299259461 981142381 341589888 951246597 136278627 636819275 784158321 987574729 164716773 577021600 385043430 674237479 744082513 939076403 456161097 582236631 760127114 909742151 408347164 646937903 875404460 973761910 302786696 742031598 574404959 879190736 424282787 548224704 794578873 919022727 323366617 517233685 835438704 961361047 665330813 806816201 648847897 998266574 325451323 485294192 961700892 985017404 318581809 619584565 494265463 921818956 841922098 923179330 392775660 797285351 318468772 359081441 963525237 981889526 837180754 921918248 743173183 761882184 140156044 145021242 148608930 186538606 30332850 905147743 272925531 812055045 51841490 891468013 371753148 775194141 873386389 945411126 55665101 819979763 175637962 682765510 5763335 630208057 146408536 575747142 908185718 970789075 242872101 269695728 879127076 898190825 627820104 917266044 523668669 763601424 251777951 690082464 943534704 974360854 427161583 697507626 260645134 991955786 532460311 992906469 633285722 914086349 754138059 960769028 420190579 910686867 937119746 965913645 260183517 826991954 45903741 818952328 485285250 998633509 434646863 620634027 240449672 511331700 803567412 875202080 690647868 846161438 768765477 901234383 772928183 780883975 990798747 997898043 462833402 704332892 109504680 519526897 372806304 897677747 407532252 977452580 979132255 982177885 695002689 893089058 387812487 882331014 124740133 909610244 417735602 598123611 945985148 986190111 784164777 834068717 81058019 805522805 829561249 914837079 964090573 966826097 368259376 654605389 139865606 432015571 452268796 773944997 923529902 999072966 445086422 559634754 594032354 786564768 210252687 604147361 925138381 942375935 488158497 570815626 758975703 910188119 991193110 993878110 155696304 887852016 721204708 844980115 384648799 890251578 997606587 999149345 938398241 990871155 613273674 655113060 324471938 502674924 327445240 854430735 838104984 913361494 113799493 746033879 998336524 999875862 137620236 329998827 189278073 526127073 958500485 964891361 341878287 833422848 28469946 866722103 501869641 641145947 994985645 998813478 615690436 868143233 103067414 699486104 959040342 973863535 886385842 936526037 219676873 963887621 900254772 983383794 915738364 942698002 242892829 716712398 202253041 851161033 193252968 612930439 726945720 963458751 129480412 172465065 663753839 942544577 500349036 942369316 60150053 208512882 258885788 933051435 78226410 884936514 466091261 899475742 215606126 390344546 205874670 911673666 723645122 937373601 772106416 809998448 904039263 974099495 923296606 990783541 90616921 331792699 686413912 700110093 561436949 710395630 475573059 740055268 918138717 950122257 187690857 712065274 466550544 529439782 727422911 768427404 912364788 964678006 681543456 978424534 45549889 58554505 430517815 936472643 521874503 938559764 609865654 787964278 871680940 978599704 579657733 876326069 241892348 478585897 125081560 207678335 456567739 999981266 136148664 191982773 424651224 539667598 349180390 360143689 310811974 537664911 810105737 969620818 163081910 570847910 603456330 780621953 15600919 874850165 807028828 958645764 303177789 976899442 778628769 840706297 761007816 917539451 513269971 807835205 792036320 832662982 75028882 944802878 761893797 980747283 702305270 746480561 143153041 265079806 336102782 617123245 333186703 407093954 408064723 639824364 800847623 901824265 776025678 919310684 405869647 613212373 938249531 967787041 363354693 557384176 269402513 423406602 449061530 535545984 7972138 699071419 74709337 160978206 182235057 217518759 386085141 508809185 3395988 379052678 726966061 850137693 408227376 974931498 998003561 999694375 699250800 952481741 830128462 831211002 578125353 852695593 464022889 866764431 66240781 397487736 44601141 867360805 708055708 795259388 925923930 998769446 902469975 967441881 506271089 976531371 895192368 925345220 603812837 873166832 842788775 903356676 261421471 274092454 258948831 430494552 480378161 546486022 374184344 440553355 868772307 942579827 880120892 970027871 119093235 482282041 412350274 985439473 765782307 873623820 349532721 878155505 360206623 509135789 661092068 908123611 970989133 998929865 42980751 931934305 494400835 843017466 289370864 538185076 824347592 932562622 320783259 595470176 559487920 575672908 853971563 893783635 510355425 836055750 47193464 453172593 444246103 929651274 126306022 476112469 358459728 653720837 801102378 878713391 165119299 622372364 860849611 934308314 760906778 836653078 609915810 929883548 72848415 571207275 149357729 850467083 10260165 474063910 68372621 735290110 870617805 979482624 903790108 947197596 167427122 595809776 468030599 930636019 344270398 426762806 255172793 721646901 411406987 607757777 388205695 774853882 40421941 969908351 587743793 823164107 475849614 759587289 690805392 720372705 708707261 748704923 645542633 819724452 175916392 207802917 752247770 754589732 790703902 805241270 682812191 943447684 707805802 833881336 560161655 786030471 603160953 886950143 509182468 599336921 411052585 766745281 99076004 811787007 585711974 968262132 537541701 975345998 133638107 948705542 820361489 953180821 390664975 951078164 520006734 734980766 334779055 407573673 306734857 962268830 449023010 550426765 17112349 895201743 310870260 524194691 375985174 944901271 156416776 306236725 56853283 388332171 957329896 968451083 162573111 387765826 668760176 696809812 982686446 985040282 615281092 936784458 37179992 81004867 769980760 850804983 843219461 981532753 966327729 990782417 19408631 135046323 783907125 984794905 691383931 699882277 139798291 900424204 140208527 193888350 959957432 980952215 827537071 863458111 301607592 973644939 160011933 742731667 997145871 997236596 65370969 473693600 679347345 831331376 799904712 963825013 208436645 568393607 236321370 528824117 129306758 321943883 577610435 794815703 21217993 947137261 67446669 650457284 638800431 810184385 890214320 931943083 157207739 185941291 668867085 687313294 936301971 939071178 238862928 890183856 257333783 612932102 785769476 919100420 698296282 732552028 97802235 455823570 233768160 600528690 279697524 497122871 342687604 630142728 50371531 579762957 264116062 916958217 838788853 844107006 780305701 921719661 649034029 670736231 612804286 690640489 433955144 762194746 351470943 918630687 533325938 702690733 654934656 770802890 887877483 990079609 236819668 791656779 751317318 803980498 504859716 870025634 822216442 957159201 303031296 685168140 251375130 772513422 809257531 834535717 617688488 805038020 214535806 300225125 504410735 779934528 878121583 908682889 212596539 213609971 589927180 779032289 693523965 859190768 354658465 659413212 462135839 749278654 980277739 985365229 237673027 920569877 125950193 590504410 687801222 901158755 499576899 582180416 861248479 962446182 677013768 863493572 909886132 931287964 203764952 914024079 826686666 910384499 718600417 817560866 943654154 980869653 998049804 999979827 960965606 997067455 558031881 794198740 670638257 744685844 255203587 843785772 542610827 701532468 942489322 985766752 957682957 959504144 76917026 330294786 569892622 787808565 378092787 951715788 483667071 775038472 6984354 501435840 725796056 983400099 343878776 381411782 107137312 771236941 668955149 938145763 807380381 901473920 924779347 974526496 857089996 865413750 926887515 988800981 288151216 791793492 631333827 789689888 145350786 773988678 395211808 599006480 275645913 984204230 312452544 460772385 43991195 581908237 10727193 701952350 146099108 824172997 644971165 978493318 264643562 554294299 910803936 914023188 986273093 990340305 601028492 816805789 99574272 773122019 949748649 985454865 872970731 909363574 45862637 400155270 783179469 929250215 930001421 992481450 545632286 607715908 449774720 471265500 625340679 779061743 408908745 999930365 661677319 743305816 65149226 106825225 87653868 260761155 305612131 514020066 531329540 890287645 347750847 404295855 809999147 862138061 95944068 133447266 140952405 251780511 731706217 836097071 435760396 851064971 541458800 929692054 495371196 507933231 305554149 374728620 625251008 994177528 266423254 513087410 650874496 866573267 713789747 993484372 448601406 958261822 867820125 912190060 788097613 836790487 14497948 985435653 612101497 797626981 755157305 969308212 218656166 344633987 938555164 962511844 491589893 498449660 344704316 508878889 603660557 757216051 603447905 933393542 683260310 951432993 792021020 978898633 926553659 947646568 345063319 639891380 919338235 988852648 627722304 681606785 981800247 990507248 20525485 820123407 686975976 989960895 795752178 953521125 441919468 960114148 655540929 839965857 15701813 627326406 627890571 733862443 756756679 759809373 143977832 386314727 693072516 799999305 783575281 877282104 653509641 800647779 59122042 100981499 889795422 981273554 763247489 842182966 458617832 665222832 417251094 721328385 217409240 743895554 262005466 549534994 658631417 872019312 786036406 871554920 761929638 784409279 701255044 744530120 671536158 801084401 434232005 462901875 363904879 748481407 882848792 986183922 898684066 918520829 918449077 999377908 330455928 969387288 36555079 468868827 733674791 866724004 488552269 793670998 195570374 373661376 927156659 971297609 280949715 504767173 545585484 724640620 213424141 572330172 663219907 708311313 889032600 901303608 432692586 549637979 808330622 897810370 27817071 98681320 539399291 749245539 496138098 656381842 628363144 798401617 412507607 665310345 112256608 786561887 869384771 942611300 220611532 482887858 590615289 962466303 607233844 699966936 786713030 895061035 782472155 875636659 762447948 930025501 49754281 982528722 462744560 969810204 210535783 543196227 280104062 401688345 58549057 489896841 307027768 475774210 774574731 988025823 374414077 557875093 887819130 936621821 407219933 914165824 586530065 938973222 690631714 831153982 499643444 601660737 418766983 715660821 339510773 393102123 818130450 998953551 162962079 781886559 518024698 722672537 936379061 944339287 596214091 923626997 265964560 679098145 335896416 809177040 405468635 416622435 949531078 950114151 633799115 873546469 10506941 471307381 951946223 964545747 605586363 688161607 822696792 859658747 964771059 972641917 376924522 961976201 336119047 678733477 318767764 995526716 665704735 691782728 276968563 782448995 502018499 728569698 965941588 967183582 611213260 739917511 951638644 998479643 827488429 932950300 951012825 959077923 275053213 277849406 282099619 983981035 493813064 714265034 651302179 872173517 747695947 830660873 909036757 996454010 926867533 928154026 655282448 752918235 943529213 971160257 339475659 422137723 495886951 975832529 963527786 997979529 920398624 956105020 298025130 699494029 924729917 986412836 599138905 931478882 887775256 946894987 964216281 981376399 270793450 726287249 668848027 848309263 568885064 884165036 525264215 585606159 650513117 852675854 977745240 978342329 910466005 988963797 761069063 788895506 937264745 970271752 865267567 949776561 772294608 926432453 374075708 961897662 994265452 994605995 147328506 893293147 287312607 322862637 822247413 853505248 470126617 736651437 369896412 980295246 454257588 851489419 595345492 840166018 133059602 814561701 731475602 972758432 75692424 708129869 635348873 949538821 490765859 878085482 648191946 884737551 591694712 745162982 513424736 911734852 851622990 922128538 85405816 323229333 386349985 697157819 219220231 436235700 793855660 941561074 922313762 997178488 273667314 541057296 122257342 855593756 246606284 499567016 310425136 315612880 116617816 853880183 581284409 815667281 40934678 303019097 692420175 723224938 908031389 926400202 663196936 798450115 137177555 959515759 679610990 725920177 403881647 931866638 118237715 703441876 471135482 532126113 61883827 226722731 876346427 983255494 124664187 493712145 487475261 810255934 530400485 989099235 725153254 745863398 551162293 750643775 574267494 636025305 674689325 908744726 149837607 351223955 135587217 173235539 360451105 827917683 584974614 887528841 129358083 143133002 17078131 817122219 258380248 989646051 599764956 735731828 108829140 378002102 180254029 998836679 299621550 819460597 819011918 948980762 591376530 839574325 557860897 639166659 975868332 986701500 478568055 711869139 479213577 529855756 22867990 318233404 371422122 551744473 144111286 668704320 316545273 787576233 792038349 902387854 437729512 560992563 982523205 984447249 759504623 960937986 262552450 567231932 10940856 329931879 629482890 897480780 977164685 993675592 373634985 785518125 211513333 636885530 542397628 553150597 535009923 665365955 663357324 934572526 422890064 989063849 162537260 298799411 342986002 951579808 683482845 807078238 532772884 618716490 940350889 999901105 826717710 856413876 114644789 439752076 747137968 986113237 323432471 980584161 561559587 593998848 350199382 489786028 455934715 562085366 917081172 996907197 681644411 747800922 965075802 976339220 984263060 985039309 800299747 985583423 784962030 919916820 592928344 597889531 905953255 951662030 40311780 441895913 202041008 778027632 86732850 917126209 509053172 652621086 533277754 808651320 347332745 550868937 340869359 464548511 494768795 832837520 825907979 864273583 345288961 928089363 915188446 974199963 352669745 989048809 990018384 990799866 646313963 897324605 551669474 889126690 137296236 890381237 680639265 734402356 367578838 680342741 682078752 802352264 448313820 968914451 369882108 503241839 391567069 826442850 983210934 997509696 238518162 595654599 497127063 936361680 771056250 783373055 268687738 565971636 62086515 860591214 124621135 480202349 757443933 863006587 291078882 728136844 506646323 575033841 563612792 696423760 652293876 929647629 408086856 424546167 322978283 467270214 755922564 864460607 293975653 461779560 354629697 844890463 126750912 259971283 960245185 993750203 319616427 809633389 805563720 816608552 945745786 990742520 763172113 866820789 162209936 683009474 885532309 919804961 430151975 936673840 998485164 998550665 219431109 299452471 16897757 194537285 419411926 546762586 30669432 50832313 378395243 414417967 429329749 489356440 738154623 802469581 654217717 683358476 314276092 789640387 251334488 684827268 251417396 681320164 623670904 802470449 85120837 601834215 782873339 942659514 381095021 801341305 394896180 638529066 538918875 567231065 29879934 789152052 577678279 827137457 61863291 752584255 72402791 944932590 826388515 878839886 612692725 842495544 137080933 564460775 303851267 383318069 310887714 974654876 918055034 967153783 106768822 135110668 161927313 448744214 30709632 518775635 395496815 862191074 45060976 350499104 702035703 829317952 825122919 985863846 528786608 922773184 203776807 387145950 24327652 870101134 151918282 651548801 76337131 839964641 6267740 543152673 654011185 969187043 421276243 829844725 762347092 853004722 457203868 562537077 574150513 957764381 544977615 971558003 695844003 901421724 740148662 878831024 442078472 752346300 7962453 8077932 676259956 704841841 548146513 999980115 631594608 708893346 319003284 415299450 750574989 872071237 74781029 986958698 513900200 642763547 912186058 917021346 739702859 957374617 520039913 864428037 528758561 799106784 937197430 978910193 643953768 921719011 123342897 785457416 88031652 587982448 322686336 784194005 436404661 460843874 251152438 850418302 199222563 281185561 70264096 532816917 929459434 975559656 145099038 231680228 673291220 774182386 680988083 836270778 955348492 960622153 317162804 667743216 194826073 665921602 161861301 835604038 492999140 820540594 409112787 816093859 972457693 986896132 992681041 994707183 837201880 911382469 912601406 930617271 848191840 997200257 71510501 924435813 592825000 941288850 840893293 957744541 370477788 694338740 42096929 597865204 458532342 843316309 649805180 985862460 841280521 933356779 595546961 829992487 614095039 644583204 202079601 373361398 905784097 997541464 951737884 976809005 215065840 691977901 539852534 557690557 282551573 850245791 759093387 769327038 708381236 833675611 835032531 926849616 402950861 535345717 794758414 936842220 871727909 999273570 885912657 905092357 448832212 527225331 301802921 858889171 278686603 514306245 596202053 706628739 502402166 752841327 377020390 742768598 106789521 702433788 196800801 342124089 802703294 905904797 396365073 511282810 560146142 662186652 336649643 403758873 242070866 673998324 674245193 980844034 313454802 617415275 765179609 915862978 191111578 391507802 399474413 794699170 856846907 879158327 189333641 662051302 16258516 237041337 366015868 871137370 308417205 439965513 319092173 379702768 34239321 197801341 113466219 474226132 463281847 822383474 520391880 687385665 558556406 935289261 670881081 994950613 406591559 985626621 31227885 967370404 62004195 525321234 321598641 702010790 400996861 635400490 32733339 685341839 724630715 865082794 396194408 825810982 260326858 475983026 855222351 897675202 836510183 889427486 327928944 910456718 624573420 881061316 170530603 982149405 753735261 766615546 150434270 639921772 846968064 878622152 793509476 881252299 190257283 929982815 416270621 900639682 827085311 901840604 563464771 916794653 955691388 973397515 618597016 957480509 487688447 951979721 189186181 956875441 663137434 768976605 755625888 926544226 843701945 963685243 223558786 689883330 949682991 952701795 671424416 704485908 362059973 393484603 837867352 944640565 151574050 874236994 461824258 853083330 322642618 745862919 213605703 870504352 595962547 911956836 622142456 740833370 29119804 391908486 663282495 869006463 658477198 812030852 539821882 867726453 687146803 757041311 942326633 943945218 618512947 642809328 116907686 989738391 813428072 969695128 824327180 903647205 841039044 978835621 758055781 996428602 383488898 525216792 267407470 427299861 204048772 520663833 184998967 254106174 634942673 702280205 645628651 898139947 146893450 633760128 937942352 955637222 721319721 857098170 258348693 414669506 491679312 697199913 128419246 950992548 113583683 158787086 827414741 944075496 414432945 807336317 612338379 897297822 984501115 994626033 813745914 895751654 73870404 708102837 818718902 891313641 215091350 786866270 973963211 982731357 236864020 713008979 294459860 722674781 999261580 999508436 376985093 774574895 933874268 980464242 360028109 815033728 462612046 881945668 591847460 724097050 349728544 821207413 388812496 538471989 776651035 991952322 158449162 534889834 144323378 419568118 835159751 993692379 637186472 681498736 580265773 614782030 583954835 877957152 152966388 813414332 553278953 871757489 827514380 914598158 859919003 952238594 95567362 539348710 703185969 982249535 208594038 340325391 905356241 966461321 228567601 813541681 582980507 595894716 689498389 989296275 282610948 553463988 794391009 939124067 539251620 632775262 485946503 580955208 844524053 867699059 850246299 993905126 215244367 985000389 27008648 565418853 3115504 28854626 561183563 727423038 650647002 666669579 106032703 177745482 244722278 882124312 45448802 180900380 528648114 529204834 86604262 114600129 579351479 777552092 539519788 591417704 398364192 788781414 828967611 929373537 329276058 967137892 815096815 984692944 240129715 743774252 407079114 408839099 510356804 975563103 154181514 815023948 578525378 891505963 759213295 855426041 922945740 963427220 758315762 832631500 576431505 633356387 222894923 863276497 392603322 693909486 800433585 882743682 859400032 888565679 26838806 196083421 185028024 919236480 445527286 607843704 882009434 930722725 940797731 946143812 203024439 684449331 33092577 587995678 738900310 904326069 71790592 485640967 905201423 963185947 246042717 531301906 212616743 664489969 757473634 914567355 809329117 834290362 728512785 798787498 179969640 378662064 599625024 652332561 127020715 157865414 542977963 586262954 123991204 183109711 688714895 760568258 963588040 974928260 393309679 942041443 223241159 438180574 355331624 668557800 606517474 953003632 717180946 835302013 245070411 406362612 953220697 979532553 187144040 917369094 740284853 944150036 465814586 974266676 828357629 981021377 344563569 453766739 175602875 457896466 983648067 993989171 222925002 781220689 291405832 975183129 161601668 426279364 683112627 866510532 682274208 928409661 948598745 991628440 335839133 731538050 514363231 857361018 11135951 253568307 982240792 989444031 577004744 738726487 109324991 649575475 875741110 928913930 177157593 631511215 978781017 997208699 376457610 771387127 504360922 795974808 813932454 823561741 732478892 794244125 650313018 911937631 746331293 862665827 727056899 810052320 549941508 698857320 524043550 612639828 705732572 892359633 256353481 595950995 585245910 845905087 860581987 994636532 920032769 920632023 958357513 969934450 946490763 950125892 886860359 955464155 603531158 649704547 977123114 985369290 810361448 963357857 118930899 906527792 362463770 643049833 370295330 450737448 667460363 782094986 789332698 985031338 49417128 768460383 828446314 977807287 613411722 738058638 506327093 704436044 55951471 383329437 341360717 418050752 517494398 565145773 6625546 191319902 334309135 362753693 956197607 965970862 83833733 343785939 471240822 773290016 3535658 452343474 841087097 889451061 783780163 826300871 730448052 756293034 42477450 986635353 559888130 971519808 288761691 608049897 707206890 955342985 852235740 914154042 734180156 890505597 524310919 936645483 436744464 873861259 216182579 963778845 579075278 706907710 202605695 294165891 727247601 827021298 762162430 832886126 978976217 999155000 167619408 476425088 103996057 878462050 439535365 609985681 540339497 645494533 536020555 729083071 957532634 979254823 214855116 912272656 582297443 702982565 523805509 754345149 460246105 700754910 790703416 944516500 849548791 967671030 583748927 598263776 727031340 988892146 246187437 585914964 256457885 322984272 832766143 887553323 915348553 942146157 339100148 864000293 224521145 248961980 898838146 915542050 662673102 975976242 186035721 414623824 641895376 769037907 3210781 854274967 531162273 897649570 656940251 803729138 504650248 599644359 932947025 994908331 712950498 945980947 942055628 951139599 610889002 666986262 494680806 995739589 4774024 917037165 354189548 950015372 243935633 801986090 193663096 996564047 425157633 459365366 113852432 578605314 701582992 991651238 645012781 673118740 633611485 944279449 361221563 801634471 330317716 659283561 390209908 487819429 200118161 571138936 225971479 984956293 50058666 913046336 584652961 745629176 134156291 398961062 513981984 592780461 429486264 429850795 722607850 914271826 132416801 365232057 512590477 515410074 831718189 965383611 727920944 998351967 832506341 987502150 736325186 759311328 269852671 909347381 594900441 652203484 842278923 959298969 197457988 969741103 136299236 700091828 357954667 853707203 517858180 662471656 529155947 643185991 768477205 939445421 776869510 938593987 819779723 943361524 734089276 915614455 341133075 574738393 614642063 859474594 119842223 441162726 822516580 872045691 624952284 710036120 14577524 529347209 229226681 403378983 224628630 814513097 884099768 962614548 692095761 757625349 726027870 857292643 836825462 839637449 976655843 977309202 60314951 248880698 497418033 497793393 501914531 652825143 280935084 386880028 302379901 901880176 430025376 659330602 501356131 728148023 123180328 680489909 235407891 318836639 639129913 709497106 808533490 966010116 832013013 914181762 439392499 667966321 839684549 902705072 387545770 391940577 265077104 951257463 458421927 553328752 588342412 831463462 968250104 992003509 755535168 887071904 228837756 740753058 153350194 568673648 766869430 940044918 263421728 384786796 354389925 781330982 24548734 98870750 843570384 927094396 256366207 547538401 776278800 967672326 523981540 930932849 35069895 692152893 14938204 115352849 590640740 860879316 507513361 630734822 310865810 543151596 896362808 947361965 929745957 998831483 984097473 993326170 591319224 905086538 768200030 931213068 416645891 764740380 809596469 858356116 539813657 629426598 178940348 197969197 42671281 555175217 784352961 825513252 970134878 978945053 336807665 646252913 922996662 950556415 899623563 998434383 680929030 897142717 626707251 880801174 946627220 990786860 446978378 710011897 653663346 716420101 949014659 987874131 663486888 772618839 578289841 937612696 150238575 311560113 232721069 342655294 529243964 652788356 124768090 388831337 424511293 868218640 981834628 995667423 487269082 692758970 353863358 893663888 167091358 947456095 686656800 866502039 289647052 337742332 951068648 993887760 749178912 970239841 869108466 938262026 980179315 999379011 405029466 710941154 578801717 767360998 90055566 409609847 156105101 362450748 338848022 646902749 362452824 857103533 150919958 717672275 168812042 194827622 925026902 961799180 695135957 988202822 226509930 452634688 623651358 852195910 423227873 791754063 827508974 871795223 692438922 795080728 261469520 425947886 855424901 894548474 618618080 939649202 514882072 945519080 684554153 761779140 647965155 966751082 285953986 490701478 151327016 378310802 515393252 520681470 372674863 612253128 775764843 947824168 971217486 972362347 679444300 728744763 578984729 815597473 634775166 836302278 960746122 983547286 298541410 770651054 597395125 870496580 940911691 995368774 954088703 984355748 390026129 599171595 462523664 501617085 148212656 646229442 91474940 435295868 463974876 814686356 280700439 543048425 177123303 608599924 26720824 743563316 761763595 934950789 370416127 967732169 409102309 890910342 184403537 540975079 891897942 950805850 4534882 795870317 781729437 782303178 394459272 856822891 427123482 719722782 552744188 606842999 241877528 621376792 591798834 869263313 874229904 917156640 748532487 781139491 324595963 503152416 78508600 853391373 162354215 644832142 66484204 926902456 844884453 861148389 306651933 500993481 92707514 152446890 595534791 947228753 145566078 581097118 6856966 770513613 759387018 772506506 41056820 287573674 283559637 682079222 726961013 879381415 799941577 880732707 434844413 725418265 572667050 992625324 98775896 246810592 412747685 622850940 976685753 985556627 500161540 941958763 598134260 933795877 168326507 527491846 464611797 606708091 594506007 814937599 779223839 995626243 781442120 913336616 288656656 293963386 674762452 873447719 548692063 564596666 110440623 912011289 518342742 874583684 384442623 505504699 6770324 852050736 216452265 288897879 297840174 873327773 834747200 905221921 645039293 767265276 683992035 923097686 207504943 788138477 678261933 986575963 245323442 674053969 289706479 424530081 355992769 795740072 245422899 602679788 29518381 745995680 367804812 728652546 681111747 898704803 232695208 363171513 343209375 603245860 591405767 849487976 941193508 959247947 782500944 797015872 629189887 924505766 642933065 852182869 692295834 902576359 290222715 305257126 178152786 831122992 294035328 387345498 108128098 700398937 470642739 847284907 645674765 960176283 385024366 698926403 452703808 991700818 128005362 210756747 130063899 401769398 478063738 600276886 71732588 261119558 103891705 863820138 947093681 967678202 968709627 981321496 717110057 757920178 325507891 649745515 354256914 448946965 786712561 960054322 908395779 948667361 812071853 970063709 618482392 998822442 335791029 578267174 143889476 395990726 286199944 463605485 442588052 851494582 819240034 868687068 147739203 351913824 258818718 687505402 191706564 875654798 324266900 464862853 545411844 550735303 620029383 888893348 184592092 415246473 414744654 754077694 685714579 829057639 319303218 545106804 243285394 553861305 993626010 999314898 9861886 426063117 899348751 915741913 809744715 855364649 168041262 788354519 815212605 890322783 923267007 984329409 551770566 981023341 242949529 761703889 529083904 622266083 614138519 684770830 369198794 468317765 23906395 890463546 840046632 913483659 784193260 926673337 488276175 524175744 407573444 494239349 705794475 804246236 118364202 816012528 356990430 933041718 692017320 977848064 92413256 797177966 449603510 821608986 467511370 816254240 370615983 543396090 235458364 510104000 501397083 614691765 694930288 856605138 703993301 960642594 112379719 303018663 317828188 993444392 92609736 794814054 847942259 863040058 951994714 978423675 485533175 922588019 754008055 947457484 375341727 522702213 18138993 568741130 128352265 674883436 288314556 965881757 389642790 789191069 557340240 809634961 331513630 916322143 22482656 859802116 194811189 826889385 454506335 851124606 946174784 982056181 514928245 976215344 618043982 814925626 497992113 913546776 346227184 648072184 798056079 842516933 828827413 956499038 812635833 999722153 146828951 218779923 616705722 970399018 371508364 920537313 518508223 617024999 52453222 115641230 536671124 783472625 157512304 860836236 391955902 831014786 263003559 682432311 802229568 949837464 97171417 860496755 37762455 918162802 820014499 842928109 902078416 921347556 700098764 922424157 250461076 744166666 491982146 791317295 679738850 865376556 442028327 870222118 897024843 911665537 619845018 725751045 100569776 548641789 356186196 507029179 452938019 598926940 722402890 930099252 621899422 759729981 923113719 924642285 759788801 828389953 811985487 932580159 48349105 965945134 806611265 998700326 437109259 767349447 995018644 995739183 841651182 928690100 128375012 826729072 558294414 862818114 317462215 802205116 852567180 984922297 835571075 862309454 973816966 975666507 686140197 805634173 454882512 948729756 936717776 937919150 191658105 247310313 788029223 855395747 441067894 490294736 773643926 803733822 753038472 837214048 831134898 898325537 458470447 723768735 18172399 582205885 57479247 515007618 282470608 433307247 914735136 939983853 560759398 868107262 914321429 994959502 486968420 798683682 752838176 909315021 351758904 541512623 123515925 884676655 133709762 706382899 474635737 754093990 220160777 844064335 401729118 691918808 444358961 659473614 658754298 797290472 533811931 826673661 737731296 874018844 325472064 760913904 834299357 850819824 798915043 850888057 414330790 640123143 470631170 976005054 799510083 883678072 495233043 994494887 43138750 403080900 344525064 914677068 159645397 304971761 868545358 898469320 74266398 811515019 737295124 814750001 44636527 623497747 341113547 825986997 13652968 190276031 673450252 842378748 656776962 976831137 304333244 318504783 762055360 885563071 860082237 944569918 845444258 975567133 143062818 286778430 445714921 744001632 495116084 977890696 890131454 987009521 560494077 728106717 540015629 926119960 312121213 440575432 449998322 520364296 67640198 349621286 823555243 934616144 64476098 981163652 242982558 325192849 873432575 949837921 891651340 997963662 690299967 696767890 713784533 788736941 223583139 397137210 326564622 398562346 212920700 556055932 109309689 276347237 42303394 389922888 355653558 381335434 920289224 985973477 452042751 725098405 871254380 950777186 329899004 437594400 447396376 726687879 101859894 479665003 541234121 802925683 766504445 812388220 337781860 765978107 668926173 924273418 247893187 964554799 440160886 552510306 946354186 959428458 236439833 981045205 570009289 761854977 517935512 635695799 411726795 995288315 84981172 435847602 132790123 400111685 801007103 953376326 380357461 520463491 691588760 772314414 174262912 408034576 93081632 755481327 517817898 978419172 711401025 908423109 446836871 942781043 978037161 988326955 723064893 886229565 287652571 724289821 125428875 556147660 827612219 945314283 741802427 996484439 707608754 950726018 798468339 990337445 70372086 164184935 30373385 284439914 976942877 999818447 604915313 874422698 614218319 678274085 95357990 474269239 154972838 851503919 565811549 786848059 622345466 660414404 330931541 406395962 490889859 705036055 590184759 624093163 763261439 859592251 306051958 562815027 964270578 997821659 823491497 965670583 429992858 842101050 947080282 993707048 564884688 978767610 652738983 714645773 336541453 980913901 204683303 979761971 337662410 341422940 25707088 885819898 215150157 682958206 792652724 852777034 596557563 633370794 604964519 797141664 732630130 841489638 149896987 674843308 900280266 994655856 220011255 784055566 554176092 885812110 16768187 268537706 467203797 881191845 814046247 883971285 815546828 833400579 215111979 646903304 874232639 949707656 540179897 782962000 795354217 931190216 291329566 899124326 775187205 959081034 96864564 935997386 87864905 114814568 224668611 898453440 530117209 807080253 794008723 863397519 263451166 409871081 908582187 992326883 327304970 793095440 598002160 699256969 768738484 864974949 228445244 634328294 461602080 815431565 654925519 926349164 714205215 985648346 357201198 713719420 244727598 540990550 307773716 309725649 618012003 785264186 677293215 822937147 841226967 853228239 389419762 763571987 827028925 929648209 909605804 981687821 744847633 999491680 59715070 335373755 415562834 701144666 237964947 466857316 947468110 964301241 561198719 981407188 162685284 774673351 591057982 851250290 112160130 828144089 265942824 737705026 320240729 879080293 741635247 759298616 512954374 723427319 931380969 980764932 130348681 699460344 185496776 405508219 413124147 573275648 510045866 709534456 444565432 662869823 266703323 832089574 576101411 997718216 986026990 999850669 774527701 988564966 261543639 616250811 492990000 839083436 85899766 189878346 245516456 890790671 435771625 677963240 225977676 794117143 586120107 971556327 317878866 814212778 617453965 775393146 79933169 552915683 635576190 811057169 912624276 994402867 379041285 945710039 882447947 985163634 42222229 725325565 982917073 992962054 494822473 578127351 208345866 531529418 425445857 730209682 704299214 916844362 592902472 956477480 235799282 265914902 21102103 630020063 603990938 854208923 800192748 860952593 403194439 570988054 975023981 989043784 42003922 302055760 141011691 404269869 723580167 947997923 203437067 891023505 515099563 739285013 518781478 675126578 205698199 477131741 330378567 782071347 36542990 922960680 567281181 709665664 628217615 687796830 706462680 760203904 862603343 881299750 394114530 721598491 917213813 936414060 468512183 640045313 444046010 720019361 946997726 999517784 374300416 745641231 225051809 460638625 553801407 926919585 688529097 861387509 145133449 653929547 385795494 574734913 429098413 501678852 845468834 947208113 511760540 621431751 791260666 893580190 648590096 967039094 995914639 997804058 708969537 799781772 943182528 957458727 83221414 617157763 484549676 979887824 707040097 945106222 635564278 914376047 982454751 990580912 655302543 776134079 995250166 996020167 922886067 992473544 749612808 799259569 617250675 848449631 784958587 907026100 887768579 973924831 271612389 762875379 514878705 529944469 684227823 721470620 98880383 647340402 219299039 444016627 730192205 960547447 715948214 884355272 984726826 988570398 655576186 688001088 661048942 926903759 904804756 948858064 778025994 985424215 204458383 618413232 14620289 430253772 182570068 216567726 535094591 771571921 534654495 962778234 662803165 753933622 927479473 963634248 990520856 995687049 793024210 821426805 59625430 626951504 592858459 994583360 876308351 993938259 611058482 622972894 777535025 994798284 218772406 897963226 789072848 911701458 94084236 348475900 48558688 88717908 25172883 522575735 315956628 367032828 273866431 890857225 149280360 896137638 752835895 872146598 891570940 991566077 115845416 495975665 241704360 663672252 470420594 685016064 344602907 638322207 477635252 728427094 79248497 742332319 890529305 895448018 683760566 982209780 652349579 917404182 323016466 473871432 188392527 912588066 545503600 636651733 336358415 953240264 315345338 871024071 277224121 694023984 103242665 843943577 593695069 841702593 836612064 842566481 203476734 649960108 575791875 672456706 799346179 979319617 997434040 998349697 386422296 841001488 957816626 976228114 742008081 745340044 196424718 684370777 197333577 728370924 933973505 970078976 598606554 815805777 766571050 800964143 536914675 932486527 411958045 823808050 834659601 970689182 994374605 999194695 4137282 31617460 811096659 837564838 946427469 984689148 638504625 715039328 93536592 217997289 537854017 597330696 669703397 846908631 151859205 677317145 852913339 965327678 380451898 873056167 861156786 896512085 300265714 327060145 898633604 947088415 139941790 529452058 953813173 995455067 55293813 639664053 50603940 237442096 708677429 853288706 571187765 605216391 310326079 842192042 646666297 854250849 76869946 363015300 121862144 501694847 374346517 854112466 337562397 832862328 682404409 887970416 908420633 944496093 991838930 998002215 204152049 408260396 659292023 767075504 65300763 477313406 970564996 982629382 993485668 999844903 129971646 141578901 516371523 955655632 435016380 984261841 137192904 178046112 163820778 320011289 478811103 631441485 96456367 458265694 172819437 944218618 584654576 901888946 285387000 912062540 580433768 634366822 349865497 492659647 340125834 649887146 289324031 766832391 44685853 808146120 754477862 794440163 165307798 443789748 359430174 705471835 852805022 887042042 310566956 434732476 785754361 871237503 185450359 606009760 894028287 917003949 994335911 996175216 553941935 783050897 10307880 284702984 90345422 228474220 249425602 511229839 809152693 839651080 281538634 321912257 544354318 683045488 169066491 372630431 638290910 753805173 580598180 593177265 636261311 681518198 651192916 659644799 388522287 485107789 359399091 656850878 191647681 575337867 238289453 487896724 622904204 669446123 169393960 444714756 199520408 913905165 596397550 909028894 230248930 474471262 367411273 868378758 964745700 990836963 974072245 998844475 28082992 36447786 10708938 752547720 158367865 781684700 173283963 180566921 312960601 931749549 335052949 657846978 238566028 748710223 696850844 961219675 40086960 620871499 776449291 851282558 485048753 511356768 924417644 943408580 197513297 425363848 359915365 592798909 556770979 693315829 866472027 898483979 741642710 778109564 710357113 883924658 742276795 839365639 638337776 707025991 465237196 780688898 845142394 975951105 646887370 847931924 364215372 744365758 96430550 931663246 634368051 975485128 494994749 828082330 382785894 385155548 625717680 972114362 139349460 455089163 128516659 189766274 540964387 865300740 227130705 667295085 63148104 267155339 135173983 985298284 942791361 972176393 509426908 745161889 81204919 959104138 978721013 980158497 934826618 969858270 64128739 373602585 738937272 990841977 637002765 812216546 435716395 550971346 753606022 860275056 317066896 528064163 147233682 551546119 155442397 161191650 386850545 554265437 330830687 442611848 717139005 954256047 352943861 809507949 870083507 966757054 595336250 728241451 63129520 720838168 993789417 999451881 423193375 949119576 223964085 737306995 360396068 895812023 523153308 733114517 239450772 810653432 238852106 402904647 256048012 875374777 948196819 997646728 393965420 714855749 175868569 878215760 100912835 777151721 643240615 791091609 386907599 406245095 132773196 221336806 568442703 919278193 351896393 577373374 24323994 359844314 973280274 982725401 898804727 982889640 348713184 764293298 53839644 215794789 263213909 754927090 137042656 684929992 692523895 741664622 894306409 900214566 443531452 770925599 344014380 519343507 170011299 887553373 884999973 992945737 889056367 903404236 976323922 995441997 361356741 841930659 43546711 329832447 404695096 617017410 26888887 570608435 791955645 952362376 889406613 984130825 718122437 747550246 559381986 796050081 554935159 843317244 168240131 295354510 836678624 964880453 33723199 171229052 243112292 524444436 797380415 983661476 74452817 719390943 603809887 810821354 894305406 929873143 465350345 798620535 979805599 995066885 527598430 701375469 121565747 745266248 183647584 468066242 279174402 856339193 965048318 978808909 159070021 433595450 331737348 845798690 875976969 931799048 818234636 874568918 442531040 804841806 713410801 776352400 917745971 932082519 9704971 996170432 773903675 947445171 839801002 861235915 75789429 95159606 630319453 799190051 409738412 576416740 149668222 651075891 97633921 235536416 228663953 767654848 84645653 693188284 275654387 900519909 117679399 594297890 864231170 892689000 663012150 917401563 959299760 960329151 807461414 875299355 345250762 578499444 181450106 609273061 114026152 759353530 55450639 342669550 679754431 866397457 426567587 611548468 774121422 912183142 425658690 793351879 553466908 701611138 811845681 903051724 73734680 880771442 458316274 748619230 830033792 966405469 663666274 826358842 938260724 976496792 155043344 898481151 409108045 490757062 431691696 771597840 113646919 964853429 948114060 952747861 67938356 778988107 801777940 860985724 298471471 699660299 431761056 658802816 457535669 651062780 879583673 893106437 674732581 863796181 195362331 207194253 357278312 640714888 928875539 948488069 914142984 952027586 38369348 197245276 510286997 934634460 289657881 862799972 748642724 768801226 345356547 573358025 39730467 58877476 454470056 998139264 829921120 856934582 262986623 616440608 362835192 619348214 2503796 939610351 746792504 948701644 404982520 474356343 912504222 989064165 751541046 891983185 498038409 845184842 644517806 880037592 861324443 867570117 565113744 713087917 983656428 997852956 135263174 929217400 4554643 685789503 514401845 905398631 93581247 948442901 156238860 210920105 83049882 737224477 992493519 994733038 337094670 589964131 102606723 553538811 2977367 10939877 543309805 586601097 414695336 657755956 281197650 384263405 801212563 811107183 612774075 773068579 773248542 796577228 511623767 956912324 34093927 113430027 433708358 978695109 575245038 792181110 635845520 989405976 967838579 976293698 792009439 862929745 946428956 949224268 366890804 855688454 981016865 985141377 183965808 626270766 87106278 401638764 804832546 886789805 804080704 833212808 238589744 784375968 42620640 745277325 596298755 663795513 431554730 724097355 158620912 816339208 191016519 805926212 299730073 951970360 333673614 393601869 766955546 933314218 814568090 835749828 48959479 607352746 817340159 881361992 865310798 974208547 924468855 973316558 749923263 867670058 994939177 998431231 700860325 893886474 191109159 307669438 123420345 439683035 395446984 726629855 754133967 921885381 665783671 795196846 77039200 990494148 128336697 388640150 710400119 833084167 135833684 560594163 394677262 946880928 303690332 448574496 35640861 762482593 394999787 399962789 374687058 841256123 272303655 763267957 633647814 950786608 305721792 340920370 494534615 523096884 692583591 933829441 560920598 953831969 602676230 752130476 428091387 910192890 224594069 622284315 447118982 912750274 834432452 992397122 391070009 679220062 549540084 586142379 109684679 150031291 553307713 676709908 207822716 611771074 539516579 575359868 456189730 741592105 206420064 206676383 429739263 908268967 360198118 833487125 949064563 963694215 734100302 837746871 378146724 709723449 379315951 892504860 533907029 886081813 711128177 781078376 824688723 892490715 597850736 836240887 552971450 940611739 338732150 717696164 734283264 805627582 194725940 688010879 515697791 956096848 485633896 882626233 344838181 863756404 397414571 520040795 407561611 593135129 623980847 796256834 960419164 985318389 751561285 815032626 618833976 792476091 332260390 968730668 781548977 862628243 958600283 974258741 754926291 768683037 751384476 969936238 91566105 915163140 261777987 404887047 560115525 798815216 12165850 238383468 283768868 527118958 185897032 747037811 398910861 846829416 443259141 962960734 89592469 175791113 182040506 419535962 560705744 863644344 820833033 998343553 811636044 962382423 737354213 982998346 480815119 851608634 739253172 890819661 56258998 354936814 764208651 876454500 11763937 592453040 818446174 893152936 888038249 924355972 901281031 990779536 129825697 371236089 425453867 665364082 909597913 933020054 597555243 730174181 125748801 935494892 35438890 439572042 609273933 754300355 611084910 689192776 60953904 656239938 936121459 997195349 140099974 587344262 617501181 939479054 565985595 916944643 757930399 941573210 538536516 842248367 178551469 301383379 641754770 975407336 466633206 766595168 748003579 768491467 190777090 759831845 597066008 870337148 830329259 871561748 106755180 251236054 740895509 921113951 779918624 871423407 894997163 941257059 899096578 924005274 947301064 962739123 156725900 752490775 246395756 978264560 321007110 935876663 305249983 326873995 896051797 988982411 696081638 895244240 32153183 436245586 311019194 700017715 26073654 167287477 44329943 381519816 6339557 263291362 483034890 846462132 97536934 379565414 542171946 945982788 143445483 373652691 197332613 912656449 734426413 749805427 919198794 987009541 758225176 808806266 723112017 912616948 710323334 838341542 918940908 982111963 68617348 175182294 684275025 738292265 679779218 940992548 902333806 997975369 248982436 336625889 166627585 836482127 170747315 477645282 889782996 907724692 923402107 931677040 395930546 849096842 540666304 772032111 949774598 991190373 139493878 180338775 421531671 960969029 803088385 883278214 68945146 680261689 914675788 971754928 1584571 295335960 487948314 661913694 985314078 991552534 675754605 715553420 470051597 517839174 792125404 945411747 610072689 716691986 833868912 948735055 695885206 950515109 444056002 711945921 44223891 517481101 521390952 550268897 642823069 729476686 768448836 823692820 535530856 606699077 366696918 554196657 187260619 956247548 731764067 746396743 21536173 418646393 366798999 859675528 183064941 579472545 548894316 612927771 10653548 315673218 819418376 938551511 819928074 842937141 397233030 939336872 692779742 759178798 982111298 988455512 902749296 976610342 149823833 986934390 395254702 455828392 977003574 991475153 664943752 681005142 230306778 535764440 390375761 675920683 455239326 628179362 696062714 938033183 425760516 951194908 835782866 878796118 911306698 980590472 289088784 664847612 257945906 550476069 280475935 358912072 613361884 725678572 979785338 985722863 694797182 755800586 719959657 775802872 650775377 805706034 420402106 425809322 256182870 543233491 546383261 642277228 783598738 974950165 325712674 355484996 775828552 923316106 947416290 985167809 420059302 422711356 73010464 280380026 833889690 986751601 388651726 622794221 658840676 847370693 217814642 346290783 458709634 700977422 932478067 942016190 124711633 777464158 654395831 768780645 208418128 720484500 271771646 680537198 410573487 680074596 964001225 980488256 165198635 462912763 652348611 999050801 787183828 869468262 873026760 947553786 848218229 876663329 728993372 802942532 475651421 498946952 324402491 492413732 798669015 957492940 916686111 973322170 176627336 263794244 797529395 963997944 612931651 858479737 940243542 981642609 288673096 755249284 151925418 300223303 727160034 754885134 198652946 324353406 984447796 991291622 873370935 975125511 349988868 507513913 741143102 743204669 101900905 218221099 851852795 884807142 904042589 907932120 148686462 429063252 157434239 377998022 330168390 590466515 772297511 827771191 956924696 988307550 444713588 683953931 260320701 437105908 913855046 964577532 369071324 559748743 766041423 932988021 510862233 958301436 852848282 913676145 534009509 658309131 903149653 981107284 744112350 983158264 986558815 996948221 729526942 887737940 431451369 979039602 667843620 765835515 537665287 591209824 719661790 985903085 617561722 620601463 132725772 413675360 775864524 858035770 11897124 545883402 992242996 995859621 142237981 410295300 428701492 491451974 638887779 899796857 25972227 959632440 433790614 821804401 726859613 856967328 383742356 533037382 729170067 879249517 352199205 650290208 577712096 778713278 1443177 759366881 598760082 842823882 677151713 793959222 936114065 963656231 630122751 731276828 476889350 712979302 260681806 515858095 703888864 992111082 735427127 878758174 918588547 923915313 319082307 800251404 998204019 998303321 223993965 930813759 483955852 688137335 876638209 999047805 584479403 634340911 224545217 300219616 262796530 896753709 934495304 958235308 269692275 579847811 600629351 844106125 996204560 996807186 980452192 988977400 947311947 957773251 332108455 438729931 412929634 526175121 473838543 781843517 196525718 238508847 957026404 989973194 168041089 921210753 232092557 276963167 792953081 877790424 802828350 967356157 406683147 440902005 135590699 611530521 688023453 904778840 264352887 837862823 412034659 446213165 51031496 534842227 833313783 907308475 576787690 971220898 156777070 498342573 435223694 652692817 195003440 812064670 154267071 769513894 313496786 560757778 635241173 647708371 595454638 685287971 858477679 994406214 690269885 956279836 746035823 815008414 854639188 915373946 210148357 949001301 783700401 974934265 611507979 741156306 872214728 996477083 519455439 863463542 772347716 914137675 238925495 282567876 180170670 627971050 715230715 980278969 699891261 764917913 166612629 826781619 509507989 995591881 219833152 710122668 75855624 552207487 121053394 583058104 155481398 767950850 130974784 731419369 229535149 610915728 208270962 236264437 826832897 931259717 737401940 863555871 791394350 866642479 769166863 890377278 218484513 689629480 248305173 794199055 584790964 764531142 642017249 785457424 691847666 817639231 720811581 810329606 517648645 876786187 320867057 663788187 977754693 986101143 481284593 819882815 504591072 740411621 451367115 545703641 306855865 556969667 995465649 998784176 534018667 779274141 569097778 893945686 20391369 667411273 545171039 717849185 19818354 182256303 416956491 839600259 437297320 553348971 678021046 688096895 911711409 911914890 905691689 997805607 502388953 715390289 69311297 570250174 404333911 804256731 792841328 948404699 954665593 997569975 304749373 610737232 292753132 858854698 62119422 597903019 346308300 745491149 995694061 998154809 630983259 757265299 979961934 986950434 34078612 559526904 547974858 906062370 325866499 747065673 348362190 960369238 11888998 528988963 275669110 899887079 915031795 995983941 250072877 333642946 54855465 804070512 337223332 422621268 672474076 758829930 641127877 692599497 857625497 919168723 282877866 767811814 322667131 994376787 490341200 836852084 663019842 771975750 259753035 666671126 379710616 789262875 714702054 795663618 631939082 726602053 698980593 960791343 974009517 980596881 120701678 387494613 580266925 908019897 946829682 973469871 865499868 883792200 110962838 292507718 639915047 888960613 952337244 980092927 226850515 536106889 104305608 798463844 935293389 981686870 562822654 827510086 98413806 657638285 169090511 723027816 932943737 940466635 81513824 169257349 419407104 661388685 216659735 319608056 798208453 821649486 861317553 917043593 410933278 834955295 718895693 778131575 679425260 892481021 124893173 531158295 46933359 108947490 973146663 979572149 655506770 861048411 761808984 996048310 770938311 952650712 294985375 493053977 801777272 847316129 773450611 795499955 550075114 925944040 359111889 646494424 91167360 170299080 539243757 651922918 548102352 550987323 377975168 395400603 543806464 891549320 563120283 618089403 506494893 565511907 648783332 772348552 129831890 324383518 763928999 893883754 150895936 208651485 697720169 709184778 978321364 996477648 980542176 999639070 150973290 610556329 541897292 639510712 678697688 802841377 912568785 934351755 555209609 789998095 899550562 915583050 2796606 342382585 886830307 967247954 928342925 970242548 143868802 990717565 238343380 733969205 221079632 555052803 664134395 751612277 120078135 308724092 147791487 718613589 703858675 711227343 827347804 858886159 195953023 783477926 59343640 441206087 574460913 796134671 231418457 451006273 602247080 704859699 913457587 968547221 965759078 986761359 46987725 238463755 197866915 296561825 499363985 796930023 812936010 984018812 329345420 486548758 724218603 775792635 504471354 982207882 999188338 999795700 971833483 974383765 659741267 889375818 503171593 912568729 12396385 518700112 638795034 690471788 306030521 438788874 653861601 693818206 362920501 519691132 573759979 630764238 796336613 811291608 479251172 729690991 250422490 601436851 433611567 858771186 261596787 738580043 785833815 847393308 175473865 952843065 689541635 788272728 814981916 833010330 668563309 955094824 764333244 954246876 971540514 976379181 719886445 874219018 440435880 481869308 969058278 969139329 27236909 769056830 680252403 956347107 130845452 508350821 280970262 889443799 838903623 865632196 656052626 666518086 862141609 873598579 705612067 819488534 879121976 994287504 251271821 929330433 297591287 645456383 979676763 983312618 553261880 754738797 645885458 872502311 900363244 993470114 176440504 368440036 86682455 259818147 719343581 927174243 604699991 852103266 234303065 335738571 689594867 773356233 374261472 406636800 921951634 936702017 915031729 955537867 854300237 990408245 16248526 172719704 331488241 767287647 82789338 385219268 389062140 855781124 815592862 863730158 552383358 670067706 608183910 960478137 633019873 754203669 702087246 718547366 422116324 645363065 402101671 415557412 999123257 999781433 240547653 950534226 303194712 525435679 6092955 519280056 537202886 773217602 449850754 531091710 35532754 365740392 226624344 620120001 197632784 349494128 217121380 651469001 644202825 760960763 500236691 838149735 293989964 590765050 595116332 661121141 51814863 110718227 927591144 945398142 140709999 593209305 560014457 847223442 348109488 925571859 34174276 714607509 230518317 709850091 661203024 905656851 357698381 525350834 586886467 742052328 429538625 907782691 223666973 720211579 541425218 556566951 110195029 577788814 925501499 930801189 638195110 657934506 94258280 731615096 729012321 987010860 943871882 964267980 888225136 961370560 780179138 782415571 24277361 898226914 996017346 998097519 646563547 698068623 336987603 451812953 754777137 861688721 288371014 734811088 611053716 690229855 793448541 800265845 418445251 648363623 675545038 688869224 691662326 905193858 205014233 559620782 75872561 893840591 756180812 789251294 459024892 746146130 431276779 658996493 349216426 577846664 69650248 396643512 424027539 763726574 694410370 807610169 442679894 572167295 334802517 746352483 427386650 677514146 966130150 973966037 171996255 962613938 25392050 615918511 335693608 509768712 694872874 879848985 596800207 640386491 211780651 458895680 405008153 426780255 343352797 366429770 791109746 944680389 355998390 474719527 213374128 474985945 863337892 956483458 686987352 767260972 166749138 530564472 2922496 318853412 950722198 978727275 209406302 425471575 491768913 701710337 84682055 289480528 714099672 726418961 3962232 594122584 480603492 672421597 971602237 982361650 268717657 356085223 105646616 837644972 85668791 208824418 422181903 527046191 53748317 490244036 546809314 748453201 534683362 784515633 949596382 949615117 125005967 254064154 769132402 861757888 642566612 836476261 367268563 992379812 566241549 816945247 282867650 990911364 85770235 385710970 337610001 463945866 96209587 966546813 464325409 597340115 954088175 998706296 464741182 794755104 996056495 997897146 264137076 772802275 225861185 427994984 927186243 952194827 882463342 894133875 740478736 755749054 717540641 998233714 342442796 699052071 555106987 965390163 369050737 812550348 517708567 614002701 556491415 610575389 497991536 832379812 45915062 406089209 666071674 677987283 853219836 932985268 74527506 808491627 585512803 763594421 128899832 766497179 309050714 684142902 884356088 997493341 631549118 961706443 88364457 168368686 935120220 998811079 251992084 762386280 554361903 923597132 637102756 961446604 301747642 449808809 89719160 496616581 845167631 870096808 438865981 608212711 283992264 952802023 218251000 763012091 699260062 897399860 116914362 868704263 497248514 577217447 165399097 903386405 203419467 967978052 130323701 160717342 370871192 408871034 201218106 658105304 817748882 859145494 389201033 505773335 90582268 460731466 703563626 989277831 264366468 541309220 862345179 889172442 65071778 104161813 755237864 768448112 43319448 619594097 796691916 890285554 585926272 801486820 425293862 779771839 810781651 849849463 28130062 969906967 725163445 844533936 999532795 999641002 551891744 620263137 384144417 723696067 263722142 406404442 315541577 870224371 135827119 346091057 602148243 797540936 984267981 998784264 268741802 760457377 754386687 769425119 881649097 952374869 888245096 953262334 292039 695459693 660641456 989284793 91006114 950176425 489470568 871763153 736683299 876669330 888176010 943375217 825572573 841826045 687611191 967680653 589819295 705469549 622009991 815411269 21937330 774928021 134806068 452860402 18364308 262949149 955715459 997040386 537857542 788647920 366365023 749113988 797044717 902939909 640038783 833079916 161390429 793797350 405987663 509579394 989152090 999140475 992980002 996492877 63028436 197831998 126311429 642219365 280845001 506652367 348606388 858120725 211962357 779113206 88177953 708975580 667009833 837115094 263654463 506328572 838301527 989150342 674648737 792570437 549388869 929107911 650389691 986545909 798285905 864714961 122909539 428432954 864824994 937186011 704646147 834669563 640898077 698155609 571563931 889756397 66285191 961711848 68998663 548873982 879592455 947740812 657996979 896505181 877476303 962363527 124427013 442215059 934115388 957046076 303325691 427157081 71606586 455329062 253253069 471017546 933656667 963528193 510062415 524988287 298170746 553221286 314274421 940035944 119126268 584034197 110164004 232804735 996126725 996714894 16521969 51730854 95740722 100216930 910201713 960486045 776070998 884073707 873589212 952017639 474303482 518013257 275296413 413776220 802564952 975065559 95987721 247675871 841700941 868400454 166196045 390354874 368651539 671828938 273696233 405393178 613420428 657638273 817712483 937857399 944121817 959899721 866056108 877094887 403101821 727615518 697487182 815580204 137974785 348755903 651838392 993710127 797382387 985086244 670806417 726168694 489767586 694114480 245674315 963900912 936045136 948022682 454635348 904921080 674201002 757100537 41756510 273067474 291102681 882998652 206091798 336492823 80026834 156640513 5278601 603787785 757072383 971809343 188682349 974937105 585917803 968406873 464691173 643573845 866548450 972283495 604062804 845053584 31781982 932256903 222184014 377910237 490304828 802942111 685241563 887243088 786450723 847666444 144669532 957505638 238761843 475057229 64574563 993047934 933312655 999647403 3899011 431206850 457753538 658237902 732131610 807264278 58202399 104082746 465555429 475497244 536423396 658745954 861337348 989925233 717981865 998663516 790079625 806321689 56282638 942038160 636580541 879843143 779435539 885155709 319145376 971502181 592657229 857639683 218828650 951983336 831295532 922244965 732019349 962617825 594021702 733091198 818530674 836456699 390185552 645970614 44644702 270710599 977207121 996186718 475713671 681234321 178498588 951100864 628550307 637356545 995912144 997138096 894221222 940086126 504389899 734850058 139412000 632975833 145694159 780163530 163711092 331254942 919974736 999771538 649179176 687912955 303122454 709376249 125507267 342126761 283436322 450159258 965594733 972453484 820953907 860186358 868008225 944110881 112561371 188065715 916600596 919540924 10078567 474890607 343867725 548550320 89880958 644221961 707854359 802436561 705699723 770066047 1449443 863455396 235270283 752920266 465443019 786556512 69186782 674319130 913415794 956155240 958532289 965545263 48938165 926800667 882672435 991577748 297142862 942833064 48014058 311952676 498914768 830848074 618854011 681718872 865119071 994042364 823953793 830071880 544550790 936627374 668076939 705281808 237425770 491472856 196118210 292093093 719696391 767025341 269020631 426476216 643474425 901719686 799529794 874813935 66744969 85325170 262843364 617620413 248054151 763209685 56521977 96620541 884133109 944249788 189424268 865030346 888022404 944750219 419420719 899833740 431011742 611061132 908199418 956588669 771649279 977331755 826017095 978869003 502247949 854007727 865456967 919754949 849401489 871470610 289816067 872399856 681729775 977489055 153579213 429705276 535832688 717937393 291808070 911016545 988358059 995813820 443573397 914142828 634730920 813385855 148579894 764336450 587505738 769653866 20189331 93366368 982867169 985018757 449739511 654853556 969637447 977894397 406412152 550244013 117372971 850298381 717837880 897663346 648678444 816383978 229819972 896826467 29357711 907665382 964580812 999278391 744702834 900190956 768876054 924787888 456097207 479529337 172265466 453326348 86081146 567546810 385984668 433745076 996900825 999370763 347416236 689635093 636941748 762550974 350043277 669988191 305217298 815864253 432219546 775718735 552667041 821953487 853917407 888523403 107137496 125448470 533043066 759973850 757794972 911819939 734232397 952156601 444645895 823034236 364448425 829133283 650707396 778962631 547705732 742644016 191106642 287362607 728590764 808154070 341291000 958252888 655684442 979807479 465497176 899514530 922412699 939248913 152050505 307122970 865380034 884178280 164149619 781758483 820666762 959211017 426745608 471406788 722793609 814952341 410334066 618849771 199264691 824453117 651274276 812902356 476921141 681580540 681176946 833486973 18675251 375991280 887235866 968646475 185501551 563602085 191233212 665987048 203843944 425860905 80123496 870856707 119708636 396063002 400895515 559096934 230022742 340268137 223569852 691186628 993532231 994957573 363395198 817435622 804085140 972771000 670060197 774717624 481229538 937314924 963451335 977543058 224038967 401659806 634721400 884908883 900313827 939918147 859266194 950699878 876903544 924525602 200431703 202590288 156678957 565776662 701775565 726465916 755255480 904993572 446327905 934059858 893535920 937295836 674531928 702355883 667626863 747654161 635950169 744146936 211670702 777915608 342864886 475406263 316401519 754076290 757170371 896609801 143125104 969883461 757370051 897547607 869019067 890134658 997976850 999237038 621752870 778462728 911070582 986860461 402254421 897172602 295830994 940003062 428139886 624409272 229182909 977919929 261228848 364319669 727088616 745236472 309851851 834012650 788050062 984293703 402158617 574084691 961667832 986560809 991431779 997777974 904564439 952528108 673133747 683068780 770317011 865099393 579697649 857168064 48821386 175123669 149943006 191317606 408386806 738493551 259563244 324017014 957059155 994101582 376452372 731143099 181510942 839930609 119637141 257293945 474949687 880120595 57940470 669265103 485059679 588687563 876686493 904951589 940983592 989627913 534738702 585980074 584643883 732039255 188133188 579893414 622741986 709109054 368126868 860659496 888363230 920720266 832987098 841772923 623067903 653558665 296540011 440035618 652886354 903485079 907489339 985588628 742787407 757057370 225065591 522809633 701924660 835768305 872102584 966791722 252686060 286798441 799245679 801926124 483485676 748975015 412942179 936912412 6958347 755635661 109027469 434173490 253470463 861680571 537039824 669356755 755729647 760590260 20258349 469831843 233085930 283136744 127534756 338792654 604790074 659431106 899023756 947590109 264090059 533243463 531895422 728314201 794566315 803529375 814338820 887910641 922102398 944297750 356609486 823361027 700110875 836513855 252002904 333182858 369639633 639818553 493932139 949828935 457671124 740768879 947790033 961979519 754850956 803033029 356266704 806549761 372275733 388938424 571619294 867502537 910291239 945755983 73131036 582727449 972529786 979046986 651219842 988041978 169626808 638782425 702780505 738282563 155909416 924390347 764770976 961984823 71566264 881274849 203841468 205244216 94798990 549295278 333533279 847596815 407894991 681313382 669549609 845929136 816620338 957045008 853150450 997114601 416461773 845559278 652236473 930487787 867648700 874444146 972951133 978384483 61841176 187750044 382061922 433710376 164874913 740887320 619750959 733335649 726309971 911098798 43411999 268563306 971825511 978137073 519482682 546884800 586421045 997851388 664330099 751958020 722203317 818187789 728734911 939849213 135240879 480774328 281163428 654310082 413969491 827362944 565000961 862954049 641457446 854056167 314830440 453567392 16016869 264403031 616281865 826997793 881831851 910342849 278339131 557724643 725169703 737189247 43234787 540856442 980058022 996090355 833300294 903558435 540410165 805946805 172992479 963570442 826689445 877195276 907472748 990588519 681008221 909794992 123454701 771347798 108477106 649646898 899016360 932819197 651552758 817677518 695031528 719942538 833738427 971330604 423754182 608473132 601440425 703207023 123980007 369812658 310441400 586786082 723764014 895839632 623478240 781136599 391757655 824322428 542438203 807707508 115986004 139378335 113381778 642284281 957093967 965134176 123649867 329472755 32887807 61679535 895777432 941905275 141850035 860626628 527028164 900853637 231339401 421961128 954182497 979327476 336299540 392001330 811394132 850449509 835361410 931345302 886622966 990983116 320604556 407976625 879950386 977880968 655758935 951391011 113529816 639769964 808989921 873914306 468069975 727855397 406836237 711649710 756898410 763407630 420885622 949697899 908038163 955035721 893062363 932910983 565638431 928397776 741110777 856656392 103900419 955005606 536427014 618621407 770479927 882504724 633949321 644447042 359307539 632319077 701271935 942721931 490918465 785616133 874027671 931923296 111553730 337299930 51685322 947028937 167876339 626080680 326427214 473463029 687104282 904222946 748951910 953342859 237468823 570090667 658569495 840396167 424946767 796943985 745955756 849319158 663377730 818084731 444150679 840170152 922969711 957218788 683971960 760071915 45703827 360195082 529354878 556132179 918366809 982812955 956835720 997749247 841332351 856233366 589060502 620758843 860977133 943913800 505835551 944022272 758930033 901608945 191496872 336440986 974935766 988764939 73757965 825699096 884990125 993640735 301002655 910344910 20253067 139752645 312442941 365334450 368606724 458123812 686495660 948709432 283709263 817453505 670734723 790452027 270213840 398699259 736911203 843057366 347075622 908253402 150369805 242926707 608598803 806416019 51822516 562431796 776309441 905237859 687626575 924494454 696808661 895236378 655605766 704553430 740400071 811013812 357493633 360065154 395476201 542417967 722329894 832596635 370064477 468972592 439166671 669660033 783354959 798732134 389047268 431118828 770779151 782928986 298093517 806430561 155256281 876697806 618649466 989169875 906883537 975905775 328340279 439939700 422188398 963779473 989191419 990841019 985283724 995131493 874271293 956021253 460089964 510615598 353107979 809039907 788726879 836198055 811442003 874247823 509681764 560431878 124643340 882573674 334261710 782715694 518884104 985855616 848564195 907028154 348021311 700679968 112359517 126685526 239614353 253085658 471278747 621892069 711670891 896296998 813409270 876077316 196784533 255996909 243183131 482366109 167603506 455361687 519533669 980352357 937767158 945790384 851296393 959107695 442663537 996582342 265490571 374961781 400327923 471302226 712518157 898211304 8216616 413621927 964296559 984051498 2670250 503092374 507101193 913090543 24716455 530599229 565727484 649936380 798618395 844766861 993215854 994375222 202701860 516727879 746560578 771208808 836848324 987136017 399001253 481369227 854317083 983254430 796751312 910616712 955667609 965563106 423392552 698420182 542606403 865328671 488054193 969042338 654520826 658164511 617589958 838056334 88114989 320599720 293733779 541827670 784082493 811431427 231563788 995690205 582868264 780558641 697198764 958449532 844959463 871903730 151260400 596266363 831216808 891057386 809169821 984113499 899723957 917159138 587798319 592822667 509099650 614816071 112006086 860381624 518538325 843803995 412779103 555214493 717684005 757040293 657412649 729530685 220441084 596479763 463183558 542853892 967022422 994602404 94833086 889866282 907858722 913377568 473178512 617950309 584283255 941254177 435200881 571801855 509451282 809665990 825714169 994104021 783445617 887845248 104359701 366151920 580672038 879573691 336169312 908362356 95166251 677518708 236213261 459197515 390974719 726830789 230645574 947713801 385924891 874812889 864625540 898311285 73231466 328794259 254924364 635314372 398488939 993269371 205394627 401701352 2821790 202323098 883070060 991125024 831925875 867045002 458821218 518916270 883075820 969766775 543574799 652605756 609483325 704261179 839851854 985709809 131856896 586063002 252064025 331521167 588959531 984235352 954233880 959494625 297975317 395638216 996570783 997595346 986510172 991448735 775218436 784536359 8690278 946495840 768112255 989457018 844753352 876328015 972892812 976558437 396940190 594404058 415861801 757384267 618350934 798446836 525548323 793439473 390476157 684494914 761593850 886205175 735794366 928712668 324814069 934537669 556513020 977053084 476775920 745443669 610885582 840975730 549452268 853118729 659055773 666969483 208151006 621450990 326410778 748903477 606633431 909648356 152675453 920484529 507440516 938549726 36507651 970892053 514528405 905275879 390348592 562496184 927832283 965225372 716422859 882324789 169746423 850850754 768381287 802923881 786657717 832213530 856148097 937130836 535493119 752064773 703735723 911849332 390762245 443358872 524986822 766346771 295555779 648333755 152355713 365925578 634305621 893969326 196715101 958332884 884013489 990529953 86200310 986455687 631351880 735939131 265543725 985072693 738413515 771915116 656583817 953871815 124665711 982997814 422519095 494880543 160923735 667203271 220317619 888898065 655381214 855587605 451873321 756089190 881888095 974719621 62502808 323845120 223873130 500047667 606188895 923770004 367322759 529395337 71383216 205711978 772934618 978272512 763302631 993153497 100723109 850382368 576369187 578168834 467409146 677715076 735355830 825822857 194432788 463381624 844952869 886943267 15285258 183484952 5597727 920868497 377022521 445991144 360835592 376805025 482329070 866060860 982300037 992536301 35657307 656617013 624773488 792112416 799851806 835257796 701876538 870525945 482412640 538891566 883585842 915103690 173873483 638020691 103502805 790452062 667833061 965731246 773026540 779728852 271127251 489203937 981903175 982412736 186186269 783185438 130948330 989243551 852409981 955539837 250252703 523792370 778551391 918059773 161621641 583225375 4962639 404125252 569594709 836653910 309464881 982312504 125210957 807119437 178630499 571992370 95502068 159655815 559157328 867580585 377165786 931408792 290729250 627835962 427695619 899342354 323466057 476715456 13061909 61986939 222501675 428410916 809295806 913235811 521433255 957650568 197229187 290826911 544484079 843259813 636310145 729774368 349793669 959611450 787940524 901075100 543929064 999534978 928619094 947514205 83163153 285977733 597073186 616241519 974609215 976370241 863311607 924865387 816067174 899845826 863519330 864060446 508388012 569787577 215777972 721674175 576275358 982025315 517754540 868892254 258969678 990003452 895634313 932087438 944793735 996269339 834902057 901325992 774876486 932739405 308623902 803892569 735032768 847544255 486680408 866682438 350326165 750606372 195233156 481726252 766165143 935656131 808199144 911159550 676915017 898662706 938134116 995843871 779458152 855823629 458466453 493100746 152214161 534691353 783549644 826838294 990454672 991924793 719270050 740684271 781253943 850916219 938157356 944351623 337257384 370561450 324045185 349284794 137952258 849801384 211943792 891845226 882727647 949450382 320428847 580265609 199201519 601715519 130178198 257960801 438930251 754600890 931683437 962298204 229176367 980359138 956684153 980954046 347645527 895240111 176629651 671485673 162677777 526315324 647375489 969455900 402096005 417978359 529809979 543174460 296698973 697751252 894999598 990529560 286812933 574416934 195777021 207574988 407196334 738873156 228621123 458175828 828835941 903764037 480112060 611074323 615796381 687539995 475271713 581907026 304005720 764821150 883828664 903831566 830443911 881000519 924318280 932629628 720220547 760897249 178124801 681641469 190982600 376962220 567708644 581075904 954999147 999900914 845357318 988135102 846799905 992411603 296504196 432540341 235542289 912120849 652466031 735840758 70114913 989502541 594493924 852633481 986366103 993579546 853581070 943309149 311346340 916745489 274221902 777457298 253453586 698881357 762448076 958460148 320861893 799927185 297502935 951161446 124651518 926097803 983396858 988386486 238847146 773853516 851412763 997213325 910448701 927583523 628007787 695597630 716852363 769407427 338461216 840915644 122004115 298883814 905227094 956875400 539244379 765158748 906826239 909896127 818609861 877069276 817263608 854136839 893967111 986565574 624155085 785718043 377609366 903966142 210221928 542467806 760802701 865008559 54461138 518286030 534770687 579134958 913406871 917682223 598182878 607385699 615609121 931445569 209494088 356197852 268135171 883663970 207793340 981978235 25873431 487491592 268259822 414628213 207584363 677987474 27601626 890651582 154683573 894280226 919650743 992570935 401680740 552529593 135927641 864324434 162690665 922549765 903750096 910960977 166863184 654545101 904111195 969235628 791349643 821191196 580500618 919810300 983992625 992880346 756348292 845486005 76034765 571465841 610012851 937459946 284281568 744004849 765883828 865118120 692089059 997239274 608851045 704183568 64687326 352536262 941509218 951088157 165501515 720554311 77676857 998314648 342436479 439377947 610707984 981866119 861226069 879058382 409089385 894966006 988012402 992739250 585514611 695993477 761359086 762125219 13797092 698656855 385791467 803786098 920001139 951992288 961047491 984383452 573476201 737382664 562060720 684448270 16726350 618569139 862129406 933268537 826069714 829415068 555552655 895353771 439991794 638332529 46335479 650679775 150589481 635954191 626697313 856065761 407456326 978758575 502382744 979620193 874331495 994851033 91568981 304681587 592243095 637317246 458142580 467495879 311413875 962090032 468662146 829215762 671983504 882222378 180039589 838665335 332280226 497584899 868286775 879690288 123358659 410410508 282480485 413629352 278575697 333787287 48835906 458829011 915962140 941521350 150196781 820138203 60430240 857679378 990080580 997619043 4569424 768925828 740700568 911575347 15583656 326968508 62999682 599011510 1433692 677956565 756782332 789222577 334080629 364727374 762947721 983422323 579746936 796055557 58562370 278529958 448941365 979435075 664987156 704944925 678962260 789510757 986641992 999165617 446535878 700158971 88591090 957051395 621390926 844935206 603988101 944019983 975192554 977669531 728046672 739158132 462328500 833434763 642389997 778216525 526667419 909795324 94802583 256997107 268774325 730900113 951239869 973442484 321462673 712289372 260630978 822232950 564288116 615614723 148187194 377667879 986822299 987719797 83145010 373218988 531617526 904343070 582781562 740366777 653251285 718551042 85505442 938902182 411479730 811521430 134889945 460292352 885382738 980851003 880477353 966950864 811649127 895173500 46756864 621188884 887582640 895252139 874493614 962435117 16338347 934142249 511688861 660533930 539299764 804558742 449428506 773583654 102251341 638125259 424527632 930958482 10671522 470044450 656247214 894375747 397222745 736482850 818405035 931622369 878723740 979876306 156738956 502423080 595570327 795399630 403312058 657512331 950846116 999258809 872138481 963230376 636156759 763825978 960157590 984010236 118086175 218553450 132941691 830571242 555904253 620656395 524816248 533889907 10274684 635585783 122029957 890463619 971584948 995898978 711002458 754867588 296493949 577737989 328999259 916353022 331448510 981749499 52942388 378466946 443244657 750426378 80314953 411389901 299418217 450204617 432683311 565510304 970889069 973856559 807491760 914250199 677399996 862033668 418637049 541216227 545981521 772284083 15707435 745773251 237318445 994384719 303643080 486776282 908494838 989198523 440346269 970159954 799040191 834647688 454672592 699908078 918988420 981424755 926935403 956498602 976223388 993606601 821685098 909996354 402045345 560784517 249114619 932015479 687890539 691591306 400640543 703891029 146308794 356911138 206662858 892710667 467892597 733712339 692022062 862204389 182056013 201685781 208436628 827251083 80375053 981909444 939140838 971141815 368960585 529385967 345646887 973982013 215934444 454564880 812528715 887506384 645915710 933637364 596054549 813128211 415701808 505107481 624916442 801027000 872391161 879623395 461066940 997778421 6920545 623994792 819766549 868139790 555873923 724607795 5821927 221891660 101066606 567728263 762442148 903564614 962873041 987522199 609311104 758410919 587689515 710411664 489774930 624564826 169290345 531969040 379632332 471376210 818330352 956521902 75841892 95888940 708421701 818371278 93849509 391465433 387793100 523420660 395744397 673548942 331568183 555356719 988425323 991695534 155437462 595028936 581870321 619700532 904153052 951968594 366745151 999352215 331814875 477699150 424174922 632634246 551544584 958347386 740979765 834591723 857012199 916645606 926508219 927328115 988302946 992813893 583088262 850916604 305062094 701764255 810988786 984705104 890279129 915740274 432280609 768834230 931384214 944232063 121921948 614135667 334810894 431393915 280574732 914365370 190469667 196622685 591784965 625491201 40292632 606934249 70750092 388862206 290140109 721283798 56996288 283482484 563068108 869491969 765341500 776165888 37743326 911451620 583922451 686136747 192260695 199526169 568382657 698964111 313046393 707935796 975576829 975597218 877931076 963516577 648187205 760359095 888966839 960210969 17502671 521282394 888325777 910239751 198972972 679750666 494549487 496006914 483254496 498598849 908361363 949584500 185304273 878070747 583638484 973235566 946178075 984015648 341658532 972105082 225821889 604247482 157382805 830332915 474508367 631896018 951742680 975038335 599168301 901773945 977786816 998188958 876742012 925425376 554040199 810350198 393634293 561194475 66329708 283084902 512607749 609671609 138066715 592383060 448451287 517638435 287358776 422554966 415160538 991360504 454098503 635062688 285189619 473912782 91102235 353443376 755183564 895797489 120251451 853566447 915866802 948259646 893323348 910327990 825285194 838367310 409562395 854252589 213492241 777349387 687263382 807540259 171478692 257134562 732399250 787094240 296294200 341923685 425104971 711296687 397656238 789848742 122183706 553173153 262818921 271887540 164249948 248895451 76340564 202913911 1296979 95059048 115281584 219133889 356918076 551790341 540314589 699458617 114159381 875072157 12099816 369353603 394529336 641379340 517302605 955799974 480999214 488005983 154380035 636344394 358715962 426149050 522095974 694510122 187467365 516245547 367600839 391953518 654893939 921089413 318220895 381311369 995489805 998068611 505348850 833453828 987963947 994449344 860634302 960159477 399946082 639936517 751017822 794132425 366435718 678876803 831503135 981770146 183478558 625042740 627460694 762770592 160191399 239754931 842961937 852960271 349308965 662609522 242361317 902247787 481859657 689889431 325406228 443009222 257516889 497691273 272461390 757216785 234303611 800998479 686710952 989606134 273437723 756424918 369637481 541689646 395984906 530106847 568448782 959829099 572086426 676339615 447047509 906462479 286726732 523706801 923548981 940645554 738088976 867881083 374312955 740634175 971499535 991113580 218538546 603938659 258813203 550236565 220806165 987420370 169021214 905992818 313400068 483695761 152436539 711628122 144994793 515688474 442690167 527577880 506725172 969918480 87967166 801563733 664199646 903641066 771665956 776476099 718566197 885827369 639475846 799544544 709662 958069628 997721735 998566443 684956961 876290796 875341377 934914985 141057266 229380945 944305005 961515584 31487751 192799579 792424414 970323707 142097123 144881041 911679502 940190415 444345152 734039513 584938710 992152527 649760107 924853960 581508995 843167246 14822628 261089370 676072993 820577754 231395955 828382834 432423017 778545084 413593789 491760020 999751082 999899771 257922108 563191304 801928997 948254369 822956836 904672090 520561507 899603355 844884813 969074542 785901387 908557144 186435955 536995601 621638740 774941270 700853691 946848399 433027613 809650487 789575350 826111514 948690640 975609061 747494549 982399742 233082850 325467463 351466889 663162227 155581790 795464786 551634167 850957961 729576546 764212477 898645597 990179180 747167107 903150789 726702101 815220979 745936691 898888454 906488898 961853956 587073917 920527245 508925972 806607036 978146384 991940927 451319476 576297211 494688143 497247505 231509021 525232775 172735280 194266994 82699521 772206874 673581695 828377394 505827197 687973107 481783992 616663081 841419023 955535747 421228815 721176268 393223329 415100101 597119441 966894808 384665340 983204067 180985074 384853712 59304481 733375338 25242688 980521142 280962578 973190786 980036504 994175228 855857202 936419296 343173620 610874839 465583432 515332756 705672025 709648971 740055970 839256080 22643647 951536076 175773214 938690343 368577326 711807237 177721168 577866460 171465962 518416484 594061288 960042579 878427000 961656563 343121892 484406008 89132720 885621574 377987403 919561015 799945735 930446699 618048019 943679295 913157489 984905620 953398544 966060599 672557554 990781815 705610673 709342224 751177687 921838709 145098696 976316728 81281110 714902685 868240572 961600564 533584430 931352794 583538156 905498094 887081483 992320732 130386979 150863966 449795387 571412192 660825514 935130259 58483271 87130307 805125746 847913378 562072147 636904674 756541237 856130881 721296191 899017197 947481847 985118327 245525717 671778694 594409717 860552316 93506020 360539063 113772695 423439065 252498673 311231571 794764159 839369599 832792742 919401311 130890538 398159953 950686664 981215325 858012705 862949461 970952519 989559205 63290664 362924384 747851939 880544824 470419262 835959984 993113130 993594181 95807687 891168961 199098322 475697154 358253374 688011994 331411401 365684486 724044070 742540993 996834761 997957332 499000984 847472160 434453778 766368013 982229095 992269668 724117386 786931287 674349311 778045419 191118404 286850576 959263033 996961918 355039426 746594797 50017549 501962525 611022902 923980961 128258538 974771116 910129721 991888075 420969546 507898342 761798389 825533971 690450203 917454901 697934051 823591488 671758650 926016351 246511869 975477836 941622328 981603530 12649452 195324681 337241879 816248443 586346347 839445702 874985908 936436868 288760919 506682135 522972443 625608215 226818563 422670958 778994172 779388850 759670682 913065837 167079287 739069645 480689180 546186937 543443674 844276081 650560939 971542516 503158638 918885692 265046223 565841209 996040121 998380533 960553308 983736174 573125301 927058762 526079985 888589730 304184616 420544080 219552988 393100208 3304845 890792949 542028880 639348236 217851812 334858021 49703782 503825034 953867776 964245766 137286385 502280445 229952740 485950266 502013868 784625000 926611102 951785946 435060559 694808982 854450803 946997117 367263163 701621094 131153756 908747296 75196168 974362589 898306427 923288487 194636550 657448802 835993869 954833118 965646115 968810692 691990916 954510639 361403897 884427916 59342210 399913212 521857712 831344642 485145246 765486263 594705708 691049139 86035026 368677765 390521961 639228159 914267412 938934383 516556153 697682476 783689656 943334408 543853024 874552658 844274020 883883192 158436110 463621615 725852671 924781158 126319547 751086493 437637222 889192464 88538568 262137703 832209251 988810940 568578614 655605663 226086693 701045003 905768263 914773865 376987270 517843945 316207105 862822380 79161790 259957789 803400396 898030204 943977119 977736461 247601656 366881597 54838636 954701397 471003026 769827845 298126131 676005327 873143194 986237567 575826490 614322472 549145107 966540451 646090446 740445950 486466286 755534704 845069277 983317837 805666914 881139056 601548957 686677092 613159350 810178156 748960037 847321569 169766279 196135998 416649297 878031307 169373700 524966193 47961104 224860458 799203025 817910015 444687062 871650806 338367345 767144702 344030694 412742136 985416062 997439207 3714589 374283214 648416708 847444874 677128043 804800527 985326066 990013323 111667507 889458493 626861041 746900577 765480844 904349394 813682339 925177399 202240798 845088916 989405593 990886439 526668203 835342271 422133793 855604933 785368343 836184803 105273143 997083859 482132144 493291184 78094736 801710747 497730039 940219312 2540623 278635324 380598019 634680446 372734566 402350209 810599035 960956081 159999031 398524045 520194626 833055218 754138374 760149424 487249535 643783792 738200478 806972358 799038161 838501706 850932983 894158806 780614561 961257673 311399845 684366760 889106670 914491936 663105296 767699990 923898085 951007475 94312214 619641574 232638851 487443416 131904822 488697990 311053825 527267311 463354935 883885731 174170920 287918651 929725498 946776983 532860354 794770697 822990306 827048126 514616957 709014654 921273262 985322735 166771075 586073660 776341800 886616472 115821438 533097491 131101514 951272612 692491718 864379297 935717297 976410633 646639419 870721011 814471885 920929045 289877421 539017681 431637659 908504788 511760465 651139228 201662400 373426835 59124463 255289658 761666189 770783933 311748496 695943653 67509103 660130668 515138532 609760335 821452487 880805673 600458417 688890597 571234206 712124317 891059126 919627877 870335527 934445440 12155777 799290114 290304699 669577468 737232210 760125250 424317342 893066602 193401921 539163617 440909761 987294032 10443214 475603898 562368771 828649374 765625132 898718545 61080537 306789602 955677576 966943678 671768587 928029407 690112937 998792862 83289922 944798988 396357975 663641029 207918665 487384860 338556577 490159008 334526040 728782489 78792826 572302227 662319737 709897243 940224949 961575365 580418423 966353734 954022668 979623335 464883946 800623267 361392230 525491850 589936006 780392750 676988868 845179061 253037296 987034473 261797459 349525704 475890407 750335749 851318914 867903464 590444887 875337470 350995493 709254646 755121891 842815227 58761306 403739507 255491776 320241494 129626937 530046616 288324528 376422661 125318809 418849013 63344120 882159102 117922997 675345414 703819269 879119790 331905981 868734332 597626929 807145016 865361500 878157183 530210416 730358453 234586509 852734523 734360289 822744459 788787247 994930337 752966926 863959815 533180038 761215140 453187555 587385842 565372197 991080575 191519617 773367063 866525947 871418691 872549678 975634847 127431478 606302732 727351839 782362805 304271784 750106194 952657994 967588670 330738730 335899336 6918794 208804287 379708281 796767795 141674142 471237409 16096367 92477048 797380557 878533669 302257717 477448671 169117589 630442854 721969835 843083666 681397602 908090599 653208680 803255847 113093620 175747082 53291174 439056588 940483962 991073230 794943506 892076886 494798521 604957114 984982819 992041192 7060754 693367887 696614899 826019100 979170203 984454558 18650457 702203935 59886329 644563693 613123056 654928080 50238532 845706876 137225507 226688104 417042554 725567236 440244416 855802919 944527166 986787883 554028662 614911152 215523508 964205321 603699377 841133978 773737733 960462124 381014317 713845906 511334077 739979438 149944140 875029115 525695115 698426901 191618712 918722388 317541176 884687025 248139591 767800295 920130469 961730171 666758637 850585191 864438629 998961959 587296839 856561675 116207505 393158279 861798439 994908175 996140305 998528198 924524149 966549007 650947630 767014324 25374601 460698998 896073318 946625240 267557654 552144253 787630131 907980387 981189818 998970074 771875682 842105734 732513057 899075954 181899420 472351718 942289687 961767873 254202112 879954687 259634718 460914033 586850186 947484888 329690605 612662935 158875795 394631109 841880620 941932676 993741405 997632793 426409211 546523317 93738774 929147481 973728808 979498453 833028362 983409383 160331636 846352139 341311629 360596312 466064206 993283919 474394388 512721785 577179944 605681808 433325177 707827077 322789336 653267293 459489598 743051544 392420220 766594061 347247020 461842243 819193739 883038212 888805476 952768117 874291285 899759662 416791896 876199210 220418435 399012616 345148435 788049771 901390200 993353175 214222632 535287544 434307552 720195242 314779131 992924111 570245739 710819466 781955538 795793924 703108057 757829283 184977784 254340588 638978354 924311528 872892122 997547589 618602267 987641235 141600267 345208244 146826148 839429666 970431533 974935062 729667837 770550519 376614175 570609141 395455277 663884017 647516682 673092066 100332395 941718739 978371453 983152219 972263547 996809735 458281588 480144621 593682117 689151447 468519912 619473268 447946591 483518325 150562259 534537986 158454943 269912777 652819519 680459669 737727349 920468356 132805383 593141611 23379037 679315800 909643890 959204494 319681475 488563967 154123991 434871598 306134095 659148364 771888793 979051311 584261366 902925328 918844410 938793218 388246655 760250446 362879598 860903777 651215025 668707373 907307455 957167840 8463121 661327991 576489435 584966584 760293761 774241871 882724268 920072406 375467098 385622243 675620660 862685111 184130301 649512170 638524596 957141122 902429389 917828232 784644386 785761995 637555521 722092019 105300503 162635091 162150267 429160033 19584182 425871581 753407440 757753688 547468919 869000555 436553881 837315401 681107604 862558806 338247274 879101806 342369881 817587779 633798946 761762679 836900478 883610879 206291793 734389763 437665864 904671104 615459199 918405306 564982489 803279545 32231383 705087746 403064872 776191255 631643117 796396372 192017526 494047705 4457387 655829405 523733708 657399808 305592876 851527552 718533076 795073968 391700672 460598341 662862889 850995235 968546992 973942811 572302208 754679337 215505717 534447695 500395834 861503832 300331047 730819619 750720370 892831103 899880117 926921095 637325319 650364784 880079166 953849663 758477886 812990252 309542566 966898406 726180376 730777803 207914051 443584598 557117669 932633043 225959915 983242151 394330728 809117450 158258269 743302279 59088900 525057401 649331221 988550326 53881070 302438517 657607860 730741202 80726010 396007116 465667053 536267557 881438175 922031776 120512784 827154367 103744502 181050424 762239608 824448821 848076453 852294697 560842234 624172352 933004667 954614875 260201735 524115498 626617775 627893569 174948951 838539910 394633723 597675596 271216259 926940975 50020506 978948668 790085724 993692102 362448151 362811444 603305978 904819276 675708494 917651040 306633077 667526244 416581782 940824634 624353166 727276996 527970336 550397037 844022734 941862896 819699388 918719934 719173162 877216575 140771547 728443642 540458643 819508910 416127135 783517508 612641833 811126895 773736387 836549167 195961954 523684389 561154738 583614864 604749099 759467801 839012963 972906824 207235216 988168520 976864677 990860948 56304912 936276921 909817900 953839285 45427293 673300472 732121381 814049396 251227813 417487840 610406064 834735182 30759494 64971725 439618307 480934379 449172732 776555092 408344072 741578679 235057664 595226222 744111281 801316135 867009272 957008667 688778991 767807385 265940330 426133636 708077724 738041223 951836094 978964570 550595205 709973612 280451819 966643349 631991055 773094221 882663330 957849802 89093855 814324324 445919689 951346433 958619107 980128830 431476108 949621193 1729282 393105143 566384800 776287072 955168003 985154370 782713795 892851272 286219820 564818437 749400301 902703232 613410048 827717683 330850351 731335969 690012 413832524 976830818 989704639 394199461 847957188 901083318 930901877 172963138 414227623 940074119 943281608 990075406 997632119 81674750 857480415 102514462 640826370 162473105 389319609 859547037 875920697 741004825 876209007 294636102 499070262 575244136 729984416 438965156 933157779 464570972 480521337 604404169 751896560 480972154 616892141 661075400 747120081 16983641 262486434 464511235 475386996 61944361 892749163 735996875 752991965 673906394 744679713 816948153 858535937 928184641 947886386 679506754 762421204 205009991 962963601 913702187 989362276 675285304 818369596 828453094 987084686 126076592 889324406 778737543 962523244 563234912 607181581 212428323 929871074 374874272 615745519 688350529 818481696 178618982 912542522 660989680 848726528 659712776 803255311 62023573 715103909 618130316 887118216 659641017 941238412 634984862 964952371 502845421 660167740 280724200 345336518 963406338 977899018 419599697 779802025 451177746 504382609 71855169 182080231 81785004 588681595 607999885 806480400 762816065 972861028 10760439 622058296 120642332 352175110 589311894 835233523 159175974 566024608 323749476 639760439 541330083 971530892 468216565 538795173 821720432 895405601 407527729 432200936 175971973 632943940 425518300 608964690 341113167 891671657 608650787 931928320 10568979 547524816 695468726 773401611 112974120 614863609 300282580 845397801 824725460 900707512 176972785 650782662 821230722 999172367 687866204 741755731 201893648 750269105 775804420 888659803 890010437 946710556 607350078 695586454 277976211 425078908 329814057 993446799 500154283 771341218 967839161 998908734 483291462 723549865 541247395 827480392 7190716 886168914 178924956 628560914 420348997 682686944 10287954 340226799 321449107 581162173 971920286 974996019 546153156 944211754 72226465 770012164 516997925 517416507 554458441 980781804 456740256 478668418 522213132 651709167 926783778 976028780 162853042 257818264 449973689 454164134 883511614 909083453 822191382 874813800 350687587 602466900 84167092 770084617 706208789 739810037 840692478 990653981 991629489 999187462 336907295 760976731 410100601 970776751 230483931 808038759 366251916 595065393 351812743 393574267 217705274 756252986 716267097 976118247 530443715 900039163 729382468 854450912 584169579 868564816 631457624 751180767 37224840 181494944 550336424 960227228 983625421 994128335 886929714 904065029 724400550 756972128 505748316 586177035 279856631 467872296 561545640 611956039 233638603 298299540 235064925 448651244 31074221 250578420 673501172 974500197 450655024 679196471 326291537 764131301 337945730 881351775 187312348 839463532 572358661 659377950 36842580 702152292 1358188 577689203 686400005 960063543 646983870 799248314 120261520 729872343 613706723 856958940 7323607 568771064 978384698 981719842 103798333 217029145 707285775 835197502 632783262 984564375 95996899 375151644 517531898 995125167 954081806 981034002 721095100 769733789 117691098 215807697 881807109 910227698 892432886 972365802 377542580 793339189 93744455 871556842 525895212 858230681 113282750 409838803 647289931 867456161 608932231 976935628 179084689 943019239 116143468 366893897 895702209 931611802 417267967 748071111 187176702 364093106 329119020 519241567 845996278 940230139 45770006 458731151 552900693 618775892 421688902 630550832 551936167 920195041 362231009 758660920 669366571 741323097 566847203 721915000 612520654 841971422 650516406 942873855 792519821 919533620 372537561 552020138 190949892 895350772 617865115 954789723 814829643 822047141 820126481 840318572 651600134 842523052 568409756 627786654 13041172 648488263 49645193 484224075 272539565 517827469 504808355 825577252 340562492 757705046 292361658 761631981 298093078 383961102 490747631 860980372 913717340 981806021 808664077 997792100 833420159 922099874 837190907 906644143 840181550 905762176 597521526 622244201 453296059 797144827 123481599 506267288 515415177 551368111 158177157 957793867 756510347 762169233 604327108 900386363 357562369 450923694 447572750 614465359 673354322 690701191 748413640 979786986 229197259 694154103 68086953 586532030 861239071 957122387 709210185 935518150 514613336 533734674 937382481 966251659 972535822 980438850 604242921 968296231 562253748 597645961 600780802 834787068 694961169 814139783 507632784 509372323 389530101 590061966 114148194 369212253 109901667 531497597 691078623 954940177 69207177 921342625 513775556 936050204 451204565 874021606 251416705 332333045 297819690 349441286 373204070 512771413 915552338 954258878 421711543 839505954 149833522 575555467 874481879 892586433 631573247 811581368 437979511 719344548 637886259 723663014 354424968 597871505 386835890 841679378 747556024 809963340 389672876 611898792 638400591 936579803 860571608 879452427 381200462 726700178 707811900 979307272 302515149 468462206 144915111 929426745 500446265 613093104 367231815 757085969 518421583 798364899 799998575 922394395 545730516 943342635 640909098 982026923 599818931 846160361 806931011 883659795 836367975 844189340 376085920 636718046 915471120 945105475 353477607 891882150 880754630 885367026 559709322 652172110 148339568 931595335 304453408 680787891 255503932 507377892 649989893 843846526 359255984 859522821 510600895 866046138 362432866 435805610 662308394 830251282 795365110 994809353 986257695 989162927 329429025 970659660 503444043 602984953 398443968 400569505 969021157 991265260 811449729 811676904 250902235 573085496 733193923 957519170 465731486 702793003 400501470 845751612 190915398 730912222 140755302 407931397 216947912 775314817 65255012 925499595 591338437 664369993 148012392 686860911 67363714 362710806 772372557 843668501 688351859 967518819 219543276 258275809 664377910 908736761 454559845 840376825 121342363 655630160 739550633 871577865 744070819 992028555 767505074 927059425 988289645 993023174 31847982 962583505 568692278 667038930 831094623 929283069 379088046 820619810 965910904 985842224 304732048 805219157 822958967 852410838 113173399 956699446 178424351 930654865 396999749 845486668 253649366 923135694 102455736 460042355 107219849 881877555 977295635 998305842 674609816 818093662 383455289 920701122 652160307 777172192 762317458 894661148 243136445 523698722 68514720 438271701 145447950 719056921 321070095 765112677 388315006 882806203 860608747 953715590 458977453 531258623 542710037 766912447 298521434 635758220 597071938 911017425 90580569 510932815 584016600 896237916 766301873 997051361 861682885 916142526 342991452 417487862 481681719 878038309 538868675 863991683 795317499 901819405 392960651 972500130 333344642 960295713 804880498 973198436 385583630 575825129 165844462 314197474 970329675 976032132 954825298 992519771 848374690 987701474 133363236 880867272 348950415 391367325 363750959 787653874 370919640 449347897 507461658 703908282 678406676 994786425 814577605 984998626 460855639 603409817 865910173 933080318 888345661 962438813 844382079 850407092 701171626 819754187 14269039 357897000 207406498 731728575 742635149 759616875 738090326 788773157 798295721 968517400 425086776 582346802 606979494 851267707 36352627 768249342 282642537 318345338 290851150 535789311 607467071 863270487 16460121 553350725 89239222 744449135 338305505 968297817 437607853 769082627 987010149 999602094 997324366 998204333 692138740 957417591 436151670 483812959 673799685 994678590 343416135 858617233 289687965 962927203 648485365 971201166 965239674 995335499 233120969 746386032 348700376 501644946 361351030 701267586 330999221 438786884 911936845 914243113 215008483 852880685 518529550 608023568 98900325 252871736 289052492 526569086 486197006 817572077 89113963 230396866 239522876 862391439 320940826 703320573 957643347 992227352 832085502 886816691 419421588 509947713 812570084 945817838 337494993 794801029 685661648 819710982 652656909 980293969 127575427 924093863 908870669 972035638 584188370 691878500 600503651 730195968 340382275 450034887 4910805 597903428 390638067 926615241 137385034 587625166 219854131 646701752 794654975 911682961 666097457 669653196 281106292 811965201 23893124 680637370 189519779 536967520 212320160 816268465 206263912 787660938 756942056 774205228 599934747 861365031 906235140 921951217 194074755 720460325 205701335 376358199 404612314 632883821 708514184 739088502 985739170 989214217 814444283 998757075 757624733 905070706 226785455 604144420 593593696 696089602 168661453 393413996 78070396 811155855 468858590 555540685 212072456 278753616 535421595 545607797 732570890 853191602 492835149 561655914 965205811 996544982 164146844 968875507 249156399 337023413 402252096 718249433 234687281 295163674 390191998 682850832 586881968 659230343 511646701 942016617 550282888 792828916 298195108 950421834 953042331 959132914 893149217 972628597 102599784 374542210 945723729 984150573 720847130 779175218 571673476 860130876 332334416 717302035 38058997 532317486 593594159 776744591 39050900 697047080 249763194 579989294 787044310 960017058 616516874 935326120 626193953 772793144 403687521 583164396 942508874 979927245 990079036 995301389 535877649 895469687 956518988 979335487 525222174 530145251 191470992 560863933 182696407 836037048 619139470 936622537 755056342 973379670 378615324 394838547 187271405 799800312 779733331 860129998 239164175 852934751 401024668 978731918 586457184 697709538 850118902 897891015 38565170 555785808 792887146 967323879 410456182 433339077 946446633 972947815 178404480 603193187 955731812 996379013 604774901 702254977 229417570 360441532 765642388 899727890 717586163 940122006 802897216 992026944 594290615 748758006 692937916 747776043 67138079 798376418 836382588 893215987 987152296 993772006 662229037 746144934 919500984 999936922 656219403 781526938 847906984 894100361 312879323 922211894 491136304 699031018 920737682 924790760 205841605 456319612 172550793 413971581 351021097 924720125 945196174 948820396 894068908 909623987 952672191 965460582 129975106 158966304 405670562 994010238 821459501 926974052 389370112 909861449 526428755 878509523 666387610 947585333 757827720 834421816 887539649 976147929 597984647 990168119 919127137 987771131 666574236 727838492 14149589 197426272 797030608 936248219 538565921 719947701 880394782 993144727 293835580 408675297 129255059 815804913 210290590 865946251 147109854 589328557 31050949 223038548 28811004 617165494 295675691 792755537 209533616 455310454 346275602 370965538 780105115 821597927 179860407 668725249 432504085 637905486 402114132 743569485 318087382 680089701 734181860 919149588 251676299 608264507 446389454 796736520 696359034 887324336 707854594 895379632 50884745 990825531 39493305 228678641 481629313 750850084 269307645 571153246 843239555 935832758 791414478 879527783 543545510 835661744 958090163 971373644 438850330 990414535 921685692 946862389 182488812 787166480 222668026 792761914 547595950 998288894 564100058 869707352 694460479 806373969 245122104 373958596 74291069 745913887 576559175 999917744 826055668 874766699 649810882 684156938 793874197 900366515 139218379 767369265 11212071 775817640 527356363 681245116 644896188 781993114 747575481 991321369 295525848 773635762 589313583 952936156 508844771 852784658 480585362 935051778 901344302 935349899 925426983 999789296 639855049 791519203 447804973 594137551 943253280 990651899 730201898 983715272 57831817 719390693 616987232 728704970 748543959 939561129 119616096 412203161 138013445 678350974 127327628 704177040 907411884 987961482 101988179 393022887 807725479 957688191 43428938 872365922 889895632 936167115 227467741 823595015 497802026 948401729 352123664 838080584 644231612 997310295 787465184 831065480 96931263 455690478 107522798 921615446 744883079 750406625 539485929 644587621 338106823 620969398 98780259 619317727 234861630 450336566 878549822 984760986 698517067 943940620 13660247 469617864 254767167 931091131 527555171 747583175 563656067 822893663 513056327 615435324 780755424 865249110 67819921 556909740 940193535 940315924 51280937 253041326 430158537 498430874 853091498 896426370 662227650 848914344 107459246 304491907 17612865 734466936 810319626 889451708 334410155 620913538 562602259 806902075 801069673 805067862 836784485 993229275 229893137 283721788 986256013 990410118 580556562 713698620 635673102 909654500 263036510 512428659 418935234 750190207 626623610 682261044 653274451 988432671 647132889 675990885 329353629 653025602 799400603 825677785 81137806 913644916 504818590 732264263 269925995 511081292 820404372 902898111 58646880 937991154 506658000 515922808 801865469 887472731 690549518 982606796 79695519 875819139 887905393 933700217 228689913 988528088 63612409 560464443 450861410 771953832 45972456 888558953 700837579 986386047 252255704 892412688 104977209 243265211 935332380 953129395 770401442 970165063 562899220 927495098 287938507 624630443 129510165 318258332 273603540 825534061 39447928 115398372 430143446 911024487 417794087 557070120 660853666 870853271 786203094 814542472 28076060 854427687 417077206 536677767 765032765 868989800 813662510 871403142 372235462 606791718 862705196 990553262 296273301 689585479 825847588 970109568 571204907 855548028 898523194 943300630 331231832 901456721 867705516 985166693 596435703 648881704 816076315 853066578 676627887 769389517 694091019 849206419 824432068 836656274 145828977 925565499 279111806 539961448 624196225 646801232 617481971 952850826 405295175 872876462 457818324 571250818 272892921 569231095 517734940 954934657 543120115 621345121 510099870 828633555 116928937 531325783 289723693 401310013 458675830 511018311 990670056 999906515 824657614 844102853 641283508 730386853 442807789 545388464 80580800 676307172 371826978 704858823 914399789 951873875 452541865 487518449 332824326 392879113 87092408 495956821 598281113 790182992 746710732 766390869 539415891 893463537 842873895 959284638 630324623 812363974 388410604 444941197 206642289 603676064 448005014 491271936 39698637 442969707 408784674 800730353 366987319 571047766 799764718 982582819 162384949 920885340 423404978 537364729 225468317 382884975 18482617 519216033 145498534 516462777 772106602 911159187 431053453 682034499 867119787 925609014 909596321 970406917 898632426 944078798 803819981 935645464 491492475 721468784 715764917 963760532 825919356 923677312 667422387 856361545 855534573 963098706 729523812 982340462 295895299 771643375 909797314 927540905 361856353 512424219 529207703 706129829 855015855 987295260 350147769 739185645 788131243 880880092 175840834 889538795 583394703 957612166 549391050 672506362 333044619 705011645 852401274 957193617 974382201 997066276 385591268 411346638 791834056 859137216 192447408 614769346 563594787 759048279 310148459 326665001 982718487 991725182 612974456 760741838 528012500 898088305 414318658 579318825 860313427 926246766 385406236 633739114 688286050 809716950 18959343 201925016 694252185 953640777 363866471 957027038 989351090 995663746 119882545 230486586 745901295 867502777 827690854 830437000 245674496 649749119 719364298 802044725 298650644 612954696 740946029 830311063 524937699 869094309 613413215 961344119 867893374 926688758 968906214 973801080 538528601 871698571 755187018 802440858 921329350 968074556 675774102 775795887 152996327 278143748 619483425 894970196 245394976 587938590 818113831 867810991 635481773 686854614 397293665 960000972 542869274 867408865 741956905 776102862 37940459 998336037 290921227 639742758 834758146 992707382 245262287 727612107 652526064 912155502 319901112 845206907 860311998 881939721 993304850 997987501 971105439 983246970 141965699 439522746 619485565 927869898 368377003 432747416 857681526 894157705 190719256 289305194 287504992 807963201 462880424 899816036 610558144 892701133 267253804 369241871 768235273 937455271 41470926 160095352 863719788 982601854 147249394 466110164 385211441 621891884 525377205 653098218 680907174 783252415 857942533 925219678 829778542 977160589 45142806 787622988 787293382 902013923 948879938 971700530 822800219 826972107 669360714 739194307 641800467 770475484 820271691 965163647 391966975 499831965 746479004 974742630 388870394 685469190 68843485 505798260 492176869 885606026 214978369 942308769 161160440 805946918 355699677 585672650 403121122 929127590 29876148 457236109 136256601 509254334 678352047 793789502 226935761 986951703 90455180 432620387 996879487 997373614 84693319 593705993 593627991 855384280 449121233 891965165 833789288 929097299 222784711 715677214 817023586 879873960 658732171 832633136 123340286 889597708 797021002 925903485 549535098 913501236 432703991 551949036 744056843 972126808 132106747 872854428 976138998 983856378 477649155 592072803 762202708 894165004 695559664 861951940 206134421 416320809 140675874 546535798 761245544 848979884 550986141 692667207 437296964 605424204 93411874 690434083 780886482 982013775 413134918 467731642 91833881 849022186 748248128 886400775 367511578 379082280 806837281 846828405 31037566 603251838 370101482 453316491 586788876 840783924 163291112 191937591 948217888 984391732 908364992 983689711 727277901 775818039 534571772 799202150 983426751 992729014 273244305 809799246 110829867 430027046 621327410 794909711 307935912 747890989 549121600 687751579 330950487 900819552 667238286 987137548 559109419 707564683 742336819 857031085 826293681 993300467 403962010 800609447 413756812 666338132 48947084 629469462 436048124 925304625 679359399 706267492 265364878 546676267 320154767 506666108 534668952 595503094 905991621 984056715 738517773 843688468 638642813 661045194 539461803 621923033 208926577 871241039 562040324 841893115 900675439 999292037 827738119 832757709 864881237 908158205 824173872 966480709 362950399 805567886 966178777 999263632 22426991 743385674 51241449 509136699 386492508 701578037 875915880 919246656 726476933 988861681 864853104 887308248 254099201 674471271 237853736 822749155 894855887 903410821 584462610 608041895 448449642 932510386 800140591 991977577 914859229 918592462 694018357 872950650 460552557 477360165 378201852 441519861 499764105 918259321 555204957 605651717 822245213 909241260 203343282 215390461 912787780 984485497 739681152 885477674 645256765 714287413 114762075 800277988 843105250 856286930 504944471 639122561 122897603 571190863 4041355 888732546 241053357 752048752 249523903 515945035 890838037 989885548 458640601 972375190 855084078 875698821 204293773 848264268 917768223 965174453 88232340 857319694 53733541 657938466 644704185 829345696 69265254 249227419 822661736 823870381 465466223 656605736 97591412 668836874 202668406 494003765 5333890 881230212 644910675 845227192 806150678 957503962 654737735 796020075 631809943 988307363 753831858 884361294 520774852 921573362 71399879 689369047 900459186 973921675 599888389 649146991 506854368 530491664 642265675 744584279 664647300 836122426 146328074 283837906 785882586 944658077 939190321 986662505 566784848 734392600 399769742 813246349 771647814 919793497 284996230 739896602 176185528 660535180 845831166 885891976 430958900 860782746 878177602 897524706 502736373 583007300 646995972 759439005 151976094 746249135 707509770 865101662 84029388 612303493 939951250 986086368 715587111 789831205 103503047 654430315 290271611 836196996 459678817 712119282 243596716 743788518 506183882 817922767 896018472 939936871 657190206 766256076 75308233 759235957 876920455 973894545 164182192 544858683 827921813 881022494 546669973 817413965 257413793 289972089 6927945 318556322 695422624 715680268 426478154 809553764 884113411 887420385 305051366 633337983 447567379 986653761 991584643 998926783 365838777 743809849 789611254 868368960 572966473 625593176 781195899 974140937 110808619 263933573 133660952 343094902 860777831 899117742 657977112 720427164 57066891 517393964 962778567 966016814 40644161 205778538 198872369 466518176 941553502 968305347 895517519 896821133 440035064 945691234 173406109 467050186 25588369 531037145 603016544 780359379 264145226 575421908 847562007 890051132 76708390 844697671 138661286 596195596 653737569 846870309 946786965 991082797 160963025 487553533 837820037 990716053 416010952 980977656 178458875 249741195 985735371 986817954 750594150 879092620 346174610 940159051 505112777 623569797 221919921 400115320 244418178 607905397 285515336 683966839 184055494 299045096 126375067 875603521 431285469 556113856 366204584 851508528 270599115 590511135 691480412 778469234 407996999 441500312 678567124 803526630 149137338 757032780 384365468 614847690 960020096 995212221 87163077 299226530 244242022 277548395 524697789 956449218 482362885 562914298 328213141 947746722 515900527 848105928 374719961 895103023 969157993 976899670 509255119 647846947 295182847 810604400 990847931 999190671 164777424 276382579 462220144 948683826 703415017 771149310 19281670 284551500 216676478 957394171 456536072 618504122 652846877 865552163 191133978 214459958 592661814 809691575 27223093 615199866 508769879 669473702 523010772 740235333 37222311 563316449 556914868 801715233 734677587 882391027 373027904 851215041 266605765 942901906 618275082 740773768 895039311 922706589 271262323 443110677 245855531 895245213 963046219 992078072 11525568 291150134 477542261 990844847 647301265 878025884 676940581 877243629 447708588 720276525 383033572 648294525 279457467 830755131 320337324 500540541 271822642 687342567 406858456 879981973 257604530 331702298 460536420 798203424 676192527 912155738 850383135 911748273 388274394 985651510 57338894 356607879 696095548 931158503 855967342 989411798 823351322 936382223 217379127 624496181 180955227 327825279 942899177 973561867 869630357 948658063 685731394 863981287 819021689 902732467 22248264 901621950 227932787 457499597 164875275 894184665 844178564 982162723 959281586 995277921 373576729 505495449 59919763 434981376 361340768 632794623 95953554 925334911 24996337 773998279 9811893 937744654 523194406 801806174 666224308 694566618 444879698 980240066 252875200 462938978 4578551 33843473 699110591 747275551 276873620 404509338 261319503 603412292 785808704 884208814 583574458 711119431 666961170 978657437 973708903 998409556 895465367 988387246 516231800 689905323 185456633 675131881 438359660 925054565 52849562 387180110 24048703 382091371 366267685 890190539 89610067 978440537 791287282 991181155 977804052 977923213 837459037 945995544 799807387 995357956 266026742 640770785 247567335 605707348 805704326 932783942 743061798 977479610 887032782 939732805 82973577 836369119 315089839 727679289 293537674 467406302 608170381 688036265 519653065 900845934 183475548 202174115 280183832 662175596 12008751 157550353 435317888 559858091 795743999 940217154 471461051 962297459 933370899 965162232 465999987 604256757 666382244 946458577 872181602 950319016 836240944 963464557 677739828 854842337 599001391 968633597 172048956 531169056 375432541 830534666 672952507 951845511 37654793 473812176 432497127 645586380 106907088 454193947 415773472 883301549 73437849 965552035 374286033 934110203 611336527 631167863 345462204 552444606 693127358 770257195 472898767 959595540 356084881 631173006 156284711 770522349 360806712 494839893 564248174 650538188 253862200 429978726 634550996 928809179 413684863 955399784 830460365 884225210 412851411 979806074 662397374 689893530 859370904 907119144 718564884 771427077 523955728 917662833 434808353 679752653 438931941 717557985 375869301 958536623 18368855 810600131 27457141 307344353 233490822 869765799 774471192 994874152 337860600 575348622 559758030 637409392 973687574 987684240 49935332 389254592 376657530 619352415 669621282 744876587 523254170 701266219 263356432 421149952 307942376 334271463 34751700 727716077 327218109 962462590 362593450 887004867 672493406 924438706 683008684 828133563 889962908 994093558 363340731 858268458 194217908 848684025 84845280 712112084 187110689 915642364 961552750 988954544 16999721 386879921 398466012 400462947 572681568 861088587 760288539 992725303 629714830 762321410 476033219 541062924 413754899 630412730 619313198 959836445 959810566 964079839 428699534 816888486 779087443 783704317 584639417 705032207 223583917 846627541 957728706 962870851 596663137 964525500 845362161 950934209 374909477 600363313 879230658 961224589 131089848 342257273 62460984 155652630 430741327 922967238 778258396 897875860 242919690 819870414 609485038 978602407 230299526 939476925 113925766 994938876 661885077 930759125 739390212 768388591 910687654 998792063 605375425 925326687 824958003 886793788 769597199 854081768 632500732 699918393 918952777 943853601 338857455 622173119 430159842 726114253 587614561 881289579 180120886 595613927 708984180 891663551 582872125 801515940 871886399 899733723 990538357 996649304 12838790 319164544 123138483 991727674 111954539 612912163 879270113 941480907 540235277 728017263 207449433 914914556 739966227 946403551 417435914 931171864 490676926 611922363 938989040 976155764 414213070 590591592 369246140 832255119 122369678 859615565 486641664 877784133 800679756 906487910 956128377 982834449 258956810 509832797 114951396 419901901 552290983 662864418 488881522 912348520 622966467 932866394 666312477 845874679 56780031 987966881 357907012 410741056 2603177 342668304 445541546 626900314 424458165 740380104 589710777 804993276 224059426 287696631 801366227 884377789 994880249 998785906 303261944 810970264 365532356 458919464 34664057 887666873 415435254 944048942 278710845 760183952 20417160 971690438 575800950 934087051 523457566 695043903 784720446 813909879 496946563 594884863 489907568 811476036 32815948 80809754 360420838 548180565 937693482 994405595 465448939 763634214 861939632 923050094 234661629 247972652 459985660 995864241 855660358 962903184 360928828 605161714 966681887 996172199 609519167 983075524 414464025 879504112 708379715 841321766 664699404 834976437 838468415 854642958 976815820 978039576 528184931 608557755 96042859 158987159 913599334 953803346 40919747 130158433 930429992 931424192 931934552 960205448 888265499 958869350 609798159 922188902 976807759 995580307 440754133 980977017 868168180 976642408 320565750 407181372 447334869 684749280 519439140 725334937 735689218 747910657 868123384 921304583 156483795 333726250 112075552 717987573 38765330 788677143 51785339 112161731 253993452 323616856 475957482 770320658 867858685 937390917 772846533 912773542 94865962 318616302 265770630 363410935 663647403 951373951 860212952 902912832 411326318 997029162 35059481 324836251 663581625 999539101 612330632 859651492 995326988 996780988 981764322 993572683 140462315 968855436 494043063 629140854 52187842 164604532 493167546 828077936 479404600 772783165 800095248 931064524 241259526 653461804 87963748 564082933 478500148 638592635 904974177 936682156 332507626 425799490 622680626 855246744 999156547 999338400 880432254 979312428 716670735 980625146 438759415 840124510 165431223 868537183 214618949 422448942 822008812 991345728 731667310 784195604 58233599 672944460 454824158 602466100 171007471 843439660 18076758 128115799 564875535 577240688 404383104 552081783 136060043 872004161 683543582 987939116 177577220 327976656 247475279 318253060 155796978 633982906 867362392 908684338 117101712 517142217 518489037 869373044 266321550 575709935 268657728 779487738 934125272 964467672 336655569 609732347 966437363 987430300 577557138 759196607 452673087 836018702 286855283 997559593 287985184 976550682 714478971 745684997 479128600 789501231 452124665 918730477 121726921 191485680 868477304 914738187 394291071 535446171 313729811 318554438 724801379 924706176 918452634 936554112 452864269 989846856 182026368 435386868 720387973 861188713 317516192 967624898 210683207 272582136 180800541 239735987 481831286 644027017 772890952 843174599 909608767 968052844 351716086 636150644 304935336 532735016 839384483 845510007 903900869 951185875 483991802 787424460 577236796 608492778 997054115 999558292 660724922 698059997 498159037 695942593 991033701 998730055 749167891 815249293 852996528 926145463 101814298 888864919 41546992 838723328 394835720 526240996 771345118 992488026 622643611 809466021 757168227 897068891 216300084 595754554 71658842 201849678 959927027 968897266 457887681 705815491 669823146 942681232 327454629 742451176 920101866 960364728 393329161 590456165 799719447 997494545 402199039 635859976 89686473 397299467 436532909 837925435 662974929 776446856 66150356 605613816 600625071 710455299 808893810 923636081 52850833 858064411 53587692 56950251 19356085 722115594 525475031 915227680 961027179 965998576 816666719 963295177 864055367 913724751 544127153 986866122 495202763 666639860 939473984 988191812 810613959 971665965 699669475 916194630 445468367 566834153 362068261 988389700 786417670 939813924 499860005 816332271 722863236 994834386 372754164 733324721 838579286 903892395 848907709 888801083 282175863 292702410 924948236 991865635 690098685 907925459 430357095 464913251 885060406 941833728 706280214 958638299 30503255 969296335 516281249 814386433 538491420 874723844 969753732 992405196 251053417 398226873 853422553 962575009 759139684 872797267 422863131 985796556 997488875 998748494 494144776 497907962 749206011 813429201 614823553 787083177 166806067 431454121 108892831 175951187 171968466 409260131 671130527 921620170 485416810 628885208 717546374 990325843 958414234 993894694 333349460 735914996 937292405 972564329 101805881 607876681 843419585 882681798 179746033 263639721 201942402 554086291 657587948 849838692 234577998 696845077 860267443 860606753 699008570 928817469 141815320 177992272 326796606 350923483 203703560 226805945 181382539 799532953 440037627 554812671 806535625 843465426 450623301 779173311 112378128 196217829 545969554 686542360 720473258 802752222 179741053 465223492 224730538 846184909 534594339 859372904 41685701 747870972 151947602 813446250 115753701 982724394 629636030 638893543 584699194 696398267 862998289 925353746 364978839 975064614 659189902 884478908 452540279 734277588 788776502 911274680 727049750 813764655 219120749 613227197 848895574 883209605 217067857 343347419 986325131 990052561 562923542 635852071 868981084 894979402 2250876 280603301 739317409 978232563 177806679 894728985 593322766 692081620 993131523 994718686 540433944 917411184 582953651 912942278 898528100 903799895 159430582 653547695 583407292 939091646 662742021 889830792 97072356 532827515 741956411 838114468 720416780 905831562 589370679 833312379 192611823 916142435 125094401 999440441 476990941 811095707 203680228 220322169 407136392 760578100 866060499 986350687 691996037 722038982 656180992 848431828 893987688 896892564 958772471 984655937 337201579 464928765 773876460 978085661 853949329 868351018 666927523 976472905 53341643 671720927 671554679 691530388 175826157 747410768 420142018 525838820 185966865 850374469 524693874 816276630 437850685 574497965 926828073 932647718 341753837 377056563 949411423 955742325 216756456 880450922 395208533 661296832 106269345 927108431 460534350 707559565 783790722 963417572 91541490 414891666 198089781 722782544 987650017 992034539 848494436 992863772 458718000 706084565 397178876 425308618 648930851 780926181 497400012 984826174 295036049 883104003 988127383 998370952 582742874 750820616 909067127 988006199 661316266 814469406 535750761 832250052 281126538 661576844 529955935 917232300 910801098 926284742 995661989 997003669 865468644 927885391 973589658 973614105 351397241 773283689 703770665 958420790 324620900 895414365 471257834 745755532 545875916 686481564 869211473 977231614 399336533 890549136 605736038 987741807 349074185 355967184 373005465 956432323 639566229 785336169 970345400 977417067 297656064 681264615 533204828 640833217 570684455 721504066 709038275 744172788 822522772 937359288 345930357 574888506 108057675 746906356 784757803 989237600 490158114 890045016 695231428 756277847 104059892 389293253 12236059 614208791 210525643 367978483 963889823 990695364 699142495 887115943 203194343 468406964 963471741 978331432 228769667 930694589 675897654 803192898 731220616 734151524 74838099 807988550 900656391 970957845 892949277 990918213 630039779 988500585 998088481 998216369 396479387 836935151 331762382 675368996 145072509 823831478 666257389 866288021 323179370 773170356 681680854 972202116 555434274 908827297 768352712 850913949 5590130 610459803 239743204 555247865 112809410 401037383 973563574 998469479 100135236 585887476 230990728 868530705 578863863 795300059 540807799 703500631 509131900 536579727 743674547 968571409 889069145 919661498 907418402 960457580 56794677 110630856 25118012 331482678 589187336 729048253 737636702 835241412 499652753 751013304 7038467 86344304 534239521 536905227 235434157 711713914 778312343 932877189 864509692 920435764 221314608 294496964 353406264 437340682 946948208 995196499 822876729 912628013 406826718 590673602 863292746 923626355 365392680 596504058 994211814 999448198 660281378 814278704 614498403 948886600 815025446 969957442 624282280 717698159 319665022 690036211 861989671 978829884 88982956 646677205 815003223 951053210 215051615 857556023 592079358 947002569 479857627 973221824 100904652 892495896 553332418 791925707 495625864 798989773 37241490 452879358 837064087 924561634 922824109 982255540 590092678 734530826 53896367 131436926 875528468 901684300 985488527 990476612 509817004 969567508 976301831 982755330 268484259 937424605 714448632 921049739 124723116 542243934 315652569 828356163 332399346 909620934 497604482 964470755 131873578 513061746 347273069 659809186 48928212 972773225 560830811 806737812 706736644 806445589 983927467 995241423 998189049 998278817 579419323 624169898 350013430 566308403 934714304 986256724 587496040 810619248 770256398 912691762 650231401 831255035 347529413 457794099 703838657 962780377 195264413 314792512 486245223 985767857 285314003 337543329 805249471 918413971 751304092 880434787 332210308 944093764 367244865 572028421 551265897 630168245 751924971 970613150 113631462 455547917 714437984 920807138 994403177 996873061 865040747 891416820 721121101 857810118 31796791 486892294 286199254 907984388 287368427 483660734 38002117 954706181 945960009 981774358 680587989 840688517 966169085 970429493 66176165 564361448 423177495 592106922 635650305 908090821 420086885 452094360 478243053 667423693 615810109 953316266 430628528 544664430 551810848 721375653 143125812 801101715 515223430 953178122 704535932 884561470 242928546 738347630 299107003 873322533 251489172 375216806 350313246 435267839 893872336 944958080 301573024 687934875 884458179 974171143 52779230 815528665 635949400 937109023 298717219 997975120 727026913 959821397 942443826 987609822 744533465 982212471 667999101 952042703 117558072 529492058 837916320 919040536 728612312 977360856 659235597 936377916 516864407 974010912 966237248 974194552 670349785 686147578 107954483 450138561 832742346 886389966 292486221 823621732 282209329 430195126 822273255 923078552 960166291 999371063 480212317 902855450 643240658 948054201 320670575 893991642 60834624 750884266 307366601 819035013 733768171 867764841 208098615 581556701 744259254 762545729 783734693 924924501 47886054 474782188 478094825 967601157 359067166 498221771 448518072 886019435 311625555 841876658 756445995 810689862 87300531 467176536 247128736 675560048 640124391 785416934 913522020 980356376 45761099 510252473 190480106 437230984 552419374 941564925 589156777 805847419 70362837 761763480 614160307 723775141 69615595 340040231 693032170 927147908 644739890 737451919 963270400 964644376 124059372 167926440 366207779 577021547 254304669 963318296 104991216 110089333 818328382 934449603 483733426 721398173 875777510 904447504 163880599 621575732 879651276 958199943 160537128 464138455 589760948 710207763 871085983 989246294 150997362 744348843 775704388 987024854 527557689 751836082 736531085 972148733 456200165 589757865 705802563 754960600 400953581 589945357 778268747 903459676 835994130 932063806 247025529 737034218 625980773 980982739 375515471 629789491 390807723 529447810 273631329 349700632 405761579 845778020 118685961 501335113 568683401 987657152 866399325 901800899 695070692 728905101 459933534 460795774 309239532 735887140 436701818 515468441 747329098 826736643 176514703 327686739 598478139 934237197 891771739 914438955 803512812 911344846 191374575 755414238 907268791 999878086 379913209 433695068 156845312 705156019 278276003 756458239 518646867 580373805 88620466 577734219 255182242 974816520 902565874 929921560 324779256 669977047 630209374 830686068 223387421 612521161 559208151 739227653 396851139 881683930 462432236 959025140 28453270 510880932 913727663 959286958 515086752 567069865 17011039 97418872 496596196 630768119 737470486 990496959 102463129 619417265 962906791 992275528 691133214 763697802 640743317 920856417 284467956 455874519 165357045 415536248 537314209 778472108 41401750 368810031 782601393 814126468 502626269 901293792 711616519 830826712 302754914 639526915 333451354 903492425 779188601 963667785 253776381 422991078 928872752 960659739 736576002 957201656 844159481 951127024 445790229 533940295 236282487 750221116 173963259 950919107 898432451 922981042 140415947 957072850 877454549 906867988 21130428 382521972 471984756 740256256 708441839 727237269 309175937 874566313 535209606 919892761 145789409 201222480 803792409 966527806 586325428 606048543 342138172 931863720 293727177 570662370 704725958 870167420 818555814 819184926 438744041 628751212 670519235 702729351 956566829 970865224 293150815 332216952 943839386 981778997 31759564 105588977 431839724 724876233 123297135 946383857 302574553 878091620 579657028 966062610 153814582 173131339 932564253 948549930 816390829 946595570 312472133 448359971 365897640 738253686 273868846 930944639 744255073 916585634 420699141 882132676 780051402 961732720 297595451 555418346 724299327 860044122 845334696 877713045 689873920 864010267 982165234 997939467 581553641 865266343 485695319 651569488 68675864 244806714 128179921 553901550 668854044 769428335 487953253 557595818 22928708 486258402 142484765 221313265 590305352 994967713 326410981 634786424 296512093 550469904 267407813 616543239 404522429 667085598 612839029 938322349 364178747 373438349 569492044 626230373 758592831 769431326 42736583 398597459 592496613 880145159 837153110 944937079 966837245 986537329 156834379 341626546 97626638 590750970 44622367 529322558 730193507 784778757 473440225 958398872 268320114 299729091 792155851 925915052 594951224 992061103 447916949 917478211 88315852 531345016 628608441 951346204 759774685 827913098 36907305 660433418 186590136 971255636 985991615 999734626 23684990 56128572 379122761 934642697 246101009 628041925 211559568 648845618 624687935 839380011 774389516 821681971 129459076 529405700 320790247 843338298 936499372 998689495 691401115 846632705 311677829 777762743 285945922 315914988 820849485 892671737 773821463 810048011 719238676 794203251 593263755 606765095 407380005 754807418 184850113 828640925 342936987 637800019 486627302 737058897 658844113 920930201 135878204 804259444 893763244 941417411 766543252 924973192 309700250 495148305 825794884 931344138 727616202 736002950 582280195 586793539 161870581 934952706 641034164 917573985 795636049 813268040 429429960 954190069 235455001 627324770 245590293 495613443 66196630 762794270 218647066 343867435 434561545 518766321 204860737 313157711 331886555 478726957 678556756 765101396 377918058 467250782 615546931 912918930 871697192 927102929 462635461 997548968 762378871 956118860 64403027 495778670 280499772 792267417 922224573 925829819 675175647 982996007 489855390 544217733 312299278 710254071 845611368 866762852 168839258 227123782 11057479 505812780 871808522 897461934 689991741 710433318 829331642 947429506 821151538 924406500 396807926 430344796 708716519 980690376 360229389 819821359 232577691 995526780 169418663 675769535 30313556 476077320 897919249 957807161 427807945 669272512 745349328 832714704 640548281 985456985 55932696 658040910 210332610 602596024 608983146 771423253 170639064 761849881 40080525 747126678 619293755 751353462 239983707 454596683 248506172 852173173 480111394 755438238 108405023 990449109 788644022 974372660 952314772 967605681 715258310 777817826 899986492 925291755 645135778 808100199 947672318 977988247 321077442 654616218 76928429 928191652 898758178 951147145 945133232 965853960 895685432 942377119 597687715 996102848 563202411 954192908 506551198 721326089 780645362 888971475 448195498 803032158 453049471 596878640 535444970 981033478 355338524 820377080 90500598 994206359 787702882 873452264 815620387 900391006 431506443 673419617 527521855 965418732 116319780 601239214 539500635 792365581 444737812 984315271 273445481 874836417 395195533 802953586 267815312 346743836 331484769 614051514 150277318 907801963 37018443 681766960 341091823 374778085 858297666 946293228 788581109 983294393 929620160 992007399 698410531 898094657 815518240 854155776 126164386 365369305 380412500 904588448 355682616 586620995 173983620 996849546 333496757 917992047 484712868 674942497 636866708 731344046 853184922 951451632 831261423 987748640 624112188 791382463 918984940 928794629 616930036 660233240 230814144 863940656 410092108 783467469 131364539 365409044 57598591 563463445 94638129 201934742 705122635 981921064 843987620 955853616 504563597 689802926 255133090 311438082 219280313 946032668 549772221 922114971 288528552 314962321 785345583 859406597 233396757 651076665 820706735 932669399 941056695 954262301 200901669 270716147 913475825 959532480 273337685 805216599 177104313 217758430 33865026 917346659 521152220 909995176 486510090 588447032 313938613 905022651 62291788 714337167 69413017 545857660 641243102 888016264 402779126 932392090 145200610 714736419 13220362 85808311 770611972 950779944 872056820 991713367 440846839 854298490 801244065 968661675 628385677 930047807 786634862 818187087 621213302 746308418 809696479 849714170 124270021 324719037 197289030 580150072 288104858 889107078 951101506 998332865 482565355 843979762 34416471 867697791 18619884 308129513 505609568 789650363 514631784 965096822 594141014 957541794 284818473 491519280 139822257 782696299 145581330 253278742 555166103 709682917 121461272 793996824 949167988 994463684 897202869 926789260 587209554 954152832 703995032 754997297 169993762 359922600 387058675 956415063 386531949 700069531 39524370 821521053 517990260 534126659 232306532 673021311 612372697 939836343 607286954 809710165 298586094 799173805 571142672 879476541 495487135 601204392 758269000 787632392 221546035 384471559 117411623 757967599 83014257 649513963 137250528 322362391 323481558 503541314 47861131 402848244 741622766 978854751 803936880 886699804 463633684 953942882 919314100 951756946 554799198 866433524 790106368 875751500 430018249 890368142 14164500 345712100 80724886 662619687 636222190 681962781 32749437 965767809 290409462 408912363 275009906 589757758 861246235 936977215 330242256 592693882 225011029 784968199 865462232 958328212 461162056 754803402 616169170 657443931 880729134 930029434 58978271 330103390 143184649 697819777 491807542 535684597 786130397 984853803 329670733 884944670 405912266 887108701 630937016 876573263 11820480 859673307 552629597 726060709 560017143 764588508 489041068 944508697 451137429 502491080 822004519 919201973 308072659 974999956 572033271 682066723 215968954 750955208 932391022 992874231 219585344 843308350 44418047 516929493 886562102 912640772 728370211 976544810 300298170 408404755 13562790 866371428 361598283 892509662 757659542 898426035 940844036 946574822 335196097 478517527 654156880 773980661 149853104 785411366 534908887 860558277 741853902 753325843 162866042 473584980 433297340 574496456 820867061 867290948 148081960 189225444 716358998 825005780 78947056 966552736 795407254 931275909 915185551 985677124 933832147 962827413 196875021 357580164 762333358 792376541 638088102 981271803 87287558 630293888 748428144 957233193 445733210 838069070 607744517 788828705 456293942 549306556 630446408 681551090 809611985 866255593 870283392 945929263 645251030 645633241 739369982 874174286 459260316 565586657 258017972 282902531 332892153 603701009 744160211 817777578 184082937 340794622 976626560 978386646 580744579 663149366 837263477 976351550 315312229 986749422 486832212 889747685 517113740 821927798 792428900 975631356 234730781 935208047 144343646 574507717 643987249 645217394 805448166 864528193 283048124 608073340 716498404 814999726 777933985 882453202 862806530 885666968 733734352 765461422 746099259 933970240 320046188 491444132 957506821 991029399 215436181 233024761 275263842 896514906 540207805 801913611 616263483 807804320 729140613 766123340 502487475 911079011 893929048 939400403 81371000 721428048 784498628 837858323 347843109 947343921 355692621 455455515 40721595 147954468 364725711 592178999 436130101 613708668 516295816 929596517 214964318 794242707 83780877 664445672 465856124 795368217 114523495 455281440 390693596 569565891 613605814 624140306 464932494 629574518 72817701 312064149 216410318 475153008 80728340 240718864 467829876 926805781 396431558 862735856 861961018 872133669 875367467 965978024 385748244 998000074 466280290 828273133 862513341 872636591 436340809 596981138 861619712 941093708 381461267 670276066 341183709 428315854 653948178 739957594 980584819 994700131 254375077 344202111 872990195 994151400 698295491 783821879 24005951 514845879 102197969 146167581 222896738 411501569 868189473 902499233 679172669 826575013 478561930 652088497 254970493 618593133 640748836 726445638 499504932 868612054 540778487 692458352 648585130 809414824 916023451 952580872 551980449 895852030 913180226 958675119 679099395 895658180 833874853 923804458 673126887 791176682 346464610 505648298 889564996 920130504 500089425 551616105 433109873 750161409 28358377 544428615 620183613 862745297 361764580 835845293 793887809 853646234 912228989 916184265 700265079 712509408 657335050 980835160 659792272 797822169 639356975 753337795 11006046 650707605 314284904 544796655 929281252 978255639 657198323 883608808 282536244 639746673 455852169 570552163 30534840 773693692 582144302 869949554 432230840 959412200 785156163 879515988 126585102 146413506 436340987 612597356 667095503 889906198 410866854 699418690 960139856 963159226 457276135 905521256 924239772 939043444 697145302 751339241 772426068 939204673 750757866 777329116 433736250 756136701 329213570 712561396 272568980 612574615 642677822 829876795 721861695 852004197 861756094 957350279 310205581 946669710 860686058 935971029 187072480 271203257 443057562 938850867 672125387 911426029 376290434 722939850 324791464 834852050 637633883 716897105 890321920 958526176 793189239 945345929 137201277 898063567 212804083 523980280 263774910 284686791 106442767 646047393 961427891 981867709 686071433 762315694 885460329 913024714 607106447 658329169 20966853 448383717 58831171 810124798 203660390 336359857 622207047 821875033 88888742 564613083 779287435 911433750 944021465 982840058 317798467 404004613 498339573 961160302 914785592 984004380 341226723 419780197 744489738 893685045 779860161 853370098 292898467 396821568 672576530 931898384 698983961 861886500 546231424 709203725 943177337 976688072 587330950 935107356 639925851 989221234 16147730 978197849 512094658 840990731 400733909 422701597 398229837 933046003 492192096 761738828 298132279 780776966 587631114 771949228 220120976 627716939 212235258 829687279 907787726 993006025 743583008 929959537 465814736 526239304 714096345 770971804 813004390 997945713 430163409 843862092 929255967 960113089 817934506 847201005 635757969 767416205 935082819 974704679 944345238 990018639 761788415 906592607 202995177 481096568 617891687 883367423 573624738 675045102 949541758 975629109 90406107 235602840 260482705 980282482 856960487 912207352 184793693 991229476 426787097 737680402 603970156 994702698 477094687 609188035 280459777 830356080 873268868 951640845 233514162 968088153 228985824 314038228 174479425 455253196 765937991 864252337 832968865 879693695 436672801 477613484 341445919 711178804 351210853 956922164 30460445 799687454 279805895 813998872 189914356 551412385 583376012 849213037 479238000 814665530 529113244 674235471 327586798 976696206 416959080 800778972 940419900 945790618 690245660 758017266 610057516 941351988 141779986 837560140 450662849 591603621 640273754 860926034 913584662 960792932 532950632 960906947 166709636 515870381 759493453 923076958 509558834 811863142 567157097 635594849 768814290 843238286 478409246 568128991 902467656 910210561 321793721 784610572 713402771 979384445 640916260 648088622 207185927 690106645 494204080 584137010 820205964 972845205 786199673 797941151 691332181 958835183 367389153 587815968 766922780 774418978 848330942 899712497 298722264 529436146 515604007 992756034 815146067 989892744 327699256 893155815 203471349 712554869 697868784 975953911 86230577 601176104 64978053 759726438 486555432 513929944 459717143 735929120 278011103 437026204 891517686 900061149 317338534 704634748 113017233 348311215 335229104 754488228 896573457 903614687 679393423 910456411 945065911 984855156 541946770 596682206 795438513 867825613 363751373 845716966 118601889 976274068 535007148 839132775 99516833 126397713 445398851 769324932 46807818 614752303 209421336 902976043 852071477 914424582 890901131 952581933 988788819 996332527 305083822 841210205 315706255 873006831 691483926 943016083 380920850 965192036 644354858 732149982 261643056 428372341 777732803 804375527 10651605 561730798 654805174 945240807 7307576 795792936 126973409 526963947 205686528 499028808 438832933 837166228 542678867 827691244 389100735 718340837 748551988 876712400 363490965 490903329 734619812 892698753 991673863 997274916 469636570 998679146 689447539 985834818 559925932 566329247 245789863 532556884 471601882 522500610 974323319 987535525 507740360 795536723 494813265 592852069 602156363 810569365 992436077 992830973 305231335 743756534 447766322 852014377 940107669 986347794 436668103 451416089 811547448 836910544 498995763 767175311 237461752 276484703 615288500 991261067 621545113 862088047 116165037 979220641 685619297 979050597 57801169 159294865 609473860 938425351 850854715 865119014 460684186 630996221 459303521 720367027 691398116 961643433 71616526 273029836 257513162 799141569 624791589 662055220 562266660 630707854 442397880 927585051 113744835 275528048 238838177 300472745 28429767 710584629 235201699 269208783 136433629 865898202 641286577 887645152 297310496 350104204 769659698 820817339 956121264 993950099 31678560 810063671 640933034 981213465 73314839 797639248 532018547 798242889 885351870 913030263 229658370 431488750 383523166 906120453 601394045 775131863 46297813 492183694 619613668 996786555 612136936 726234123 180411917 406982218 947740664 994641725 375186914 389041186 751893915 912204240 581123290 917749047 616731090 888699245 86935059 301977649 637468891 943736446 89565404 580492042 906979498 960573501 443718633 940457517 619042124 998560020 377428547 708905585 265478984 467690294 79068444 860731653 468239561 797732083 987755050 993086268 246672083 438451656 181028389 855710500 829622972 928228189 489095852 755030585 62956486 919071617 43393054 748454257 31492056 404499547 867737327 875415837 813438332 939582134 640343215 650127262 306741981 511269668 833794910 838691498 586006793 612637557 647969279 836294824 220150611 620833137 998928718 999923608 599102785 871413502 448190578 616254201 412711567 468940850 498537102 872478385 418076750 660711078 701168093 999623841 93486165 104308380 769473998 953783829 93979532 956893549 763585425 964271239 670037743 914339567 976129079 984848547 391146001 576972763 613516900 988334211 222727311 341695869 183097917 625809238 142804886 184294476 527562950 626748092 646263961 782226511 593877965 754187845 100540186 177348432 285343943 630739541 932559990 968082302 89164966 231161212 167371686 242486879 158616531 225660315 151217046 333174683 837095632 979692348 540952047 608292220 425192829 827923548 819972087 915034925 129407022 170386223 804325089 817206531 32764517 54032958 387181241 523883522 287229581 354729454 915604085 948875371 247312749 248959752 340137172 911221399 388943990 832969294 479485101 724515850 706428388 756776196 331668832 496371063 52577649 519323183 397301492 938054726 318788368 499839292 8974475 921500733 320803739 459712102 542743866 746864939 812543017 945452371 245142085 846129177 472707016 527317011 958592060 974842963 113874128 212323339 856966489 952755361 419130321 846317112 886573345 938701960 949316511 983050168 816756854 830277540 971418690 992709056 273645969 872148380 753989638 853121461 342308654 884170002 25034210 333535642 127987570 990020911 385865156 576361298 155997399 991032420 708161616 908539720 545060696 866248289 664047864 819619176 935775395 984795800 118435117 158680279 424791501 439501108 213857980 705454985 432887988 644972992 487724476 643258403 989852853 998292240 981925229 986768380 384265452 730905744 932155072 989878527 657967368 814551531 485551562 629690822 541689791 606695718 915346820 956999736 466265504 504106535 995031742 996381978 414054638 956445121 479119926 784115687 776952494 841526978 981363932 987560919 393162563 421879637 331315193 449457632 888155397 890475720 646890819 891637230 175991530 508158120 829809824 958478378 340049617 601337280 165343377 417708372 738274692 802816337 289057176 306148472 21570300 116189557 760710977 883846365 68079918 752746734 863206529 919888334 97294743 811233160 911710709 943855766 469583513 628505536 682891444 899688821 429650080 608750499 136725416 350106627 103613855 831591906 255348869 402521696 629740725 842262511 562696731 569212216 858780628 986207265 484885211 891032972 16239923 742917370 561968298 859753062 489365982 759244545 418003918 688976887 199285412 566901366 368678483 589099707 892455172 932128288 764023793 866705061 412373153 668728618 986231232 999866230 214328311 880338443 895592442 983260544 711773532 936856057 890965160 955147245 214575256 425759873 623539291 734975658 776701051 905032598 145599146 711618820 286677794 355361117 282680918 558533223 507964294 745726662 767775945 968276465 788625664 829442669 817831725 880003590 97120385 321985949 812160226 834048823 389651828 574663288 769211983 855189050 525037460 527433220 823440395 883995581 918731686 920980036 700958419 867258136 964299381 969439632 858343427 944975457 527632190 778145095 839274113 840312660 884728458 886948858 594068341 874235130 755842972 848529414 668635319 927014510 944984142 962434187 401931229 858687827 845898419 926693582 118210341 918329194 548364468 953104501 42340889 281989288 68521854 211026568 638069656 975115590 91946043 264483511 171236418 710896423 485081897 924132487 965653776 972671572 439754318 656542338 252259542 843997908 738246410 822188599 726969417 940700543 748864923 754625774 246992670 327295558 286200730 648114669 448247269 979311226 915854089 935442878 674800987 863002094 655959730 694212010 884014971 927976814 24527057 996986418 211347776 469824506 363234618 824380775 867188760 869712497 223978700 824365697 183922840 270446105 978322598 987307458 611519771 631579267 713654186 911192263 101335809 661789404 739070610 826750992 47449157 786814773 913083162 942119604 925450830 945760608 752613690 902951606 956137777 976582918 494038749 918039362 931150473 961869926 952668590 991292981 413056515 887852624 162745642 538841738 676204508 978192824 356273075 806694527 751074443 857472287 274281763 441216467 824524726 956920097 657067897 816510849 356315946 530042088 534299393 643114862 649989145 852622488 106649349 409362170 960044097 971399490 205268438 251785618 902132007 949530369 299961399 481050206 881298244 949616321 369405108 906688375 284037760 805133010 249533862 438996929 247854881 982011481 782766113 987853148 892485953 988743030 137749931 264751826 193325034 758914973 71337838 717571842 753883553 843156173 845197662 908420595 32162007 101963745 504143709 973585381 857783688 975467598 527636910 762016458 87183549 456818200 386752118 597439587 775735920 956551620 294989390 425590419 328467511 414842941 512734496 703013902 167368097 990420796 367492703 948812933 682808981 805333471 531238018 857058769 596072694 941334039 806531634 934904185 990424962 994076564 211175399 806861518 129525729 638981851 284876183 367763206 609521077 663231161 417030861 738597068 477187065 512720156 768775326 811821324 877912801 998720895 547881262 601888948 553143013 725379821 255049868 426445989 222768490 865385065 520149513 817223825 178442086 318936890 223083095 920525229 197533501 769581432 698628676 807417547 615235065 820315386 136223285 655198857 665056561 937539971 170529852 887853381 153493350 394910771 372755667 986309439 290935050 916894320 348109029 862127934 339498179 520829206 187178239 890804199 69989620 434370701 517262054 910304275 754663585 760337383 665419724 952406426 585295133 790550733 330352320 789825722 88938459 467058108 199431111 301272015 872104766 980054737 661559645 674088901 859338480 890415522 144300031 458653485 945887579 994252897 992148807 993636963 654900081 988140637 183277523 966517016 233935927 763347891 423712865 630854661 343934061 659138114 642860696 945432760 53169583 169079949 815661001 907718786 323431505 866994763 170376117 845005402 376363344 433192574 40195036 689604068 512528601 530047341 757324317 798560405 630272137 860391154 67147511 153977030 129287222 732551052 693379600 731337252 523216326 775381789 812794248 995766265 344809976 937775992 952254385 959707976 341628868 830903560 538050170 819574986 845939645 913117703 591015493 791596166 285091283 920804977 755667604 785634872 490607015 835778092 921407781 984512031 206117017 652883461 115824159 698736211 625066848 838706268 511138764 944036316 481801298 754317314 152158905 308112596 63367737 719355942 270851822 970083069 26672568 638870257 710224629 928186902 383855690 409201235 132133493 496990413 577285714 928044523 858076864 928980412 654792225 744386101 441802628 991766708 148735531 524313200 728488141 964852502 12349785 868335944 159913388 418024241 896199491 988276254 565800831 584399669 257095937 522035424 219887545 380621927 330486750 404277103 635368859 998964641 362555223 866347910 801829718 874989163 891006471 931463768 979142722 980973162 241151077 443379647 434349852 915517102 666242903 737146168 586115616 913085792 122391219 794454939 322160825 382985917 549205780 659534601 423707041 456847518 722656932 726023926 930752073 948815024 882767303 960472240 292556724 499621613 669836100 752868584 289389360 305440868 537036912 744223787 45756106 404410490 286075942 845068952 349899827 993630240 530288768 939557961 382389197 667052505 34115021 894348032 390983842 591299575 243275238 611359720 393589383 729832674 531907260 894440462 580175294 943734350 483288372 662323707 710486204 881954108 159963532 271393197 968239587 992958821 509346317 553684731 823278855 861030213 730398691 995884785 250225872 307186981 378142275 972834034 595685773 850850011 227399125 881546857 794725549 905580297 357403664 586054319 277032381 486040201 204557190 593737144 403809702 681058659 72435510 142946621 696415127 822699705 886845587 990756680 300302403 315330538 956676799 991910749 55027207 445619438 264889434 357990347 844434810 911075070 587972131 749408219 350670334 853200266 822441628 824425862 225657092 968851138 909292308 986246543 81570544 456879596 757330124 944379704 71074140 727672896 982470225 995028789 117723289 337995463 633624598 668545283 598379444 919956290 894877773 908177306 422565745 484277015 697222582 699885287 193752484 829337043 972120715 997843367 230605576 983471791 712061251 894624491 737684999 974063472 637775992 732071067 587434910 779261125 908006317 955178623 605755950 877615269 565682356 984671924 88629777 961779619 589650355 875871471 876433688 965256302 91813509 134867265 993294097 994571181 304509724 387758293 994398103 999641853 726831498 945751474 223026053 945238330 68597650 833197704 526271617 974265590 732407325 735813869 805089411 901093810 865707462 983065151 316635631 400205948 729512640 756578774 842924072 946898575 839315988 940138977 859276549 990730927 175959937 576212567 280791824 320894814 896232904 933705661 860844304 928578770 520474777 655006539 117591750 533293608 804102863 974258337 333579830 823877935 36252691 850216176 318591150 352464771 944691236 947054015 427881351 649905830 592242681 826324380 639229307 985164239 344069045 662225773 788647869 976699039 166415262 983376471 228168881 424425384 610914767 718907431 536297659 649076483 984550881 993913420 914048735 938852094 51756398 442319151 913885073 981527076 299258081 717648918 881801270 920786212 264271016 951707355 729503231 729791430 231464776 615242154 243451091 993586853 399193350 540682276 694122203 928075188 267014253 481320454 535647153 615619771 747092509 766116158 711516914 906499608 7219602 308986399 492685651 939506235 231840175 547038953 830523432 927404774 507943896 844208065 355757066 383439798 889951163 974730488 433539515 550918478 517779777 962662683 370892558 790224137 355284344 663701009 990283227 990844829 996450272 999814975 445393612 730746839 774007586 981165957 573400378 915866250 365373345 467214552 552712607 685601944 987328523 998895603 965523597 990738788 313916319 686121716 933865986 997026675 3471072 350465158 275986161 490990239 388093458 925164131 31068514 850896798 57164321 357638841 859297070 977218102 643168328 771004153 983078736 995343274 68685360 259412884 809892883 843311755 679814829 802731727 902620945 941589098 439409073 444648821 147931509 772461117 137962570 571717241 568486172 919093217 755889755 975455599 236032438 512804744 203805898 878076954 990233934 992231570 964053382 976457454 139357061 184006770 553436063 847872457 144881377 924677246 200429861 498725574 283479358 501294611 851553639 975146611 54838181 997270106 13666355 943626170 153318266 587244576 759268738 898575314 75495445 175538297 971731227 976192466 493065945 859981763 647743544 909979680 415696250 704037658 942971039 959645900 377751546 705965941 231001362 425829983 988194738 992492275 137133684 300162140 972817237 984871005 647782694 723351593 364126046 742217324 488895330 686671313 68606068 520634350 417131807 881002091 252199752 911051890 575236895 933061048 709756148 787591409 907451861 961333028 874495246 986597519 493751896 558328326 910661646 927431189 707936939 975178395 219041554 716936193 523962175 814704882 394540741 628051958 675021249 987941184 940121122 949735863 706338669 725997885 333639748 398339177 750309532 805789611 829222349 904022831 719117066 949040694 950631830 969900533 250719352 419555704 481020712 620648169 561954873 995928863 616951134 852887797 177798452 504522947 726522186 840184425 958703962 981447795 421671690 987754017 833961119 904881581 726797204 765156863 546430253 909939690 741918884 807172351 763732008 894906559 819416348 905851115 304554395 938675587 649291602 682505849 329530692 417885852 252980566 408615449 119065419 146526424 37585647 493437559 505549999 944177876 772044089 995375575 835480162 989116364 100070528 630742170 121100775 399307032 136374558 379870313 632602298 824947839 600978290 959523212 749042699 920300819 868319844 916647217 739277730 802982803 275321269 356580192 70359707 222630360 739757497 982622265 534959346 820468152 966881912 995023654 310271282 326601064 583918263 778800691 956334479 961808778 934304593 970063543 966708569 978046809 66431443 737482262 577326598 885926228 238995336 905299174 929183412 993030055 57367868 355015387 896358678 908633660 485143695 707168730 574025018 976362170 710694373 813375266 997857399 998800070 229370565 611403835 156941538 594598659 303831158 348048958 22836651 247837965 672241159 848606519 201121574 471559838 802767765 906544314 193617272 227579979 565108049 759130123 512156159 792011425 458776441 987008702 54887356 330030261 257561390 832427742 22035743 237425977 613973924 992697183 433175628 466625382 368578241 500842597 976992720 989462709 875162918 999043379 748359770 787508994 874627228 934651148 723940309 953864140 27960740 381659286 195963864 773094751 655278660 944759878 562787333 699016988 162055632 823877454 114706132 755140927 917712342 926294293 870467095 937807763 181808028 786460564 774014081 793329987 592963304 819142214 479679895 561847802 852972959 955181969 705444582 930222552 305739259 583619450 259076229 502630880 283211743 784940648 508414094 758828201 666364257 724678704 617504669 959918870 792965555 844679792 39396629 43303211 754945618 781555816 766015024 827248355 819388550 868504258 518652896 556275303 310011299 433119519 4702739 880144201 435539842 459981195 63210115 451706011 107125923 464591736 136668819 543284664 968869507 997109741 402560242 952099243 44258805 893450010 666107195 989811361 16357570 953180621 429702092 516620648 288308691 669365260 63718012 446757541 641100050 665467785 831629694 898015433 981143762 992991712 77006128 242514818 851314980 985821040 941269214 991818071 465798476 897242432 161931420 767685572 610162727 783762387 247663511 899599069 638938457 798093476 34333821 481281282 151555341 967241875 470632792 547999563 671981389 931356910 858799658 883349449 359954745 924428490 397742869 808494630 294936829 368107328 846393972 870814733 871285030 918046158 409054903 777536310 439490135 460225945 3472433 766789517 241981619 310592810 709903068 953971754 268432000 850161687 56615193 801735307 133723057 244841182 746296792 822145229 547081880 601795904 764211248 827261917 872364860 966513748 829568579 933496270 839564530 920319851 311647053 722593442 411126977 515643113 722651963 876796382 923946941 999356079 213459172 722278757 207000647 682035646 564678457 896912745 434572749 681200830 875639963 875762545 563021362 663131854 664037342 986086971 665573807 999452697 332347261 365083375 592870983 625142897 515385003 681504362 157352342 612840266 753028497 886639016 441457657 457087134 615596431 936504947 745819987 932014536 695242258 714775639 218330783 528202670 564262223 999284002 987191840 993998530 293136733 347633917 559916905 700219638 44940711 709989279 397401573 446672057 385993094 596697831 776857156 890430477 254324310 672678729 717839743 748231057 342448630 986766503 69336001 518294800 88851608 466468388 593677118 821688300 811256483 827366733 819276750 971416346 892118840 899777536 606356271 909634710 390538869 497336871 518489734 726739292 799059599 886472669 998536901 999855181 304031800 414192375 627428206 731690802 54833359 466533031 703807834 756121579 688069837 998148352 911823224 929953582 994164387 995321160 766223589 902385477 853266967 883672909 254957182 659541807 484381301 968997835 182896053 504799126 525696548 906972023 733266123 901199570 821008777 903614475 335871179 575959838 20635175 445340681 197641691 484145065 543847532 878017668 55791601 170894039 863756680 991310966 360465682 962786920 694722441 898809649 265152107 788647697 533936457 572888230 804182964 880891529 168628937 924426888 919307992 932739724 384520452 436831782 328622098 802982467 379557325 424412829 91440546 290193582 529509103 896464923 279684442 803053112 566682671 787772498 477950640 646001688 43146102 305135126 780121193 895116545 788099609 942437013 122458593 994888986 60708305 666817228 856756857 893770649 412967895 766987801 280780365 849974429 493250220 493786075 348371078 352804135 983877570 994952435 124146804 154082163 489882435 910500402 888052299 988505102 764797368 921884650 888551398 920030335 45371626 209428055 315896589 720737568 166315827 713472158 966692982 993948283 281554388 800944590 468398919 576457681 286843475 542652305 436367769 828129047 199323427 906626603 558223605 582286169 286859490 820366217 574235014 772218593 624812421 727472243 353318655 980480276 908207009 940972527 760011108 928409016 573855421 755412212 192820464 507607306 265448092 353739206 375768359 799503115 125952126 289809729 142451088 397475096 812771151 959286922 401606635 693682426 507745171 702545164 751169093 913560657 447890920 894488508 468647285 843311081 112117664 572795875 587177930 927206822 296203696 963515219 83565289 919926470 869911153 962394682 438412358 540435212 896466689 997332698 322222519 903429488 687391445 991415689 36866766 504254827 429059249 693538780 219322547 613110484 441064386 719569959 920640474 969192704 427202790 662249623 436428001 889254448 31487898 717608067 585044056 799038033 906987860 956142704 34348421 339153150 208357184 433156220 90308493 654658106 91970910 129868120 465841517 625630766 428694859 535297085 939954555 950876859 226439180 696308368 142481824 296156413 862547231 963562393 995111821 996768256 60932677 683003194 795018765 876415194 677487128 868870275 722408145 931915223 824126528 943106403 581749246 760046664 242637699 674991615 883740501 901141853 108269744 331252262 537120277 780670444 970650655 987874246 820148140 823972522 578972881 905321603 345836791 435639385 748031455 803427639 380584554 516311071 719308636 903698310 865355941 983161570 44934067 945453260 721631870 893238851 802437031 901009579 561266495 781076233 391522401 515033954 372192798 944140963 45884762 561451913 762609969 964220919 148127623 208034863 332548576 992176561 52628380 962609629 593676486 722589518 14531558 814539135 358486981 411458071 413116431 674467553 434549492 923225634 281640372 287246547 915233559 927466689 81550584 628717782 374831786 893511319 916399360 969970118 508012441 636788044 65985122 648602372 247069716 991965584 910709565 995768837 512697570 984279102 396373197 448776534 929965446 956216073 57285739 629265642 336324867 564252798 518965256 861237433 822595672 966433252 988251875 992338627 472857789 982199462 953749252 972889864 32703025 945468795 683320889 751497766 136047105 418972949 15849937 939556139 369598851 530704654 344541694 743178137 133164661 471997568 298027542 837067079 379199780 748092633 984297746 985466915 714469759 966599374 730473842 923942926 887761030 926087078 130744666 148354739 399068576 555614285 547626750 608385613 369406429 764109406 224335692 656315157 683148463 727587678 436991726 523731990 739357606 808558633 784521630 967621833 739647524 745011035 801188390 890742417 637300447 913956255 691563812 840385042 237016995 657118676 184755877 197945393 470604679 868150025 488556809 937520645 914469948 929231588 594045856 734183585 412293730 671479208 709350638 805511733 887562897 918279630 909512391 976749835 438467938 855874625 475328667 691997937 296231366 402556406 658652161 837383594 597526493 633444281 79271165 578350537 171612050 190930767 515026278 574503202 123588895 842558956 926355903 956991390 929261253 940910005 789188245 998988387 376367023 949086927 261044149 792347534 906272167 993501635 34359 71780912 713122888 901291644 543636086 617612834 631069500 872322302 242388449 864255698 244756983 303071279 599233511 605724957 68691086 956715523 594042387 692863528 360178375 775021811 681260638 945576112 928434707 977030075 344965993 481433011 567534934 678185838 819904056 839949427 742463401 963558174 298368185 683131984 265408610 481289686 521473456 783794703 40689009 500519199 934845984 995442898 743108855 965937145 702619986 824488578 955418057 997947051 639998689 934350893 721459191 902804832 172821304 484442326 508223389 875606072 923288327 924481845 552784283 627512904 918155220 976066872 784722489 931768937 242134467 441004070 37451292 262950015 984953333 989918294 862271691 941414337 933819354 990711431 783467250 847728122 430675624 484897970 573241352 633704477 25572470 777417039 266666102 807780993 282628740 354244868 877657112 995862968 829935372 989441700 307205650 685341251 325443147 574898437 60615276 521156948 898535038 992221152 925629884 969683677 669508072 866507147 283589551 531774884 909220503 961398496 835698819 944901899 648424459 777351914 762034699 867935244 83514577 115700847 271773962 764233353 195088625 555569325 707006753 930959397 698524458 698887501 804663605 914477123 869978922 919719840 602297774 993886673 831113270 944415561 887817945 980942460 621074299 654784648 178689515 629742494 283069257 551833871 962722401 963696499 928446789 975175710 40468393 935323248 272084951 581102281 290548918 514704279 591834394 876535258 440237022 506442585 909680422 923249347 892826878 923519853 141644599 496076226 446612656 707464088 932688810 955147293 967818977 974926578 390131096 718738201 876911099 985721535 887111398 908068546 208215946 831802321 45668320 344838804 885990152 887559769 578163805 660553393 944385341 990792029 555642854 870069061 178350286 865471093 504833989 987607886 73182738 174317487 259074973 357108048 271813380 755111535 292439815 662493984 3349458 768008323 15545605 291472982 504284011 891471059 783748246 789102503 360022849 530283626 71165915 539490605 477402180 672435223 312384288 818725850 756315940 970353365 102315640 497973329 887324446 917710048 598312668 929433892 775568036 895795761 379698884 809224910 482007984 758045374 971158810 982977069 155588667 740701689 694453231 727795318 642240679 790794115 516414082 729648126 348998085 435309338 195629486 677223349 407802641 455870147 86202800 847675377 295349888 922043962 992039557 997024178 823901366 984241382 25861898 355231633 600665539 610869430 668114391 705501827 260083035 513591004 867987326 871240649 809442414 836016405 900777985 936441644 350280133 351154485 76406462 469153893 696463858 959802060 420726636 702428323 92558830 346371026 633469556 633984910 286977576 486703482 157212034 173296065 199290879 592250841 30613091 642454054 890825301 892293847 347670848 435247625 175293505 312022301 16915081 68006667 46186835 524803534 895075716 896643892 880167000 957332870 67531163 482719769 419446591 683058201 975162935 999718401 114247854 121697206 211970987 569047425 502041761 959823934 679926933 862078949 647191137 852749642 420515648 771775574 102371055 438375639 76781636 991608700 350576202 592607000 146687139 624619536 674595065 877894306 748033873 981990829 889472575 963606134 975936931 983541839 647033809 744185341 736443552 746852808 442604722 572439382 690781854 871529860 263501078 814827584 398702471 664155997 604912063 758577957 213580525 957404099 625761430 823952010 624221591 905308856 780334157 814115490 839530788 974422648 91231593 752831913 417738655 837905886 692623794 980842548 905141602 945295565 939726708 962320802 928863280 967230531 951233056 960349234 35805892 473782866 80282760 733240300 984691447 990692419 622795595 889449796 38462381 112223965 952601086 975924879 108744533 544763176 626200848 751207060 507138650 928673701 9558990 675496843 981144577 992315228 603196432 735397011 795625065 930558101 388364285 412423695 518983919 887759779 290466314 544277463 580621562 858253389 972096025 982260591 646578551 727370398 942408682 985213456 574881047 917989461 713393512 994558097 992856345 994951851 695606508 856389490 533079043 575911325 991122000 992808051 45662220 198849558 893666281 936489447 876787693 932905540 618416959 799295462 63741842 840553998 997389841 998453130 28235699 456770311 23682522 438659087 807213831 995110764 451963835 891239909 547575722 646734678 85864234 545316789 723302360 848105435 78217114 639439394 789774563 998502430 808247768 851779502 250701413 398570290 177137150 381630354 574220958 902345227 749128262 992379566 30687178 306972850 35561031 410824677 252783053 775187037 353867727 708754308 822207926 851862293 512940620 640037589 928763152 975353774 783062060 798804272 962610191 997358500 532068703 598655717 482556104 611152341 605036676 918012323 271683171 683080236 303513727 329772537 678316227 832631402 161197689 311706970 504877042 681741038 887226832 945673739 229433746 946515780 976550255 983569398 184543383 952644506 328195287 446120992 694027538 778568400 682203633 791758250 212845813 925188079 277645775 631457276 808524022 970114802 600438900 808699380 558786867 879443929 966372765 984898046 660098219 894251517 6401025 896078480 104280551 305026087 939211884 955614145 485388182 749737073 728832415 953280262 25099039 970629318 739809092 751798781 542188313 795294388 37869790 201218066 456505226 720314019 643801842 993790502 558947815 635069084 319671911 607752623 959864899 981644194 846646093 934065680 968670416 982451952 376835759 441354803 326344754 885808392 934009614 959443506 864975404 891609463 776215604 898088422 99553047 685794672 955517194 967566938 479527066 639642555 560583589 807406799 385519807 552476138 167010498 440842005 41384899 670297219 416169039 455991317 944847283 989389047 892457262 914055630 767667593 867194525 335934409 429700146 52509438 503043238 681566849 799252649 167053333 798531557 248717720 534960387 605483483 941351138 292369357 816896145 929369237 967387921 789264221 894297688 498837617 753913717 99900203 280161637 847557299 976600141 758655923 929698475 204973306 293814348 695027293 844260440 499522311 519978089 512171051 995055034 520528446 931451265 65215305 396768506 557435373 791012760 921998170 945142578 663781722 699978537 158175603 989444429 976611429 982637118 861078778 892527780 794859556 975799055 974943943 989004155 155096448 796521482 592315002 854017538 451541356 894538596 961049347 993276715 505314006 764309325 379394100 839535995 622802285 855287837 705779875 853858432 982724775 996847113 151770794 927235991 900932026 955942032 834153480 932568042 723960668 787111569 810056619 824744179 324598786 326385745 323223539 976942316 919051602 934336776 407831532 948202012 544802060 674637696 997773140 999894385 83731183 766785654 259102435 920345089 999032967 999712206 572057770 869624905 854911853 894876078 912893878 964244813 418142450 924593793 606275412 884335806 1016368 38120584 586106177 925043357 43250530 46185949 15368486 723819433 187074517 853942064 999657453 999944231 773057969 998527223 625269029 733882570 904875444 981698897 29072003 904095954 669518544 795470050 556404765 824237201 97892318 774205727 618606337 852757696 235644979 592945613 883707060 905711655 494539779 601262607 829108182 888227059 417997194 873357543 341541602 532289242 142234716 679048980 648032908 861532635 647203422 668119709 969146376 975871379 947515938 961693068 165188873 494645532 264162871 849744455 934373993 973871644 303711118 485305679 283241232 492907629 65533430 584332987 628469283 677525308 892895311 986383180 795542965 894064635 877540861 986730272 310732162 930632469 278496754 940946198 394388959 892673666 16781100 727261182 65770561 830965877 74818426 505320687 349863411 861849007 459107313 884746888 509437516 936376798 522239059 567307997 274837716 813579870 746322320 880478202 599372076 954595422 258635665 378657795 831788792 995588546 199158974 614620706 912269630 948273920 989496028 997519707 940665531 957331448 848889192 933980442 193313509 946786722 965160468 972574953 850537839 952852839 589372618 981078212 172606470 537120024 639762691 653398163 474997227 507669361 317146721 542112796 129638535 276276009 707642362 934911879 555711912 695773222 965140129 988896050 544284249 840278632 664703346 688628746 597271826 762603170 639977871 820731783 753992513 964494205 275469578 888480156 303286055 969780775 771418003 778968017 552462238 853810090 835683300 837082649 645656007 898588309 230965195 332143837 885108989 984641865 33678204 875842432 886753138 991403609 202437271 631817994 945548031 950676478 73385187 83091798 2148046 820451543 718362429 780207296 871376457 873877926 377721315 437749300 881933723 898194077 652890466 984915579 954480328 955495467 689812113 752123922 654952830 954693712 983305780 997953061 239482559 818486861 522500353 978233353 255973856 488191347 326491002 339340356 454778768 977970516 3602999 366120413 75246345 396066570 429761758 769325753 532254605 957932671 430106792 683930420 275161673 892972326 670520677 929840336 374477961 395998920 781404242 843857039 427213160 966966068 633524622 707061647 740803227 965713398 304735596 961258604 436112939 588615302 419289026 742772241 867517327 891202250 523318310 856890376 546088222 834266387 989736589 995326893 166078835 947521641 314029904 938150608 690157167 825924497 726244970 810887036 395359711 406910744 644850741 892448974 571904025 989933845 560031776 832522723 741543011 852912121 610227957 693238650 837260185 904571410 250713699 517174765 818464053 981844605 535288313 857834097 264846102 840425767 679021177 886377535 495399138 850106945 88488168 721822867 976018548 981982966 96739734 797816734 110937408 688873904 501157105 921641146 690707482 834100247 461303533 777757626 640304059 734727302 287066942 476432125 523189157 650621430 175641084 933520866 820229430 972935049 388963574 527767252 665295957 943420619 122417776 437882939 491721683 978427792 898963601 917350591 389023539 695190781 748292356 972935007 671197817 948156861 495931784 834036568 799263699 875650209 484527014 639379338 605894650 685907406 425352383 649985386 350232136 992219743 780007282 839594752 644886068 657775443 185113514 189280819 401840154 439524034 466224086 909511803 987050619 997241421 967909813 969172555 755231104 928093146 823635987 991556854 518265479 538945669 327595818 948428024 976103999 982431955 153798385 617505296 572382124 649362417 647507324 658837417 269098455 490193522 283557125 719345070 509304664 851862986 579851498 847874019 249212839 275337239 301876514 370277638 852341761 907848902 898739075 914076770 608443099 924676350 371328747 629193859 841360756 911430212 369300057 562208468 460666982 502113509 111431692 443813690 349109626 519447933 682011479 906755366 877532859 954741033 109653198 567460823 420545732 905082462 842725371 891411152 87635282 744190379 720258269 858743271 198448114 585209622 438392767 495316355 518876470 782395145 842671156 876433148 898316599 996805530 514320312 562783904 365462409 561948830 365720429 930109991 979627843 987964895 993079117 993820932 29721552 504427223 681859909 907698459 620137510 765034205 229222586 529480567 620090042 832362485 328632687 864276536 691398646 728294519 296633419 363822639 635752530 749882265 567150678 659279472 717056349 828939387 552157147 830030359 826119627 868486958 174094747 526661018 163722779 552826003 931121202 940664031 244127498 545620020 666294159 853662369 246243767 773974011 156670669 197190909 848767878 901646727 75075767 364031045 149579749 151282011 744625831 821857936 83020973 333277622 859271059 964411900 22903487 246744458 727459339 939045725 76523339 741868084 89801124 212025417 596591147 784859301 782620544 831491249 200590301 256110299 170314787 596122731 214484507 896386409 492177998 931935777 272524556 843528800 933233505 980100224 511989267 668699086 39028040 591316635 522281919 824092306 95851236 822588743 573080939 911197575 487157173 794819536 328825354 823779847 669354850 805447903 49473531 737474379 480069023 655319731 113081487 631136602 522675118 713047151 262439624 294653297 110261932 626870706 835874151 882139430 434274869 732336132 162394068 194296565 691805424 842808204 285833233 899682685 645529401 817820246 221695572 419451855 515470913 666115231 449182173 807834988 598571580 770692090 546025800 804532356 791237333 873911995 586179505 757599402 489000787 649906173 484986050 568456686 639147206 660802911 767970121 881324836 27515781 485166645 397887668 752539268 420545892 517626614 367289208 493800142 716580612 726681009 32134546 181205817 979010248 990741850 199650452 990473771 955288899 993333676 525507496 798121732 685126183 745525488 32816015 177350713 326894289 436117130 25444525 142606923 518067124 713109455 287480866 587724552 265719966 730292338 676967537 718945181 359062093 502913001 836349822 866818499 374386715 819144744 741043980 801720385 588579863 927622445 155306966 601042098 436064780 903346192 500314037 926431764 327205273 563278649 537402697 697114763 573131100 704214428 291254152 641420320 7841869 853992134 613512594 615111924 946359004 957990816 990258571 997663782 893091383 982568112 792221396 954558542 501491478 646340035 99732616 755025172 468321243 538187232 583442486 754690602 9489835 622216498 967572063 982434578 615100319 764102977 87000477 388792836 859518332 900817538 211934775 686164637 301704347 750609737 784075647 886520313 129996450 869346600 856912667 941306231 518327448 897960387 491692162 857821000 869412156 927639400 92597945 477072059 493473221 592450052 397366906 910019639 118531211 225675993 325235783 373179249 55838520 161808390 22676713 38533473 456902816 581661587 23780094 527822039 806602073 893360665 521439537 584563725 816226161 973146785 739030054 980989211 668428474 920375773 419537115 686450140 722422738 852912436 512886929 851345748 894043134 939725815 34312841 307663876 259887336 449930075 796208696 939163774 425936544 597090134 6295101 764576036 809668913 902511632 837614355 883214685 992999825 997560359 270844398 305166723 945038467 945343498 141264152 678282763 107355505 566173425 238203127 829501152 48119056 809752794 100884292 802916403 69690047 439637279 523776881 824781629 814962756 842571164 517766422 767964338 664144606 843463794 696019695 806639608 554868373 849413734 8569933 940214187 861370491 896477811 352643753 783676475 255102440 952973954 836922159 942378196 436502863 806507312 454965202 971053829 700217239 985910556 697981275 974962609 16559993 63295100 697208216 961549425 796310906 902991122 388457732 893803747 276178229 362874748 245647864 559254541 992564086 996026036 329344813 956250535 977272061 977861674 177448951 272049258 471259611 658392469 652000466 795171442 867960047 951983677 663086344 962184596 88239296 967657954 293726358 963297307 292368545 788962692 872337164 970355876 678927606 680126216 837064296 918218821 60030030 98788221 927002745 949583166 632494671 967127536 165903662 533254532 25926291 133438467 907299813 907658040 706665040 788698561 792341628 936773927 856409467 902165898 511347074 998906883 370576391 791581795 409443555 867395877 131333003 807524632 854852812 892623241 694797600 957496181 795680602 980683932 657085971 735799601 32787915 155493400 682587032 696934082 882702478 927937026 296331878 619796166 40273446 266315879 92580960 624008719 643275884 975576836 406875567 487728234 328572372 827366562 521007100 542837685 345654369 631196731 710009216 975825496 257193488 439037339 699885617 927369716 746133501 898445398 197156127 959816244 493992176 628365995 316212672 861859941 819152145 963578491 834563970 879920570 519533096 872798356 710253539 809417281 689250544 696434478 865693702 916065098 407187447 919963472 184308343 458360478 778443272 846375170 520937788 985359706 866019898 892689948 208259064 625448103 276947583 840496741 784291274 872483809 473600626 628675241 603878083 668402216 882790466 957063234 522887288 929096716 879327090 930440731 794937303 836992151 960944696 972716395 631042618 924119017 901537309 963316513 413795539 683896056 593151014 705352045 355096503 926825648 244900518 845476381 602356508 787282957 339294072 887730144 98007266 585274188 621692414 979369427 505322900 873117882 542529450 769201045 819847792 989018951 33368864 620578171 953767477 969447874 559561391 945055345 721367478 880699831 637386807 862872890 616732574 643028943 823664953 883840009 6932205 901430794 599092371 690849697 312454879 719708329 538522267 646701947 991825636 999844201 3437458 48858373 558992841 643877075 963259511 980043612 782670562 852636363 260590160 307891207 240426778 529968237 238375465 243456929 245092923 285931326 856424057 859255398 329257880 997715730 229702758 965878665 20097990 41958579 809643794 889405438 883545026 952108630 941803270 999862074 237243786 491151955 745443069 871020245 59570106 803195236 226043491 255338199 957654222 964814778 654702529 769481661 363626140 635665546 120561434 451756352 784254872 784326732 832428243 975451250 96023685 129473374 216414673 495821457 716408335 963022610 629104288 736933807 472818367 968516373 337390358 990464088 349724559 797245933 289302439 970230594 436483873 642105785 106066515 143544649 931637532 945626979 566384338 855942343 384866494 656696034 903355574 938618371 115294576 346953115 629657443 929839947 405989176 500711923 275079246 998951308 156231005 290752620 821530726 979926363 5965272 352740856 831464036 870972929 139332701 567344155 888673539 908761243 487243499 998487945 585485503 714413433 501027065 524426384 732676376 912419268 171475047 729990438 813531585 828039085 977540087 993925320 587323638 668202500 384431661 538940926 243020976 984869771 336905607 857734303 410539982 780800302 450451291 961539282 306742511 373154970 410028611 485773811 400453468 592747996 221794616 600903428 696888821 849108234 86235442 421010285 985970934 996535901 825564358 886450100 813802428 858995102 750075066 806443878 131492302 473159784 504529215 735718072 409725562 515727634 606740411 826545001 128161570 763678129 789471860 964475743 546940272 600795492 632017003 850034903 76425152 562951261 379795146 417196891 246209608 959407295 20246619 73521493 800690596 864070041 172508317 195903941 473004961 625241702 651043141 743601500 813262177 817934347 259035385 441664810 503300898 765112656 535393189 633794114 308227469 636075748 953118198 990638329 554530779 841345613 846381651 925411291 51356838 322383940 677527789 747754218 461023301 491389873 518603486 980591527 28587854 666342047 106083936 635041413 411227771 516444145 958665853 968466866 847465323 895157225 571948639 813311087 894425240 959215565 93685925 334275456 858656107 915261432 701188358 988138058 391201836 514540231 163622562 656985447 615234013 784174440 814031001 825176416 5883584 538455424 762929894 786647476 924152111 963805321 391215549 979459240 3495268 361079165 759376980 827765756 862277374 909046618 575952548 898426227 666980728 847455772 745852128 765330538 776658151 874703164 420880902 858184514 857773471 927798245 339000611 979685431 279849152 610084943 818596801 839974618 505056203 592697895 585819463 994008837 817479906 842578991 61615782 675034619 485973699 786197068 570282920 623328752 980855118 985353268 322189208 779347714 493276214 763452202 95172036 696396944 629819520 976322452 843731307 913456791 196111751 916114785 414228310 694010683 414522842 906166233 42368184 274848781 17827900 448252979 147561489 709244764 353520427 458950054 518293996 825041089 648421418 674374989 315861019 481796656 46451635 98157689 555501517 754363395 51845649 323103016 238842621 817276365 68944409 943199773 327232962 904921989 327553833 659780098 214296023 957465717 673296722 848407212 113046610 926670912 413118074 931701708 531952671 586862245 938654960 959630390 744238945 862923737 628881446 936509468 307599205 718973760 956152778 998524560 743034446 945815127 935407864 945906488 262196239 429330183 494986240 641050607 95089918 106114088 214255239 791147910 812463786 899098741 121036452 419586175 819431318 883850583 352838390 596174033 165254475 981873706 41459704 75778874 48019650 472244462 375828974 945033750 652947157 684440365 271412412 563591413 725228473 728335565 85777606 165154640 872320492 976181623 48594459 264323801 80734981 167502019 316709865 483484755 593434051 934514588 665220314 804605074 377672627 854102242 739010609 752582001 659703097 966580683 805997010 826248523 472488984 600126552 107905124 971458357 548026616 801690719 699760535 960977502 246707218 648494609 174895339 627461391 675625741 712221752 738092656 960375025 958990269 990166933 301380365 391451199 230842326 649768938 215503687 765291168 155374233 350730606 438596002 487743568 18185276 917638890 995186296 998193775 368469563 431963027 436517192 969941330 131793583 757494973 372635211 846799602 658210319 672356305 793505986 961842521 867848751 913447940 794741627 848262202 149891611 621998642 291142838 827421978 512302775 636082006 9924610 671927301 351581879 911591719 664225282 872440589 155521290 631112407 754381750 764363172 815022562 941105407 462443676 468831077 663144652 850233949 430539779 691608888 423720159 983128520 594864049 759658128 111688026 560477250 500062888 871708676 480155349 607337133 82308890 502834661 646645801 823266839 233282298 818554487 987755020 996114545 724537174 839065645 229680199 741963977 469677416 953849465 196127002 686259627 594534389 909553643 224514466 820816847 685102089 783023546 925215077 928874145 989529774 990160552 291976591 725242966 878348367 926179702 83660963 190500168 481374305 897134119 526885216 747496986 333870204 374961837 611433733 670460923 92789654 398876830 746889238 908378553 217337032 857756648 890926343 965625807 351912538 560345539 566273131 633432934 887749681 970149606 548221235 784849897 276811425 675830847 818851993 988989050 163185237 220160694 340561598 446971316 908611087 963221517 136159666 306309389 268781198 352151869 385346383 987603238 683541455 802384004 111468135 386190087 983816976 987138774 781063078 851090664 71369962 227532950 653615290 798886733 557262558 802522911 486884149 758623745 282924248 485581536 472169314 622987346 248082961 985408671 662706526 730342580 305189253 579168216 433168057 468296632 950493979 983805707 955522587 967447052 507294515 534666441 796401751 972087738 300691663 526234189 746334565 982782712 867316933 904438678 445308229 799500099 22945829 703861551 971171957 995212620 586780511 891118110 358104882 837700513 782828442 862916750 392034307 509062927 214545266 899523624 632705735 947075364 305572267 665764302 883852168 993172419 279794365 422253052 128520784 856149950 863669522 959694984 717770350 921565733 467725068 586775726 681159060 781964019 436789197 596335591 642116538 654431880 679288588 769969268 586864767 865877942 204915824 351774427 90978889 242921177 727124878 997387157 352708471 878371303 477882573 671805997 144200256 503217378 204501066 674891197 403481544 809665186 963790521 984383343 208982495 578799027 741298827 976027002 858778510 957077144 152834131 592762039 69505166 516578171 40745933 92117626 858531706 947660154 866336032 875061832 995219514 995315878 140476034 292972752 649210892 808101991 858698830 881851346 870139204 874344979 12956344 37132697 813586759 817363419 28008921 230837431 279156774 408720230 97100239 766273665 693700677 928422331 252301348 324810443 404702917 904416038 348358735 954506126 908062681 982000956 750978649 760031257 888811466 895865491 215711361 447057607 509623508 790502253 755554494 900294734 165251932 507157978 824093972 833570249 247431727 425478529 542430393 749216738 464094691 900853539 561120974 919666450 647913056 817610369 38283041 898547439 169861077 726164418 22667265 84378365 408772251 850173889 420798539 715434293 891306803 946540859 537558242 992561990 542652969 945574890 676829053 776780026 932142311 966075609 572856913 825221144 880614457 966362644 152526463 165276350 372533414 734164629 635190910 919922774 367349916 565595979 375406145 431236329 41237369 100735072 963768749 997948017 333871971 487258021 534524462 602781446 408286023 918868298 252899821 647785146 390780087 704522614 325030614 777009177 826059690 925511788 177446976 851543679 118935653 910009470 508568224 779034875 413177406 468973735 649560715 780960686 712457557 953155480 133153887 830665663 273515526 404748698 151803512 911226918 453499273 873663705 773104138 977068536 910793240 937567658 103571800 819617298 793513274 976667105 91699678 698615672 642063284 752402546 488317625 789047269 110368693 148738396 761546367 929101783 587712458 752043711 486600495 625188453 243506248 683362173 493364551 502584659 671320040 877129136 365193461 701295643 579117347 741795223 897594517 972710224 873221307 928538106 392821065 988397300 130848202 611936012 930781721 956068559 329666913 879847360 12227141 164158213 270358665 923052064 796904512 900609337 108393005 656597873 471473336 513886938 941435789 998377236 68401515 132459063 14317345 932941625 807139358 885731222 205932905 969099946 244314774 299383748 214878214 917900232 426509766 822603914 350228957 562649072 994761631 999719931 117341943 844413731 960622240 977281615 777780080 971684283 488360908 903379257 787931078 940126343 697379937 943802228 129761244 481987081 669768821 998630931 575049374 885372358 317393291 581094831 871715579 922383802 537319303 977771018 216133376 355297492 364884376 370149836 713610936 728665993 201337496 492404733 255049544 974838822 768260475 927891501 263307561 715773268 600610377 915269640 487544207 891938337 193734718 585351203 406725545 425184586 868904595 926319565 741429873 791398553 832856933 877436408 318254588 834498803 326666116 840260872 568493859 877297812 685236194 922253476 567461356 585253661 850098108 911167349 478692750 713201963 230206255 916607425 581168298 986469269 515751791 719024484 250550803 680278462 930932583 969947773 85367879 704286122 542387323 730088279 16341072 512123518 825295928 869947815 116214378 818815641 643156549 699184319 23535938 266880350 329362715 615408831 71065110 982022220 731225354 804093437 504115262 609960370 274597318 435531770 259212547 971262209 568840850 988343749 135563233 394901984 262370088 630346140 389448120 582322915 89419112 281904332 907948133 943676816 210936239 618606125 69371142 244761315 715557286 802704736 812778611 891074605 689891553 926316226 908735802 929250348 419126727 497400421 23709432 380021134 804394936 905029657 708310890 772554141 629683497 999914975 183259530 583423592 222548748 535302945 122982276 943967505 32895171 942161258 362679176 838795864 772054834 914840520 538623880 558061026 882082349 994267814 957730097 977076160 196081544 299586643 53980287 123931042 930443260 989532682 183278226 414953824 865866871 936612382 154122023 400500009 236913460 742432610 651774666 841889634 133574605 606905789 517250777 736892118 878035886 882750458 747895785 877086719 367480780 606335134 95222054 875938485 405441834 628470975 287598624 958252283 90363671 716210283 521924747 665842340 384789998 748021131 371394764 593125428 887946274 900236887 999627298 999886306 763382231 946399535 989692956 993444240 469364179 688962810 861416272 904241311 178860004 686711575 63869585 950495835 392449637 448995355 650427728 999046120 923152254 958870934 447581246 843596516 197882737 502482158 179335216 639301605 435557934 638050707 202880291 821573316 434071952 456569144 284701330 836606739 581754850 770089790 710528916 867605655 567460532 595309404 3169792 896305152 506706309 774960406 761840238 768305447 48360465 455262374 607163324 936816296 25321014 719414072 408368790 579389090 755285932 841673645 925568888 986532274 513961773 993142637 489216860 768158222 101278443 299595360 784242256 951637512 70953091 145029872 471567427 600743977 14234921 985644982 208206523 913331698 920206474 942546527 297640549 910415817 734603446 820574890 9971796 837318437 614503389 729096667 390337346 521460063 70958003 859750055 321809723 596048909 697534564 795656588 406889916 545680593 983045805 984626146 796011634 996783998 975561784 994842413 124960644 224677593 780918712 809584247 490471471 685626747 13640867 225285447 420963056 841766956 63640120 723905716 202367541 424266393 192334811 576212440 113323862 494628972 169550543 215448873 546181853 905706165 581705654 954283740 368257114 831836172 497993396 532191553 614104078 687924501 553014862 682625969 530008635 920107391 615913489 867087883 23833831 650396726 518009326 913231853 637672666 834558704 833942262 871827191 556154072 658950691 644593833 669709238 630000009 854866527 642032193 677117311 911942251 935494468 931739596 985596127 622575296 907279872 801691117 809653638 279502658 330067815 161666928 517717123 491150284 699549689 476509089 826685039 323091643 594249101 972266752 984856469 22620961 612694704 999432558 999967763 917279634 956858566 276472504 713458197 206639938 909398836 903625256 965035260 279493129 978776225 819299891 834821992 602445875 631306034 676265692 896160952 334866514 667035427 616229686 739493367 638590123 691723558 548522017 981383364 99215697 981499038 397128059 567648712 480443204 618621761 561079890 710799085 5337813 7168458 837610067 898665052 251055309 456469809 640933937 671192300 49261191 930956161 677684433 826849079 571280680 804589950 123404544 504237910 510325924 910791842 926157543 933104015 759306207 890127047 367845720 948560567 110626052 848337134 439222605 636676182 541414502 762895012 709505715 812529605 435715709 965439079 61881256 432595572 559329306 951432552 999965568 999985979 326725179 829001853 297981261 783165701 638300441 948259974 255795608 482966241 546563677 728406448 898728000 917827320 553983961 680172419 661413879 866519583 862849570 946082502 86425240 257449713 720061292 819481274 324380592 864131430 540375185 739051542 796436246 970763884 406392552 849899743 553161959 645522301 716906271 749269957 711368079 967149300 846328051 938117321 463828454 826770500 529973622 696278723 326709245 500957889 406444751 805171901 788240560 964987650 98871467 512432027 58305287 861813073 303778618 732376177 235786338 710463627 514913684 653426937 585612990 635747138 895624908 969500162 461581985 695259403 435425919 588047570 180170533 579585794 924125536 958552463 975688486 979903758 42412035 671491635 394653560 725904626 304609333 848177381 39923941 701214172 834323859 928523051 383486874 941546112 912586968 941699119 583228691 850338822 737747209 776954549 824804335 918066325 993302324 994215636 402657454 513931327 444916821 747082604 468038350 915653440 282677906 699656549 115283111 488482470 792455431 955262342 583641944 747226164 921524974 989073762 751545580 829475417 301560378 959993913 344253851 873489220 795585276 915265336 641702 173073078 425637340 780195455 647591359 711967387 868487005 877066507 322048906 773403001 221452955 973195073 436820446 744382884 368108586 673689906 569485065 809554568 503976961 573169471 80085411 626632342 727321809 995826014 104016904 250150481 36076778 636241538 198249489 445828420 764890908 766705506 247926601 513678391 142102425 438981832 870297689 943098872 621842915 795326816 574362570 576150081 741727194 887382497 685074725 941143230 365389061 721580976 236213837 341646076 909660648 974103912 748721232 970346016 57753601 315880631 834031215 983375522 539904313 593266364 843291803 994849007 807423155 901749138 940937703 948349514 560752210 889064719 512979044 590815996 146627137 355864709 360621516 725114156 859822285 881669416 525987417 763793060 916823533 924724425 194455124 394331859 125361600 317769889 865729983 877722432 96170932 552276442 197846314 653714775 934209661 980001396 463746932 598367020 36888097 325164264 926115355 945170277 957469673 957638495 50493929 813148338 865239880 891336805 4738396 164798072 82159100 146350161 803867576 848815688 763077798 966837474 139356107 371346509 441688184 682444617 893981640 951149393 429215404 680334137 753913271 972997708 95787297 803395731 400688087 520113591 507618950 986193793 188118727 235257518 423826648 802445510 300715843 589467732 76985214 394569456 560995412 988682900 479897434 797296788 139105509 409450558 522946591 976641532 197138663 464014491 445619251 887346503 84998707 908885544 486974873 719221727 237329555 956310100 232063838 503904490 317132649 489124078 544699608 898179577 669845176 798487320 341775355 572475397 214463073 251953789 644089903 783202356 244228621 833934622 347773454 629820104 275709136 732843645 487110552 849629723 922802628 999275498 224840810 864191335 80543484 894154863 217929737 745083943 113183678 651635072 987892114 997283634 958699754 963744429 545800717 912792866 779295415 911757022 965177296 984210637 568023759 830709455 891442320 941826752 613103906 846454077 51895207 610977503 613481794 927768902 490737075 840427138 454536592 517106310 225731103 897752492 447105305 929377100 511094930 671476982 699294697 917941835 644186089 839515392 426587749 922784292 230653159 491712350 196296091 616384445 307579896 524167315 594106642 971153131 893423785 926277693 401333239 901788962 37009550 982481846 452534946 610823978 905834847 973820469 30351856 163420974 930287841 992092888 24147413 726798013 276469574 364351644 839320097 853707148 124329237 131607810 368282186 485796631 650730696 987826588 536652580 753888388 960525651 974741122 244940114 598997248 709035956 933009693 366836954 496697499 254242883 468876398 48862218 858817704 812710031 830693129 176691775 991108810 385284165 629574163 294815966 501171825 479466650 795377904 608136206 908215980 16178331 939892105 563433213 607583202 225966868 319320631 889435447 929575982 803938327 995860826 923495283 999659337 152862891 926950471 539241029 975519788 264194891 784523874 458932715 908708748 668362916 707970401 840658980 894841042 14339301 286477964 780390606 790438747 994929919 997019451 303226372 396986389 682000848 873897831 735109599 813568019 422747722 666875851 443649007 859733071 794599278 821082698 318882086 569306820 948689723 993312123 698664754 718265734 467422264 916915624 532347039 691332395 317912607 431748868 162290268 571907558 991296615 999096694 319977959 655878736 49577253 92961224 381635987 582041440 906938142 965863003 74287723 724332509 468531151 951182018 619048748 875380288 673859855 941202045 416461259 462961820 463421684 922644968 135646397 444001088 466085866 931059105 901029041 933932161 165142867 577769734 974167053 983395874 478151209 674105688 836658654 841197862 646398746 705145340 735124207 849516479 988103772 990546398 32079088 343966435 209297450 541101633 922040255 953379095 774945279 875869355 542499509 704786005 959675261 960802436 156101330 702095260 190339905 284534170 249648392 766387091 902979870 989180251 356307839 774059416 561294006 850997615 943083927 955463418 651540563 717957352 800224169 930540084 893387048 900562172 224179268 257933226 251756525 952466456 84384562 378617103 69023341 565816655 862725219 960011641 636468348 806267362 649055208 669491172 233864013 378506313 81186378 460896836 382703881 635791878 942863301 955254110 176147324 392775799 86129503 693270686 126889085 193105931 515724591 763708657 175048975 537222899 187057189 422807062 637159275 991043316 376497256 379519933 307951284 692092080 659621641 814295639 546784938 967420253 140225203 340948770 85544343 255114151 165859552 338011097 390824074 541061301 742346004 963726707 353948332 603496041 162308185 989421084 341648524 784419618 53977008 305331324 69317546 448627466 840259535 942612040 595618300 688875074 261616970 490297677 642084278 992125527 369802889 633448567 175692588 891531360 693555189 721885202 919716939 943974450 707074613 861787975 559435293 867288772 708754375 873946661 947027781 972986604 792216422 885911451 681556921 924722741 495151897 497661712 25188560 58618312 663133485 996790584 762008161 994545016 557226019 959466089 627601338 863456516 5855582 406589221 921177562 934294117 448329110 900431888 49342288 677586749 638541313 795302812 366050973 500375586 827378469 917398172 824048825 936763931 249889313 449732471 481529277 998949085 463161858 497212591 815820958 882609436 419299207 528309797 511447999 966199694 209947897 583267791 217668768 219569314 749350615 790681610 53845512 293370349 575868530 857981023 257003587 843454479 365697903 530210193 792432007 916046060 957265178 984603084 415809754 908103699 381110950 935046627 287316741 444646239 233119100 465441725 103588652 461303213 850911533 992726573 383878614 458265573 333743524 529353892 657724901 754053063 743787851 926675151 120826717 742189225 41680132 255364828 20686540 704698304 948632616 950433345 683430984 876950229 541818873 744151070 768230567 792274950 667777392 927940413 137670561 392596696 660134188 669267269 984927972 997707154 90606529 605018202 140053648 645760851 953824612 986804555 106950470 139433860 380791303 653480013 724948768 726132641 423954641 670219287 322671912 406473609 446489036 858741579 667039379 830491242 502701164 814638550 684659557 907743236 212760576 459647351 264117930 605476812 337768574 754464816 106464675 880940662 560567411 571080522 936496277 997790036 793546743 828064309 411162647 596802191 223630446 288435062 351215022 790465204 839323937 879688318 245780787 515356480 373244892 731129875 257197020 932549770 561557975 763072404 480719096 979894759 37482949 489895022 232229718 781512710 664869593 799266835 57058637 932922561 750440585 958974392 120500087 352547130 124753847 443819664 383862833 925055227 578680273 606054743 994576390 996493022 811418733 945976949 839055655 850238559 966881579 983228378 101257465 326270018 111583232 235708028 141128202 616348974 697196675 895710087 840608478 939554704 247252492 960613711 391815107 414341680 346627573 662725630 486806908 958592012 22876786 222620463 476908269 687624470 536254817 891515180 188677458 659351325 271106800 559286173 727263941 923561471 383327028 471005682 715443962 813715389 440264688 747547480 837006738 955034706 924382987 952414057 728135608 941731959 228269311 394244364 837315630 978351153 504375127 638171487 235081305 557248107 111501426 326248335 958105226 972606449 733670098 848922873 246747252 567877065 86637431 801051664 930036810 936350053 733502740 966909470 337015209 480560635 519440936 808155346 491579709 529890560 594957205 981402197 993662275 999119735 8798182 51328091 583587242 706156798 865370408 978303695 913728305 939512431 212584025 653265319 178889645 879113508 203898835 999514147 445544230 668034921 197519888 578368846 424124239 566022361 872797347 993569716 729652649 921013994 908346799 960323929 661976951 945136582 466419770 870211349 182396301 751466232 56407542 705455466 375560873 641774066 339092069 723805896 826627164 857799298 302369126 766479966 806236745 981034541 868477074 884984713 890728505 995881330 669660053 913678801 442576802 875740747 367030404 766351889 449379897 532333733 937526819 977933282 574714519 862501660 526608356 821891195 137319140 932003190 423289745 886862735 217555469 452350704 378092333 795823109 336006969 869327885 276369300 396469842 575394696 964219080 777589099 788252326 14525417 197226463 677639567 733362693 17489271 357624877 837585259 927110367 390000433 601799349 536247222 721839308 49485972 804320032 340403271 445289041 699163000 869737927 768113592 850707277 662696575 760979882 551002782 718484055 15688554 473197725 186857125 331480353 40345070 69172454 122473704 489781721 625360406 746865047 789188566 891343501 333593515 518299900 535275017 577342396 164431982 513424102 139496049 405011913 76061619 302977862 33415644 868934124 531429811 765724321 121759585 490541389 571847741 655354164 551536843 911242792 517417867 662257208 533362643 741517774 845911842 847086374 172682451 592756602 706937556 896113984 503923201 886722113 898202003 987722915 572810877 901049006 107896946 861640980 529852507 825680723 770093971 829436431 96252986 518420932 589849697 703376622 206582021 629363459 585622328 648369307 807261014 879469024 55557748 868487786 74262364 701645049 996533294 997934407 458959006 719465966 219980063 430071518 977393332 977712798 261861467 572942950 666650318 686934674 454704280 561439028 542646113 566036865 466850269 826230330 273333331 370815366 531956061 539280525 679898365 921714258 406325502 888921885 807558321 876188074 632042761 858045231 138706824 750201994 375790027 924878775 741269466 758707505 168238002 736842890 156096255 755342860 873019148 888745279 799429985 849292950 355895514 547446461 43926197 275167893 356797126 681952485 456514974 731591088 620416857 872038947 972709166 989770383 610266950 633748879 161473488 922684879 661151844 832398467 572219440 967999938 922299324 994148480 967122283 998156905 357225431 880769570 614006246 650653932 57508544 584956849 923283036 952197969 828109707 862122437 867785622 942099598 915420031 964880387 731409540 793978242 520445350 762243362 39532625 91692290 649978460 835517185 165857549 723100579 437649920 934736286 228261820 992847964 905786964 906251216 722041578 809236092 186370394 509907463 487390694 967722255 473152638 731343289 742082143 783514123 986526913 991360608 614689248 816599153 875836929 972931646 155851105 305920006 334285238 352395704 43628854 540431769 931329043 932448420 745860591 900926030 415561241 837984039 272891467 931080412 117142893 892404151 183658652 513523114 56224336 250504057 663119788 707900946 492844615 736030160 161783142 901458100 216688832 722270695 981258069 998640028 67764064 415384723 817025926 945223637 773077414 903792366 111052204 581130105 534875406 543050213 709560764 971782525 737897076 754303092 75761609 710954938 867150872 916867533 515730711 563634929 969110896 971021176 796524868 807565584 807234216 812950765 369423458 712019013 574339283 970113036 323449185 325359183 933579164 969646530 963772824 989109892 251674224 483976517 429814203 874286476 526499695 793854756 575899957 694375279 652618922 913954690 606220423 814862681 70695944 669098900 132996028 391058883 630795369 756407977 795959768 833334778 499430655 521273276 628309364 939331263 47088601 724657819 488599051 600187014 220193723 892166830 809005965 975478659 449322978 514831965 439781798 708551392 732390607 829889016 103308374 699200693 651644147 687563840 772852409 809657735 8689428 615380093 356288747 830035484 108881502 571104809 178465436 600653689 723873017 812971075 233653484 566182475 576854869 975427626 501356620 535920821 931228042 987643070 523762803 978375201 34210959 122769870 908970301 910071836 882991817 921359545 388840432 971526361 399303832 440032684 17204960 91950716 749342908 869678566 750253948 962372044 55988097 947110147 476051165 505186850 333543634 483896937 410204895 748762397 793342606 941555157 797074612 895112934 6169083 816567976 865055665 966424899 715607170 795736050 166271417 772645813 348737174 992229651 892199029 919100486 71169140 540744872 183487202 867860328 19533811 842220425 295226407 929088794 515302046 727244766 162016839 911558945 998936920 999592658 660730172 822817438 763991865 810402420 78658302 784816176 492168978 691355804 624363239 920630414 842150296 965738779 716000500 721205747 496823252 679430503 291426239 999712623 353435029 671000152 680577602 812865015 603679725 761288060 532719991 560492583 362999518 837881676 214290557 507294788 841517932 979208753 947188792 948962478 988489584 992920023 738816240 986531125 76788535 81086246 307043858 522624943 869166447 957446239 936041053 954643818 815709010 999233900 603526220 822138387 541632321 967057342 879771546 912355695 899019687 920753008 221612684 936214901 208360039 543362398 106372046 712049113 381584312 977566208 330179571 563055213 143379583 359890689 173105323 596283252 115524331 826241278 170164115 493122327 984781810 992799621 910591901 946944759 978093770 990084426 485147353 851566686 936264389 986007146 855674490 937872037 611095353 868616465 393827465 730006314 677738137 978142856 253760440 718438431 876064729 965992282 110221201 224991776 774648429 884985240 96302682 897491310 833521103 941237528 569719545 928276897 263494709 753409810 168460796 821855022 632629648 662063186 90708825 712748734 791481919 847152995 640773188 713898235 720618167 941807589 984144603 992237449 146320661 769112154 126931479 304242802 435586131 511644025 242820238 453011714 872353297 875010090 85468074 267299816 439088004 530949947 964947266 986451986 875819645 994365625 147780795 173489194 18146790 518696071 691245857 759178837 201782643 812328486 914363498 969286645 412614045 458125896 9579333 321686185 763919297 816357331 293086488 626062532 623810555 890120803 391301700 441338847 969475395 995210837 768242891 994844508 1098991 261131011 650616551 951348983 313727682 554252657 625782950 871516900 402896083 907243488 733828620 790205817 219113404 668471880 200071506 708320052 242405343 330839252 828492167 928289766 427017966 480743744 394672691 618202356 386543115 971290578 477044769 977653003 191061144 789221054 29846836 248652214 208730487 233542736 966046057 989205773 49751223 215518706 161799332 248973236 754287998 997101938 864768292 966417181 478754370 780533118 270591894 734302162 825658935 981818894 247785131 585693676 398857480 825009372 81805357 422587389 6041248 313374982 852456916 863289905 924999804 950633070 595071374 658624163 465390733 943142820 510695422 596125211 248090693 653915539 83239362 516765923 984891709 985912749 152651619 473743674 382177665 511045215 782026863 986132449 62320514 507206808 732731527 808257395 237220148 987846893 33503256 509935759 60038894 271375263 712580855 967208334 412547203 966774179 686122729 692685431 985691931 988436682 40762463 62239685 509758373 817713990 655445781 728288418 930652956 934687357 18199015 166514682 43394105 990025522 559778177 657001546 583956272 606312706 784427327 924336911 845318349 863585478 549133224 868763906 434741837 524343030 794511250 987606581 998107610 998317245 753936845 794312719 826082461 897439895 375619137 959288479 612523525 832145168 870940742 928409406 44477619 857661580 868961420 903043014 630060015 967052201 416882171 812458716 448337473 593450570 840679761 862257835 550970000 772172466 266605382 545436426 651457394 891374216 27200498 645213853 237312585 976816401 339810507 886116790 503779522 813865272 817529260 939087728 561019323 745060606 990468701 992797340 94505521 576760246 259696528 742745099 262940269 430448579 304800631 991967754 354861525 357214518 402401758 833532502 941747944 949959361 865101063 916819612 362429567 461014976 379162762 582590374 63456384 236720041 814479277 988544260 51554529 524919993 517742744 977602087 572975378 829876264 929020129 979644786 463405627 820812635 878615670 949206523 365509921 460231574 391564516 841531273 683354555 719285128 803554997 897464494 66975982 283642587 773263400 840692885 669908151 852935575 251877809 869813321 292008031 564445328 10527715 209733235 815918549 998036703 951235913 990706195 152542242 431081093 613588947 753110206 537044296 977640458 809319411 999340745 619241514 860231690 743385977 829668432 791684890 796386101 45940034 867735965 860969449 996409825 197046432 951663886 25638502 756647796 60535021 880594169 994804002 999551602 880317016 984106329 947081215 992305436 610664360 900036344 303006099 573148575 312017614 578300140 19746023 791148609 380774269 885451930 871395282 970645980 412581014 852846242 329483945 594327747 991096419 992532296 426053295 873308265 159904569 951257210 896761531 964858551 110039663 251716796 633810486 931345511 636043206 828086072 477407000 615098337 997979526 998887330 394993976 795250745 820128979 940074669 580253511 764843909 104478152 785321398 479564294 904478964 377860081 767857090 384999552 877940238 431726012 790082478 191626987 487119863 373340836 405996237 935587498 987528006 442381684 828179048 603563440 909415575 817729702 962871755 878924034 961005866 420936237 862840869 779550699 905163051 780088918 834226338 997487682 999943293 23781962 180443343 912374534 932091491 458521280 851679646 531544410 885516271 699883833 867682719 325168073 808498738 457254167 472020961 182872883 954270728 563437688 866650851 796182113 932670709 399036158 462776946 385641866 958943780 564344994 888309831 871122182 896197494 717525154 837076168 251775478 443540707 429391253 825249659 489385153 614384246 859263566 989650105 236716352 995141884 267409375 729768717 761665317 893028829 917200429 939291471 303091648 598100120 453852463 990170066 86371341 260718404 376850348 890704237 412905072 885346714 295862199 734291518 813096348 953884236 127425492 557860717 440065430 447572292 245535592 329784631 327939895 657812182 955107840 959622618 156015524 608601447 938057454 982405229 574817301 741517510 551536296 972509906 206383328 899415304 467698976 947793778 52878832 435289513 151488586 208301446 495706139 676087992 722749960 725508987 945491446 949823913 10070743 533169002 82189690 955872057 610071463 803674461 738104300 982592452 919137870 934201743 415585439 526267645 770026642 830420887 997119378 997815844 948962471 976215630 922995238 930802799 422756547 566146734 543785489 568484135 635235336 966357049 128914474 524473714 849798482 879537168 396637130 409787692 638544460 973235207 695968045 975131850 771640318 801210271 417566023 491667963 563130538 641978984 262013560 656769412 462719887 867140117 545771454 569396105 429408903 630167621 767334552 968339067 800053807 950888794 562676083 702065705 307160052 638178620 14695172 821290838 563952627 851429497 370480760 737760669 709836604 789783521 952032365 966310504 774843862 815420989 666142985 884824323 832837002 955563147 941840029 957297334 327816730 876483676 846504947 899578155 551800230 564712668 128172400 131945539 188012820 904822776 528717939 936004320 15529299 415534661 118366645 151432979 223565229 243990976 194839352 497990228 222351167 976040399 408354579 440520386 45656389 239898958 884081479 936982330 921148576 938225469 989027823 997532723 256896577 290294272 934952806 989495048 617392946 973343223 351484775 437154732 459738772 604359012 99741136 593935766 218123624 321874069 695184460 710360611 969974989 973527121 666279549 828313128 171533982 764286765 591959921 787060032 208633909 806029827 3852735 116258539 607039254 684227104 522718248 785043269 911330677 967495664 783429988 832625404 417611329 712867104 941372002 979533616 169847971 698115215 198922250 819075355 685580553 799052037 301330688 336221110 228088061 804982773 937481138 940000499 966724218 989058258 677766856 722385439 25404547 927367326 842049250 983774075 120941373 622915779 475448508 983632389 343663408 747601192 432286107 910854642 251380701 595594190 247979719 397452891 781016331 872349815 911119047 960042083 955766441 974312663 515878687 949305039 348729009 858436451 810004022 842564249 408690306 424669315 521099445 807483899 691197830 851120812 361273336 790928883 169943987 358488345 604522250 646672677 367113341 896452573 354158754 938442828 865812344 883163810 43190305 779385588 931237969 982949412 945294662 975445043 472783244 908208598 184114873 985089001 942431817 988445467 597480756 738319087 397610684 645413107 211560766 272932045 723677334 967206381 193966249 288125372 66868514 383070815 793376517 817285280 120351998 338707316 398027458 947693901 519346623 647926605 337971437 509340361 519733891 900971541 716876841 865651214 867426218 996556678 838768627 919812908 261462568 883877034 991070734 996231430 622881591 687247098 347298727 479526694 314933588 521756601 535757835 567765728 48467575 848208992 80082012 826075583 223172716 519602742 94886245 293377121 696503784 776456292 115220272 737493819 483999687 833132956 189193714 447785450 10841336 738984114 546199121 969755584 948086667 950555825 83140344 562601264 817900937 966685326 919379387 993486110 297460398 961618264 567836595 721400509 940912004 982904632 360055178 837568303 738053752 931249291 375969625 879725410 848428132 905536790 463279206 695861821 25703905 362771424 96512067 298351077 473967384 505563930 296293131 902168725 218359292 224673557 142310059 576331489 691538751 926643225 963727413 994336639 784683919 916797883 284264273 970777631 149415291 818540777 175772868 444514002 392765434 679394320 251536898 559129133 114084980 926433823 814022312 985130557 715314310 779993088 611198710 754066063 734926940 738559583 257083288 474851104 23960068 798565968 334298444 860863909 65517800 291485829 898647694 991753843 622226641 991542318 480769134 526507198 22622549 107042762 600286854 757317922 214630760 387714002 652297858 742855611 356608387 359689504 395345138 582651387 684201088 690058072 990315044 991505111 149667703 831768078 56510792 582894658 847630107 962677048 185806419 706549390 198635601 682227041 802912080 856169486 548310493 912534563 502974068 941623928 955574844 977099121 782673507 984672092 847396414 954027392 724665024 887750886 219013196 967649374 920927724 933090327 607616207 710755615 440768544 785324877 130922281 267262177 911133075 985599464 876457871 975100898 334571920 567947118 930575946 940392286 995908809 997085390 317039801 328484346 106474071 654125108 231893324 877918112 490448301 705354206 906850549 913278356 718133356 802878028 398379923 715614572 143262201 309559601 284963474 570203414 142739747 202369363 865067032 991864989 411605421 908459317 620597382 804199360 93098465 878389879 257315293 364415984 238263351 996869609 603555834 764129062 273800879 464995157 614261474 757301812 533273115 737624728 612673784 957308892 294589910 466135155 270258087 631554313 194163962 859706974 831811402 980733751 141316562 409361798 42184665 948721483 841085724 890571942 166557691 424970821 468431954 692277969 447957145 863495288 985679118 995131689 270791553 529828154 207423070 499892717 723709558 957054968 481738283 776159385 655183382 807159310 872270399 910447162 603206869 607241724 631882602 963340567 402625547 553096976 561437434 915979595 196582578 578409807 654871416 988329660 480097743 702741819 348565850 951453000 950648610 964915576 658741964 942478982 113833194 944055476 997520016 998468009 769542815 873411658 755838081 998315098 951208598 973046507 447084093 841653180 784491862 930394497 657632729 867684663 167411702 823084457 485770037 612271643 585849934 858406604 639716665 748651086 967251006 990973458 941521186 994610769 181387612 577301842 253809755 952821459 857390495 899802812 538517374 910434105 96959721 108970058 228083514 801662649 896670056 972633213 69014117 715215715 772370089 916570992 469513948 482698275 440282241 909406206 763216152 789709791 642760620 739839343 536847520 797721083 113918743 651018797 895478769 974527046 938237674 961599163 693656929 807096732 528376966 842898001 965967531 998491272 873673382 878987744 530970406 869163193 589329383 958621199 296074836 945962954 185880337 207394189 733234781 984635003 691798625 907570701 228507593 291459910 878897447 968238485 430451002 943633494 648369043 994671168 816301485 915935045 247198964 639724984 150780555 714277539 657403269 926098188 193680866 473004442 552754793 709856031 784111410 945845928 912760879 942220654 652869999 743329648 810383102 943227737 421044938 442229493 480018004 807659951 386091252 840525453 281248712 782935092 859950218 906111436 587725531 825349913 639029934 845447012 397279457 670040294 455075027 817031675 459581209 889415397 179019065 255916605 757621981 933924133 236709260 839655912 779730944 815717864 251082105 869179467 185590323 207912783 820677586 900069413 650111052 846436508 41869500 740166289 450392426 922322587 902348167 992624847 629370785 911772184 105579664 759523929 308836237 572713346 768333360 801455684 680627680 785165678 807578474 862006188 81642371 624009229 675135523 834255474 118553602 375553787 116287039 472988525 831641499 874922896 224767063 967094639 495175670 704687227 510668771 924338261 245816871 911903612 8241878 633290291 201372915 724653534 469654198 880042136 243928796 283171078 71200585 139191352 353468616 513158806 517298511 645044205 580008228 754392793 641145165 863611467 182454475 774096788 539182730 786152791 664941628 903545600 189766868 972975057 265626510 561011717 415130280 992838488 368594065 508995684 372496049 760130029 297969686 485370453 516444056 679585883 773181257 835326406 965905166 987969820 389443494 601803431 65240576 347301344 814891774 975803905 839754231 894590421 684015674 984633044 935583085 996399163 242124336 528769679 856573406 894596708 759427945 952659354 461018103 564803798 608934722 869937171 151037943 222396084 386512198 889298444 274539007 647558091 146488533 848674735 437420294 655861714 485739620 774249652 41454096 78639126 384144543 422278133 621958063 647563791 413299002 526266701 288440869 808614253 631304774 889079535 109841487 758001585 30239989 67166298 923203390 964047815 99193215 306067771 617933385 629175306 624168066 841456327 790085395 993654505 197856627 388530850 997004447 998637333 776470417 890556409 819222003 887700807 605982325 869745666 589217347 856339749 878729680 910009109 509205907 527094105 826653309 938954271 719530844 733288994 112605407 223623361 701450572 941969404 722062816 854330744 811832924 956541354 76773013 220604700 146276372 951145719 30170358 641375505 540917259 925176702 572099330 630012997 329280809 398223755 447631256 631052208 876189354 998301694 427774792 691940117 567142455 744443092 338520202 878094675 976621613 981126196 143235210 358743030 908948549 923544129 695522434 802600560 919305157 923885218 196195407 905153465 845879220 878590451 480458566 994761630 360671267 889802937 994248873 994534304 989310295 989369369 243282454 831693926 14125215 271092488 920709545 976173798 295668816 547114535 980711972 997349272 679879017 954378120 988211313 994202056 568273170 704754778 614839775 993579319 698325999 917668576 560258086 938524328 709547477 864675549 879041513 883145039 464888831 506989860 141145750 291653877 191265770 964228576 658820258 834595369 614717866 967288697 357570738 741447352 15935835 878095938 880216863 934033243 284451970 481258843 571119457 978962698 35892348 317266653 751893599 964764869 441409335 885172026 716925841 876178333 600668890 679853127 434409126 776655059 162691 9978628 487864339 606769961 308553104 366922342 672266957 860351602 220251386 474629045 143476613 761328848 602806914 942828247 729671944 763499855 260427283 913399974 738244662 995790645 263349683 498897830 806772840 928890233 859272757 865185289 26374154 734029987 541778018 737215070 32585010 707068493 539440621 961999057 549401196 696616769 132880648 450343499 146890461 872548876 95592918 231132617 155582806 880036869 775279809 994152231 726240028 789829432 808856626 834755509 321855177 725694580 557652715 581977154 418882096 793212875 765959111 802416805 635588573 903421409 483389382 800591327 227806744 521864933 898090072 977758638 195619098 801865111 971040872 985282495 687423581 807757285 645937711 727099611 707632594 964018238 384834385 928222341 439973054 927771483 780169515 918385032 81325573 209794060 502465821 588453186 176373531 417204837 498813577 591645544 803695342 935615424 474996356 824816998 17481583 402875878 844616166 927119949 183957271 517894735 964305422 974662815 75515253 317923544 348214639 378953351 471490171 949867910 272925249 812075493 375894933 780384600 174126312 257693317 511479105 541503941 255309327 673897509 237244192 896317730 637476138 902375624 256847757 952645544 133772796 224025495 88983288 149549996 473025886 576671294 373823834 487613032 29951322 252307005 875392777 921349614 604760485 683105776 544483142 806096320 363657231 990113421 524669503 578002043 436649892 614196636 47346871 858724154 449064244 907013573 777832420 907078679 475569171 923585409 690541019 788182839 854329369 928719220 156318345 489613205 996164281 996309527 345008217 765214514 985539012 998745945 14561647 212185072 266268029 559059219 30005938 635251122 677043501 849294235 195162724 209285643 33093183 533315069 624430588 848451705 79916987 645565126 205433769 910790876 981430869 989654913 644442386 965319409 495257958 883118070 369119721 821553087 305778452 388969133 937112380 948613670 545191334 912508435 69594391 481393988 367683737 802079133 103637660 939444122 337404979 488769803 47730444 386153459 894679843 942297835 421956359 899140330 364790640 700876649 81635733 123588768 881202468 984495240 140852543 297874200 855638687 900116906 144927648 619086881 783491902 981016790 879793836 943676901 342564481 820568781 615992659 863410694 133236464 784504189 325083960 523773696 999252124 999847563 355285811 567285838 124953724 972737570 719118570 753258285 855387723 997298167 232155730 625752213 26936325 259135017 549883010 743185111 441048996 747685754 546457369 883375362 768418506 890514364 715773823 971013320 325192026 541372369 739118885 955326977 400511074 745513654 674023136 839493090 313287359 821543672 705272499 940267491 570329416 681659797 574573116 981202418 192747603 402528535 583663720 877554564 522339349 719637907 980076274 994759681 767351191 855083462 148828710 753368019 223473082 446962758 976912089 999752769 276238919 307557303 360674321 470559099 767673050 901622262 30114692 570668925 575979515 754509055 245239135 678632031 878829334 979938338 604905715 709856142 313921386 572505189 566937219 669465568 298904975 322490284 337117665 566735187 833464747 887009592 639801591 962170191 468392211 819770727 794173802 928742790 715149614 832665829 456717186 631769504 534223416 828205859 959584932 960338557 848442295 916154459 739667077 892643692 45963522 371780894 986580076 995513491 689803437 850049080 647764992 959766226 689924678 918033503 756306035 962398960 327417605 734019412 748264178 898479164 374978755 914571926 223062241 733644320 439093512 574225631 853528565 857078046 593278172 780956663 188431093 280598824 352441526 390541770 887062247 954151867 682615458 883165333 627511769 825975647 672128629 737513343 908339515 971594924 573518511 754835254 45776580 104787530 383568034 392132008 536119515 929624492 55602566 954020071 686249537 809712662 937686268 964656941 355806333 881591199 219656717 999480561 690922447 878574824 560855582 724130540 208695739 421998208 675310000 722990075 740163286 847320392 838728309 953173751 323151849 662385066 374689497 567542511 859375851 958531601 191426676 981398907 351618915 572373951 968398878 970948074 296211981 555161289 931151127 987283965 927320492 947971106 891388293 908634820 85580983 951260414 151450336 221833620 720011980 769536413 332879433 744086287 447017748 880379877 969866290 994150315 354650753 557163157 469446437 684953424 868325735 975898256 191231974 949149398 410586943 615811148 391247751 891448018 783019939 875424410 365185960 925875623 685526422 752033728 201618510 518884239 270779846 931228441 437792128 640332563 623386840 944792443 241735297 783339236 615624812 648659079 288175537 304438474 190924701 297236614 907531191 954444414 305544639 461028856 95309086 642624337 566295868 754037132 892076380 929931649 772814616 875029669 658440717 850479731 234009495 254407674 395024569 927174398 358778331 834863925 530920450 700335577 686956961 984155111 775037162 961131408 389312874 985895644 910045367 969608677 299787761 426648996 279619244 503334300 7270241 720610728 638726831 703646038 89864679 154318171 641242118 880730421 340856092 362209342 235014003 293125202 643267827 981648953 739658704 761315590 139362601 722731239 10471817 978766867 705603014 821991727 34373651 773154783 869417394 971643897 369220101 583225969 358861560 651935937 41909133 763521508 11501749 117910662 524207914 994805395 287134183 614050352 834427412 969437764 575568578 699725145 356673311 516111011 527787958 860780921 183513931 249978348 931518249 938812862 950302108 958970119 188290402 297021892 569181256 965307252 904854610 938331480 69480052 949891793 759701831 826055134 660347351 990035160 496290861 897448195 717883678 875591489 210780927 703244649 698978704 953394848 426818191 526051920 101212024 218837743 908715599 936098657 570811164 846783782 544476942 661633387 504557058 655003748 936952043 940913601 987496260 995713107 36323814 625139134 835282198 983327439 752303505 892970036 77624069 344785669 891259282 896853728 759652161 867823172 420128857 640380135 677036924 879378193 124998663 313153913 697433491 854472996 546522614 972526036 356944087 697526405 339816769 601591705 459259356 882037476 6772342 583908509 809685995 956947381 60778360 521817241 703871695 829015947 616004092 903928721 645076865 894143483 412813806 895826866 679593351 774062974 593068444 611688694 127360030 275139376 322530426 731250184 346078733 605809602 836344203 852454257 856572057 963248423 565194702 991164235 720491064 725008634 348950238 736443980 255109420 273783368 784193063 895504719 35745443 137071355 608647807 723322556 435409976 951899052 234581090 246377260 251179358 720765943 244220439 426984930 375719418 848585925 146818040 244288082 747155822 908106906 305450711 651368400 412081911 783199934 635511414 835861533 392898789 883088601 760404464 865620503 256568359 724707710 137381756 818797131 384452481 751213342 797387449 857790255 317020309 485107063 806717426 879928833 348323107 377040669 215538016 712329463 78113511 565582564 800360474 971971097 711121180 992629978 147575811 436491875 980799161 999579729 630466701 848912652 84299211 122993327 574050551 617504354 242093682 800552791 297949081 889617803 109179962 819783590 778490289 843808895 268909537 511646081 434043082 860612467 888232004 938894491 433502998 887475657 557326842 969264337 127673796 161132410 29585140 558514305 625737413 661844058 753003196 754972344 700313909 924556698 54614244 250420333 257785758 669572443 443477111 541255826 632999754 888632851 489160573 505244837 705976915 866261406 153024716 499461001 65021275 752070745 8403130 739225428 265411467 432438919 43435083 742236641 527069591 669024600 300908432 702329081 442300454 698835625 712625729 976505391 960021305 989533275 993739542 997427788 992994169 994178944 262467881 979546078 813884075 926713019 36427298 535802351 130827132 950031695 743565602 787193897 347815519 657640315 420271367 487219631 159226510 367360057 830808238 993520634 591540240 752598019 647693015 892032152 512614309 543076453 792213429 978322047 749275183 986113081 968031857 969907066 168845087 864620418 305017524 364974060 837092454 916119699 191086233 989450718 25923479 509748969 83074483 771637627 880155684 905779006 110335987 299420672 660764977 804505053 192921817 323268043 590754587 885695852 707102095 863264396 428131826 801422969 64775216 318729651 77155404 810399987 30074397 769476427 327192489 966659141 268730488 403255995 234226949 872742564 190030253 788465878 726983543 810506220 428917774 966342552 134403324 559650462 756897442 937738106 653803391 877792056 509188427 923498226 878423058 905626658 453974794 730728761 890703436 949832788 878801799 951004904 441811399 967593413 817231975 822731872 423190189 709884437 894711258 962354359 530218166 660535869 215383645 754829088 64498804 536949509 958007772 974239602 484463080 785058659 329913595 859824950 129233954 198210156 428198884 858608059 330707844 446506928 276059455 310051866 212397772 712572071 767778526 787146281 230041987 283233813 86010521 504698008 307155304 843504421 247513122 775410945 235368928 651881353 430738228 444659550 163323378 877377123 17995662 135612036 863084714 983224670 880074880 905972469 890071689 921033140 593626096 695318652 867296537 930805820 614556137 673212701 871013831 895646901 67871765 638150746 255931572 828240228 575666313 809595184 985301849 997069990 870740161 981222869 418466878 543643316 420863855 533441690 35820580 484646356 305303732 559495197 165007140 977989976 79829611 821353132 927460783 958592925 408643097 798847071 796752036 982793442 305650516 982763781 693158725 777075004 833509164 917781100 255016878 865171722 983707612 993116339 755358701 953842086 523104190 904283787 132028521 954507716 268411337 596711753 880232469 968510714 906651096 969075942 38630912 328556202 408954479 569956044 563968721 846486396 966549301 977220795 45679481 710428885 164925079 257259946 615883126 941173962 349908134 873068431 619102955 843019142 977506533 985321161 312526222 596536905 393108657 898525390 243535519 750982549 758852086 859113784 815570018 880417999 472880626 735342202 198851686 489308678 385645579 981372022 463519050 700230630 344811514 776660244 105700774 994220788 594561588 657336377 840180528 847581004 728932078 757132804 910788232 994284374 860547465 938975817 124516026 740626459 926868867 954758748 245591229 483748271 780572334 807936773 394018934 399285109 415932968 686705292 603775915 977683891 328419538 681708181 930493148 935327409 663382414 854405653 733214700 758764353 325766550 716205585 71507649 86301019 746204477 904863850 262084521 422213587 92216365 349857411 589613212 598638567 788499158 860377330 145142756 786778904 923089351 970672488 186995497 351269961 64656405 311773288 185275649 584101186 35935202 351471265 491363698 574167636 578197573 811561736 386380830 432137814 156985460 902711349 603380878 855342174 139774272 507559095 285828558 299338600 256820380 518511110 6229537 415062118 633140411 933197317 446258802 619735991 549985575 997257887 492178911 727489704 268915103 368325486 289619280 469245281 964248155 973150422 215326207 922191487 53574090 763564893 180177517 675364598 536948669 671221001 558437980 931860916 901181503 942064199 742636596 937023031 823270692 984555203 489606989 954262800 568310042 801243604 26893509 620831864 56213475 191815511 265983080 979424701 44805166 392243238 780747149 803356353 736203061 982535760 50864961 244144571 91035824 808725864 130873159 248287148 161015610 571140866 190503937 821797785 189894133 859204325 344578494 823318052 910674349 918709601 284704539 964927448 675790250 966641928 386454049 508955663 621484912 799702047 786452660 919237799 967326669 999229374 689582912 844793613 914411860 991466329 887900956 941863363 443855062 660365687 181124243 827226355 313543019 611083998 724465031 735784832 505095213 527716694 915858301 999640191 532279270 830666579 420706896 616978452 37119305 382562178 832999834 935064175 82910970 564553677 245795722 799683177 773226489 888563292 741676701 924605082 50635244 654198821 379965506 958645574 826854129 838462635 924067653 927550947 506331522 562957917 439301816 567355415 176380724 532508746 836686740 898760653 969520178 976977977 815488291 958448671 364399333 370970947 128004952 822542711 831350835 869770115 665138204 922520987 30214960 948492021 726424385 815286491 68601731 204672612 671201626 825337774 532142169 763773693 515848179 703370308 579930080 988326544 161334864 744854266 83369574 413479416 111327119 498853662 77625084 424709798 667958780 743501148 684231986 885892703 239108432 613984841 428869205 691867707 708911333 797640105 661888735 879968814 250024268 668725728 154500923 752058535 304857842 389134760 762779140 864797933 740502518 953146258 346043281 815198236 842081118 993503731 832257674 996915181 677331257 997223339 548357929 867971216 937863939 982478348 621150592 686022270 613585793 645642062 774826108 914789930 265904854 593267822 568871469 870454323 440796913 948395069 63144226 610531676 803840483 998534087 187147077 938032486 518956685 615863008 890942755 931351923 952933290 987627617 949942996 970349003 606648374 855028809 696380859 765888158 310052102 559430128 253232786 278150446 116135749 951369342 333830082 716810935 430664522 557687575 600671748 796332357 504339824 725996616 233872247 494814796 611389306 715969734 66301603 872840741 494711442 997459229 615038642 883047149 461380575 541420823 98063021 295570907 269230653 924034723 885408356 979455069 193301611 615199569 700742512 978375318 86184902 945064007 858070204 920510976 555334502 822466083 839577580 963268064 627212989 890857143 827111984 886882937 830036497 921916541 678066822 944726906 574566024 986948777 518829117 790375579 361004047 452934517 741678558 749430994 150164506 353151197 819319520 902020421 757166779 930721464 48990223 122819282 851200818 933397867 493628713 794015882 717896074 736188164 960117436 990686469 765216495 999805072 979424222 986518812 467615945 632123662 74898006 556104665 323253585 614563518 797294107 908786012 974741927 987911476 197251179 251127412 727471708 790583227 198742457 295418616 301746259 497711013 719554907 795588354 874786806 990093221 313358759 417208617 82726166 848943442 876124324 958442730 302588649 365674366 203096644 792387274 754607471 901089019 909618372 989940035 397128811 569985307 371227610 864958677 525328092 789342917 312382995 519104325 705896217 993320365 668033687 749182863 847213539 987502257 711967152 976180683 961643818 971534823 877185675 926400935 539893836 934177324 98893955 294161942 899466845 981821364 654881824 947856844 294108479 851030109 771356866 950927539 922550198 926188005 500253452 920576728 666920199 974626005 959476016 965515554 909943538 931848755 967281974 979757103 979360254 993618525 315716015 814713439 186592716 811816864 436662314 759737836 953941986 975399575 321320969 958649699 532121354 845768792 951159814 960303035 442005005 717496086 203379546 731704633 105148939 813623716 828870274 876612823 550621869 792754049 733449628 948933890 365389265 848244439 353748462 591625378 153757456 998618171 965467969 977212508 199658927 909587700 325778256 936309453 807398749 909949143 473533271 606497655 653550913 925882958 475033033 950824986 485581029 750027991 241061310 557369227 77685361 254270234 957082194 973266615 363902575 387861561 193968199 404898027 911759810 960413482 434137003 734996997 359741521 961284707 700721774 826326925 364198895 823356957 735312732 758741379 189753093 230907265 365051018 645619270 53557879 464125843 434786073 777704918 936277789 953435578 347307509 619124454 843191873 906850006 343400029 865768434 369239931 618834130 83765336 174547056 479713202 930081411 492220541 861711046 605524640 659424390 328131125 953118017 406085041 428001601 371444359 915559803 858031717 951844062 744786934 928213598 619374879 649765824 564481544 719547120 729336546 996322277 136680568 246744187 100899314 564106851 982629372 998877067 997994015 998417352 386442583 839723343 227775006 446923163 993117970 995548087 845524026 967385975 1698104 858834318 805562794 901635304 273782917 313978206 38585338 225970044 639539492 652311531 508622128 604326801 780729029 941069599 97541091 117209490 615447006 872803724 553450636 595117692 621672168 991485365 626503127 963514649 831072720 963765726 393518234 435068758 861484299 911202887 243026458 310405407 506564601 846597756 490626881 548577502 614410404 978810833 866981334 971796212 723321466 933505667 898667422 931440754 898935686 928441250 750286448 838674431 278978730 388707614 581784737 786311458 629128340 775947681 429796962 933826016 9909537 290023579 633476260 923137812 839971999 966164112 617860065 950722828 14371143 331703085 612929442 807877147 544811610 956220036 323801933 953806455 82608373 475692672 525592428 566175873 281755528 787476114 75070678 217906425 657197798 838211031 295276169 716800776 40600657 568424933 300181352 706652259 193807521 268919421 349811982 425048578 935427182 940154130 371568170 737187955 538661923 848277760 514579655 608927919 416309411 998582940 742194472 745520733 534057153 918445240 672174073 894992342 258915632 827572954 539556079 834985959 769026258 799773681 266428886 427381924 697379487 762307288 669256054 777125579 78488387 777487532 933297350 960523659 97196148 207695340 925870754 943943947 648955535 693770715 480777285 921042145 528155079 725471815 131288317 260878866 748528838 955496719 914669404 917956767 593121709 912683874 648383889 659097688 698018800 745159831 347395942 897796937 114494596 634828568 623199409 793466920 159956460 855525749 109492844 254023685 256905898 624599750 995067265 999954665 332543474 915348705 32446742 865947235 949191139 980882287 276269198 625459566 403359581 484601170 888207890 919831109 278632063 638501219 306063814 949404565 610494979 898174023 549065992 835488866 179810929 697617619 362730816 976289095 158662341 360690656 77347088 421956299 805839023 876267893 424048068 874241839 111234908 615585323 798848583 870544143 152458619 321735439 35482957 124541517 824730924 933387854 944979382 948813517 356726606 602147271 858514436 944309499 814424605 956458572 56876377 94304657 109694178 180044080 437067255 662623099 883874611 922471339 7221953 581365781 58445439 527367588 637890017 814281412 988338165 996818137 66999444 217178135 124655870 843534173 18877771 999760968 941508627 994251201 293502080 766402245 905726293 994290801 282862956 604217566 507948226 527516319 653764146 799549055 783372830 853206031 806121944 809018284 799523730 813891368 48526003 485331916 745271292 872366251 787246732 887217526 457755509 941601180 585240939 946909165 167488202 249294791 822598548 891352084 446929959 734670492 953447279 966438412 678065 287755758 456916789 464769978 469838126 525906643 706317921 847316357 817019907 901140183 234252372 776673264 964966068 999235394 305012161 687886431 123416065 403002017 529299295 878076335 926324856 969035153 716469111 768647162 721238254 896081468 127377475 705443691 863322301 915910353 782199442 859796378 410252065 962909781 493796655 811816392 17022667 533287702 816928136 929623289 119496063 549399267 108146126 822970337 164063671 667441906 885338682 907156612 935672862 964813352 684702081 924192294 504606900 608146257 88463522 291710095 232083190 376625540 215819618 350688050 67494558 707889779 304833028 637286162 961430160 974638268 459545395 836435568 515716149 885212492 62977228 452453023 275226811 389052090 96049430 554743230 343958182 886712446 714380596 717632934 781627389 957168482 84059651 682273191 596668892 777474256 567534431 727924346 592597874 694107373 20414367 579962870 551048341 692164780 690546769 866720673 255253076 331500867 341891271 387617343 68100683 371922619 853601080 864597175 450747287 553327705 805533246 956779530 188562619 280286231 870258246 973961410 589235121 869314237 929818658 954561120 763451431 971825112 910149267 914087732 325177481 900903769 53129594 495767487 727234877 934112074 738688419 993483190 49795658 220782713 297188138 887407796 493560980 886593029 270718249 572185731 793330830 867694613 850772146 929412736 902148757 937912664 415523728 705826249 126029143 953435200 685913453 753676718 901937862 995346761 6763415 788330999 217017287 445920783 815945555 915891121 441975237 940228315 45442700 468170656 518601543 847421581 67711265 895672748 929557236 948811300 637107855 683652194 343956574 818777781 722409486 990239788 509829710 709017220 374755352 827301780 57461489 141943967 904453500 989307629 35387047 649530704 393663381 631901285 706356273 707535163 60411863 976237609 664227302 858702998 436536178 520649079 417750942 765788685 988820780 998026196 851001370 864911336 869254739 971860102 565486091 713304719 766470070 922377207 798486134 978994359 143469151 730548271 985002847 985295378 669323547 726982343 236169851 442805946 355518783 590829511 563187019 616471792 842642859 856813648 261923564 270966469 285436804 722695886 51764801 301547475 80085329 898141970 337620149 616604336 307356047 555147065 541890234 702668407 733171158 918180195 381953943 979894561 213912410 477133668 713382987 889891092 835586598 851245211 725693658 913049600 635783349 912441932 490176591 971200367 999287704 999420181 870653725 999686034 654967474 771352076 992340452 995323683 123588212 290916231 510506502 755820185 433397948 538633358 226935672 460811827 986579027 998080775 680567824 900845772 993816178 999477193 659508165 825773952 933650336 975446722 604306097 606380495 760254737 849021668 546403769 775022318 552112724 734695151 695403844 906304606 590590727 753829875 330910140 916062016 816553157 933315819 202603710 542044767 154288892 203590836 133690812 426886453 852663381 891776918 169510805 643753931 227113363 377491595 174738120 610577970 803195063 916021634 931003124 983295431 585566001 909918758 341525580 929655808 127753564 390293762 412302218 813425842 755347140 771902152 398153778 418014557 909629287 961774521 902776844 956282990 860628808 887932591 828564608 943614957 782627935 999201548 733745888 938122601 919508172 948865740 945378703 967934822 599758154 609353754 298750070 648404201 242228121 828111899 549840178 557305762 264020562 457843840 392315364 982586864 952199340 968857351 717387696 839355526 684035050 935470631 12289540 936288329 188513083 241381660 17124007 741163138 761634208 919820774 870964282 917987798 204400676 578946361 686096044 778452043 692791764 777102733 45660535 586854638 874146263 941925611 598620542 923745605 685765239 953140071 896649087 987262771 341681832 762263229 304223915 376888332 687248118 789481744 309187144 805103519 169596273 440181854 284566324 613634477 788764378 996768752 553265652 592980297 172424280 660445613 938747701 993675687 833776846 947858532 521201495 523099538 982731606 998980652 495378871 678975993 21692519 176055555 249311097 811282231 581053980 640514352 811900242 939411102 40157334 59113008 212778865 703257060 809484995 943088553 618773415 818842968 372042573 616211942 138799503 605193972 995152081 995423116 542272335 559806949 93926411 415033283 93757566 424107812 774323419 951839262 516769603 590998180 941959822 969485862 153439891 666123629 1074274 328182610 166277629 827623048 670615252 894041274 18358056 809224207 617794836 905378745 888181429 950259234 233167945 551650029 872549642 914610447 929707741 982274693 525534552 681708588 361735642 599780003 210485291 736527548 915324120 954369249 905701203 906236209 290225740 756590579 187450906 477570195 912160375 924238339 515428833 577839111 869482800 929471349 223120148 550433212 840948145 857657997 525829441 622981957 812491829 818902952 472035897 801299164 106475358 372169497 705264674 838976436 249890855 717290700 412548459 626056971 589094509 849357046 22223698 234322491 389870484 429298455 985728530 994676599 793592630 981940181 847755840 855472831 946807462 959458424 67341237 170571545 613428774 679250607 962101413 983105599 250541747 597137434 165760161 536534537 647764533 752887057 364276873 887266360 655718661 983585303 131369712 502468464 165751711 549769341 482457837 789340527 886527787 919775035 693175453 887447155 858496301 860829267 333583134 502882226 369775812 558903163 22001162 554221077 564294356 713725534 349055098 707843139 500207840 721056289 341757878 936309109 5161445 893193434 971865543 996198577 567450651 865884419 224429236 732563664 425774000 854644290 580891092 706667243 967110189 989555442 258747148 361872031 919425766 978661682 765821475 877215309 870342422 902262133 12679100 266265898 473305200 603375220 905414835 952039182 272837621 576513938 37270946 696473624 462123372 912232268 345092943 476461225 557465500 989022632 728831190 848706728 93712362 522441262 363208275 540340672 103892563 979846652 500633743 814857934 540207105 646207742 785573262 851155695 88668070 732274405 684781716 850505057 923707245 941841007 694907213 717350787 101075820 944676572 73205866 344261328 899038999 932151318 146175529 798696307 832850160 852489472 1346468 305026356 324643053 662686569 672500070 953196429 380210515 530927098 613747534 854715351 870178451 961547140 531400057 686496663 857224208 937205620 25148501 719681450 35262595 941345927 938974516 964554024 354010361 922891343 31665808 727930885 467823099 656007574 256878520 924280992 998380756 998635797 739491037 815197112 714366921 855280519 858122608 870085148 624388491 820945052 351115872 418422881 971534830 980693343 794691208 976610474 821278821 852165751 580444389 912615774 998501166 999662005 418042591 767197667 617545924 844675431 519492236 812984779 910675356 982990553 552857816 603489102 25241106 682860772 272991017 585355438 284683869 509066264 372196952 485883472 610609009 818811278 821695783 966671877 247989665 504042495 727113176 886997024 460497680 536598544 575230675 901282742 883457705 987276430 777333899 958797995 310203898 803817721 110105100 703421137 415669387 623580123 805826807 996121804 766142675 848561722 594115164 690803037 904621272 963456810 156594992 510306605 124975320 705948920 131569177 262233638 383806040 902299061 726185726 899638950 491695820 504843284 965764888 980011106 799418510 931072573 692462780 961686104 697173944 889211688 610572512 954672213 535192636 664470045 212279719 367942615 459421222 922923997 683148933 711917849 410670399 496276644 427146026 509058150 360555339 391039378 146996213 578679829 168317260 446531123 806938728 855881701 304975718 341791425 917998638 960198750 264200811 887329809 222618385 809001570 961540665 976593598 256757480 702611398 306079367 406316215 832519763 952383313 576145460 945915272 132786821 902109826 949092377 967410805 66128207 464813919 880834455 909067828 131253651 233134353 219446064 786294479 593074215 632270016 910373192 933757479 592482157 911233431 939002941 974961797 665513479 868557146 336701140 824815170 475037538 889224941 125104714 737740537 625415193 899078064 389117119 725253015 984909224 999643916 270908480 488778528 139351808 171894063 753726000 809279424 484838035 663289900 775242541 786814194 817674412 946233690 627176248 955155911 697181976 725898030 866107255 910943786 890898840 975456226 979817217 983126783 171457301 273995715 460782818 610748992 799312096 937798615 659966860 837529556 699973554 897184166 42838721 380300745 133846054 961591619 751394589 818306636 309964639 616616941 213640107 499012809 312712637 369985090 963597742 984793094 687368966 720530311 32241471 212206644 155652294 304799934 863906320 983617417 668788412 997071270 109500325 960360500 664111615 864289734 492177845 954622327 449906656 557235847 308716351 606336900 145834551 462600779 406085072 431490667 960556516 978308901 38451502 577865060 567605570 893579778 287001538 645260764 783791618 925110474 439060847 517586676 11583855 726706186 612375440 700567536 760651677 900100643 877114488 943970719 965517152 969053277 476930130 665870985 53817719 989638339 889277422 935130331 757886219 791918897 924713355 998626278 348615617 424131470 421830737 857783327 498001957 688532691 696419827 811941234 517943847 631288908 118393518 623044684 572070081 825082731 845469910 914973927 989001989 997978898 562980909 873101886 552965186 775981339 712989207 901444049 818631672 822971883 258612874 802172558 575994341 741120056 222134459 742642038 446511955 520020008 523986852 656226151 144920549 343574733 378084035 831303292 357008058 421783389 145973362 600702758 536783551 728686241 137137738 453208906 760270494 973945675 103119258 954171926 211479849 275175630 705021131 895133479 923769909 953371295 470632223 874332490 371001836 418552948 674355109 893082596 75665726 402395609 952032232 980036622 494091287 771117286 777508575 857349896 922731154 967863627 86353479 940874833 795640042 976503112 381299002 546795493 724555949 916539427 485716432 714461700 152392036 900212658 16430585 875431462 715913984 896125776 106899234 121175229 554187199 679563656 87741022 806502039 140086781 264506003 485387493 714320473 446869172 544752122 697427681 793289359 555340330 855555704 699172605 979931985 47846707 527803098 447646843 882813467 525902648 700558005 885371994 972149512 287628648 784726964 668785642 826616078 162745621 381681672 970715055 976849379 111718890 983618897 846397527 938136636 976213075 978154016 988114485 988750936 618266163 938997690 981631168 981986495 43726692 48891489 677481075 800783827 728019134 942630996 378974929 512537025 846627093 889618422 517314134 704544765 561133959 653322812 586541299 852119190 163928835 504215212 44216885 863137055 816327884 994903280 419766619 480937918 184354261 304282557 565305433 650061147 354930338 663739062 324584449 667227200 635291344 856113537 309656901 378772265 100721952 978103485 795644508 872300833 610206010 781907058 511194321 662031855 914067153 961361457 94088183 814448479 816336430 895599099 848591701 892254132 795305171 938428986 907623113 953391474 461397854 819381406 391253133 910638052 380516948 673391520 998396773 999231662 443633610 595354362 558272222 983564596 138698472 593171336 946671655 970508171 504205495 805856199 190423721 739981436 39311984 49416935 114087732 485611758 440771980 622196828 397367639 598960898 826729979 861780440 267276196 425049034 933947463 972444748 235705430 285019938 816190698 859282447 526658718 697488409 51422126 674063514 728565982 873801407 433980607 960723482 631388654 678032749 684539929 837617018 665030706 992170237 252781777 561966054 398159383 832319717 403419533 679309310 241155362 940511735 792379619 918522665 774380367 790432419 829749454 833268901 836633276 847379330 10525039 91711692 753512852 812575498 224347535 512228452 356863395 815281630 608946603 773264356 189040532 478982058 19044087 177432591 755494322 977648397 453018193 901092720 300304440 505493263 887230199 931182521 154498522 208484738 174870362 623523476 211542302 738931472 17718330 804118158 297825085 630872530 101315432 848084681 649125157 693765681 541794866 929908224 362941398 422444208 427640442 727464516 728403936 936985725 115515769 197992232 852854467 865515185 263315272 961569648 885484209 973320135 310593969 550250124 77393296 335765182 193539787 232016309 330691198 718016778 250394280 988905894 339901005 513691581 209196526 226906974 850918972 940872903 381213904 409261468 671098959 887579781 471925586 683140099 741102169 773596063 261935369 332335996 743632627 895608102 399252791 723333191 230870081 979889481 409254414 695894845 282827201 395906560 524646842 739538705 703655117 847623560 117015199 924480068 704985603 961174898 500422322 988641402 205903699 321082770 33219876 906274345 747906794 828561340 214508920 556746327 808614749 841779594 721345068 965073743 747981654 755250962 601218740 941553728 656167041 920510580 477510045 519079078 911093415 965410880 824796776 894695883 532047347 685956670 360444661 694871813 494516384 988396735 757469457 891184028 550357870 817486502 748824478 758891632 873106588 979706603 829763194 866132501 979625132 994698664 454475121 842374489 352901406 626876789 134862195 448161585 100621710 229960549 78554502 536598534 849181747 914808611 32494701 312071953 514446956 707989577 407690070 844721009 55601957 982623058 714064900 957924720 910729839 994009636 988041814 994942366 939229596 948917880 768533162 814974542 359803792 955933053 609289560 816707222 225351621 628358663 287013541 475850024 633295070 698479914 259880982 769950699 468506770 818557157 124590779 681584733 864259922 881523561 465261120 919566755 677359327 729250015 13361956 901599947 664014717 833715265 871303053 929870322 649464553 833169711 962044935 967206993 565509576 884690272 227002265 711150300 497401355 837987409 490510561 613327196 997251019 998085261 859058617 890075019 949565093 979116081 453645746 868912608 420214717 927556607 732091322 831410378 179994163 354341598 42714965 665507717 940394330 970413352 885034118 910985882 318960108 674951310 900972363 966791582 439151127 595849072 574328452 768398192 177494877 338593811 242024988 548343264 145094278 587119566 210892567 973930490 854831516 948325891 453853920 964997815 543413940 979583339 906607209 974012194 515564002 834268399 292122730 758454568 782382983 864462784 416853426 980943478 681750789 794324171 886911667 908984032 174914808 175217874 88295896 300870830 591261599 894421758 406986071 931920368 422078695 662064824 346518088 985287748 484033807 902459770 95634098 133862913 632520405 961565359 469067579 676869120 647551321 906556005 25814421 126366540 798266204 941047933 265783010 322518199 73462995 894171219 372672165 832790552 926632380 940896953 77439381 658066417 419335706 949422830 681191248 914272655 259988851 589543467 788562998 840354312 328252137 616471259 607470636 817785628 173034514 631819473 713456142 952751643 148406132 379989711 562641380 892823481 133956432 875915657 824306897 986735470 249153793 727709032 376617959 967893127 877509728 983640511 99602306 390887546 575866297 753175690 23864354 285104769 495901463 622815997 651619457 905337772 333508154 502499326 894070906 908611812 455320460 473586445 812486267 952797989 371722012 452486664 141086296 220570557 868024080 991898281 247404454 959002440 512458461 876151001 668763150 876300085 37617437 488268500 673557433 921137547 212226289 792635529 72541625 537144006 883361552 894241912 785803172 793042780 876935747 926324320 861908093 910748773 597413019 756974794 690497932 910522604 422433506 830075044 878151177 975504866 130953091 873481864 294835243 421271976 777792189 876243091 860155931 955043795 88642160 720306950 612743468 627810219 921905045 939947446 151308217 665774451 577099761 682402197 929069951 997759908 931881283 956212290 952481528 993956637 536491904 861484028 574098849 680372733 292658496 816860025 22660800 485941620 619453091 923822330 333736084 576157658 19707220 358206795 976973914 997856663 67160403 867785881 740956927 787020672 292132182 813506845 876455098 882343104 101359878 393477985 695355334 722694122 777244142 913657298 417699282 443232753 975285790 992060352 857877634 903190423 79371192 362947898 397637885 540555539 948376768 990088241 362440295 859880572 103449522 155662263 869776269 980194320 755359974 763033103 40370305 641435119 617395401 766215667 756408250 995013800 421752283 563116942 268694319 387614247 775933186 884720050 576835376 596123989 636115824 890971281 210513081 667962419 214108006 962563613 207567780 876420574 936333178 998592182 180348587 826525712 177745485 600713336 98265869 537886467 599775724 760154659 566705765 773114327 485996299 929009250 191640387 363517172 995496851 999257714 581030133 636475334 39548342 121896138 826253690 994404061 203896666 647264765 983297617 989882028 321399859 704840803 347037097 559837897 527869878 777157468 333522856 517460153 407373087 753253191 650384592 891598553 439053057 837632591 823478563 999727261 726182781 989269902 262888612 753721579 607353859 944697946 987055375 993184419 54971746 75946009 646267323 908549495 869731651 893922543 932930270 968997683 136517012 982872643 464998357 861627925 464646472 914029929 673346005 935194885 585179043 977574772 381039381 485189562 178939781 733116920 347160852 535599350 479216115 788309196 209972508 635637138 25235478 569085325 680091428 774117722 212475218 880001060 150548932 370330534 943732672 980846123 429140815 772362427 141475968 254786464 872690730 947463094 784306958 825938213 228670321 625454007 829734709 884952424 773729828 980572736 887611900 994876837 956095771 996949769 894532933 901829660 95837351 892523094 327696951 745377895 922350989 931049551 730801602 846014903 908187719 948768674 189136632 736599820 377943413 379122740 67388327 330386443 891724737 966906638 73655396 151786049 514203131 602227916 710343706 939882868 492827389 703893676 975997493 998157003 666318529 668106830 765229878 970385881 725446950 924540275 459649604 944974313 713775938 778357927 34885629 853267956 735091176 964418525 871472304 908572270 404189212 986572464 778922618 809374066 64254551 781516297 905325860 944296711 186235444 945332867 33879563 338091912 593976830 716535893 786035450 866529507 507178310 789592763 177975723 706455600 435560644 836855743 817935778 973433342 334673140 453509028 963168305 994863369 123279334 349050440 210418705 923927898 114634289 242568516 883673213 963002593 119087840 385160998 240683125 918504683 255491774 453384172 689696518 926701576 546892844 571160022 168692258 618988242 900374880 906316165 150810332 565547992 798015548 884018790 911274193 948371352 254287783 669384409 97362001 609486605 327246786 690898373 188712247 359491219 101713591 105829017 758356103 991819411 390943828 679783293 266514531 278882739 545570292 600515633 559808212 753804613 942170767 943817125 355552868 878689161 490571598 688639713 399670395 680487602 630762163 862518379 434892570 809483867 917530647 934441592 573472642 738297101 975129557 993884165 631941501 788298152 639370191 871103404 369545381 740300676 279369145 342212865 100058459 450268575 106871976 835573601 801212111 822541105 79372257 860340576 535924943 735878468 993711844 998004638 136688181 699542557 395203692 773748988 338728175 691353006 35588534 789798869 317442802 459598136 644365634 708803869 217225058 243844288 672864529 816568736 25631297 875897441 507281988 513932554 275018459 464208757 780487132 922040582 777607184 938909888 557395417 681297925 313332361 625112977 479217158 870982311 756957229 922157037 314854917 560280357 449256776 479178444 331951837 952030653 666213926 952373792 311578742 349500587 325530552 395204637 709903118 871199355 742569780 871125063 201134870 327379622 433648569 947024106 581688912 838009653 618223019 621943697 753520678 794423273 925938143 961333269 639159749 890996640 469103996 922419188 120204358 688860243 281258934 831762493 788533744 863336861 868759031 913658095 144238939 581860795 286232241 297364701 185137799 830963539 702561411 882071787 902923050 920330273 603403183 644052862 456949482 584702556 772292114 946172615 287189960 451698176 138017458 176149216 987457713 992439786 259129161 454156386 849433452 956251080 678959795 889122316 250712625 512197195 382936782 702045086 872069054 876473491 777094069 986280557 927296547 993184638 428049765 497832731 354024117 874853997 932562925 937798924 481810130 504483996 475456314 946791221 923726945 947889144 828759476 948833879 470685351 509832978 420628328 619488777 408102428 880190614 222133506 425841275 828927138 951883755 176874051 885246284 342149318 455832931 34356564 811525273 961413825 987042362 898449722 943103259 429581156 991850885 77426977 604151535 57152219 998704636 727418260 950407293 210638666 902820525 283751487 458129142 590710255 838292660 421270110 693683518 475693279 611262299 664009586 960248818 808336203 819130590 412900879 972376359 939555519 970459237 738592252 978899754 451206401 781657991 617711443 914011530 608131975 829360977 616125203 690644943 245487069 668930469 217420719 673982787 378589928 397182861 979983519 983953902 404842076 964294795 628338285 991943817 591408868 748464517 828502800 910503818 282944669 722832577 458308821 486832315 221078650 312901175 749834761 829564160 780776338 946481177 87027663 794501270 985279858 988624685 173793425 195414714 928534133 953886238 887503055 975501504 229355869 730414858 716937127 820467129 901600548 961850240 333156653 446768855 772842259 872152990 705332444 797648715 963903655 964970494 380612404 871218167 324556386 479887344 554561219 769857200 579395679 857605298 81534696 791241495 622615067 856492816 939386028 979997734 281178490 358436638 960255278 983468974 252786564 768314502 759828771 888880900 113008368 595826435 618629736 774275878 642523493 877094015 817368881 876580017 991437828 997700367 633894377 987233509 970852086 975566700 25267829 453923932 917359910 954740747 869764248 967373304 397588953 925400732 88198578 519572498 969850086 986643342 391497480 958210055 26907345 933642591 743507569 945637694 368344297 968427086 825009253 843669763 606006013 918936632 979737504 992204047 317283938 719834496 978034552 985495858 932909714 997147603 205009164 338340488 721331113 956469557 242647926 954578277 75194873 104259047 114980056 983772030 673427999 713730148 519159672 792026113 592394672 778484576 850934640 969383478 708017645 913588728 433922888 619799467 299260898 816472479 486690998 749396611 252424769 406948163 610949382 821045894 841996345 928787358 856860685 871676112 271868193 962728422 450883328 543474708 232210154 603815487 720412620 983554934 164954635 846866387 950120444 999629930 587027150 982985917 15917340 484558925 769511401 896019506 127199295 174931783 600535321 769813562 189175375 337349652 997659226 998599782 151595028 685089631 797314404 918596360 660087616 802055189 187893584 990878956 400835566 771694912 663871302 688773589 312937551 699908062 382162950 855982516 234781498 364929213 699724650 863802324 384342047 913810781 60368506 123668732 449943710 851535940 93010314 886790752 589273277 861252476 948563912 950958182 658411647 973443077 329110266 705847130 778033641 825558660 744168157 941230632 333779963 910184119 515660440 813204292 387881274 927162031 819688738 973140420 422855465 982850843 840832111 943683679 995996475 998925786 4625737 643762013 291083787 927925064 473839086 529583132 87512290 138321302 860188397 937491271 397155562 794782214 341486166 613439551 722818700 747180934 662233693 673623682 398702921 821392216 298695052 914800609 908472166 967236441 669061975 988139090 324107050 437973788 48198868 861294244 226996458 758662769 259572645 848220006 631445934 872066194 148179925 507522793 974741229 997053533 731068219 767512344 491311513 610921925 841485190 953851845 478460974 927891481 514945889 525352431 311936784 597224589 262613942 758421931 15395033 592018922 998170922 999783310 800061142 949288028 692073042 827285537 517549118 737130841 460444591 880393298 235490312 458223418 28603714 930996397 771976489 947534857 209703959 657722894 369721445 650489465 451654293 933751726 636864887 955683784 740325074 787247705 746654565 971655204 735940502 933851779 676440542 768085594 602736938 883978347 483370522 986058558 324321299 938335128 9709023 140254842 282510427 431066846 587344434 641325142 843981763 894422688 951767953 981323657 720791617 796626185 549446214 774504205 330497044 380732719 485754891 573564797 60080225 416821194 734690641 889901541 2994173 964600883 676259221 958636389 144660152 585387415 196711985 277532207 234785982 608429485 229005422 907811832 811753144 870810736 946484093 988834659 351651245 793642929 724647002 803667206 914962180 915068866 375712150 826624381 723007287 896270218 756052272 772345257 911514512 994592615 705994343 947011445 448505555 642150592 643114929 900416406 997309665 999580028 728161508 774732030 536524365 745031782 300897405 910140557 732054420 746368552 831295746 845001453 744400834 904843001 516394773 960485297 986205476 996943954 270587360 911038843 897224495 977336562 585864012 927930008 851355418 962879058 388889905 574671440 585303845 961002434 540052220 548968931 250651929 717992518 773772305 947230230 319754697 863612752 454753355 626989531 647668939 789798102 968232781 973170700 55696675 857771649 21598750 243247543 219121934 314205546 175789344 239355066 679843452 793690955 937079814 989454962 870854134 982742981 193315527 348244681 850432580 873577635 38977490 709125936 45146308 479406315 44507374 138606365 708853415 760105334 497637895 773187085 12660696 745844875 68660884 727789837 32670342 983195051 741781085 900439064 488414292 870037303 951414954 987751497 48434503 462861898 627806884 809948256 807979534 969879914 865466005 945574315 749530395 952873757 39146462 640178671 528182154 875645675 201018003 354581824 138597147 176489080 529704171 649693636 457666403 835232306 307007607 419891644 810958567 845414178 832467460 863864464 508471866 650898938 752998354 977711985 448423628 763848311 177386613 882436058 39380993 113020411 944415064 996676755 350427112 948571089 467277166 808209823 638101817 791722017 822788262 971708675 526504304 689852638 447340717 944007088 119441225 808221737 721013056 943138695 113359371 742752825 674772984 832277165 672551493 711053024 365332538 884561556 316769658 762962166 160046726 543573679 107843755 187698860 794362505 938406827 807418399 867208564 871887951 986218414 541912744 811736146 716646162 916152896 57199935 254242223 103550502 274585805 461527037 930577575 343565085 729601177 160444041 580727442 593807259 700746076 943456719 957753948 662714744 751869459 64613496 476511696 125014813 734877138 417687534 705477399 469026451 841954904 822279616 996624543 698806317 794124585 231630718 573746058 141916772 714596217 651259742 749573350 343239111 697730377 996058516 997602638 85714518 863620960 555101563 802653660 560425513 697427849 211108729 352752678 914835836 951774299 197766461 762812662 626569587 882884991 333531161 723958652 594100585 938832854 905180588 994494682 780496913 930984674 507755752 859316592 574552669 732557817 281263034 368636617 357459712 445295821 440656591 948232790 255463782 292967619 908728351 992997929 270923480 500747670 623065121 929900571 658190515 771512841 28832993 898032110 392973770 816599922 519522147 685978183 252643536 710071381 973969925 981653395 355980154 862360952 168422494 816512036 389933432 878565565 850302127 911384330 723909841 892069694 788304337 865918841 419129341 629026250 275839016 423691575 998975208 999430228 506978312 524374344 109766166 889088424 409492447 920068472 955018785 987475278 85380769 532965717 146672416 827320836 701793103 805902640 504629822 891104336 746707111 995359988 424230414 768189175 76137594 630562920 363411145 482172285 951035444 964321187 622092545 970298207 30008071 846570353 227141171 823480890 508058490 601021408 995148709 998914035 766458522 815305330 748424499 817091680 685809553 827994825 181913720 622151811 463512504 559976067 274181308 575331711 429847602 772991605 243259646 971311963 292319802 946550605 558569018 998670666 375112150 527810330 53988994 989408747 751542942 826878025 374145187 913332869 765564128 964847996 232512872 526437522 640242789 920024038 495317971 564187073 455014311 742851714 77120442 894729267 102102964 445628371 899712747 931118161 392252175 624056718 844740627 943246492 773464721 929628138 604180137 990968818 912912015 939884441 450297850 981006906 435350223 556191164 789679798 904985357 746779154 855048824 183870320 454355208 884615305 944152308 146191678 778927033 507732916 759074143 426679392 986159043 790739572 900475314 750347781 791670781 142387055 978607659 889152888 988064416 293929409 674570532 727558515 956167571 815199419 872034914 878004111 996856463 169657172 984877537 697675716 868251783 241148246 868553545 517416361 848000915 351943597 643377051 521394884 982323987 501793070 563102737 615976603 721269400 475349742 502631851 553883826 817860118 374346543 692360365 180227227 239716636 599303062 885217030 224820926 962913784 875119635 948435510 999101255 999290831 204600184 606044148 729896657 821000747 304669110 911841543 45294539 960660293 978847464 982453943 231072487 778155859 268798449 414071866 353703637 358492816 524556929 751760690 500238403 773013380 94587521 173069897 499785151 569580250 988932319 997057225 707334771 882214928 426608252 741718893 732995825 918946556 61693622 531225199 745085387 863688880 873870483 946427985 616514923 870447873 770837781 970167055 455085316 695393843 630475289 734609615 106198825 369785477 448466934 650710942 737549130 913567245 225962772 802265485 674275729 783396809 396267768 729883423 376789543 441880127 969120151 985833195 136959223 495324484 677831469 771427665 298205940 937204214 661764395 677216966 219475453 898941800 872727299 893823027 500679151 500946883 302699135 575129432 207328665 695282472 689459123 962501055 296037084 458086309 182751496 346257876 648561357 922548303 293878560 571281469 65205616 889914553 458934266 651609527 386409296 728877832 810486767 859237862 604087361 808370193 207867098 401740181 586907312 934903884 470946099 504251325 310877340 933781778 378452427 569189118 16577695 263595393 461556078 586381732 184124130 326068117 315907770 857067480 463743637 943498170 749653686 821030957 485385413 512072734 841398334 858373779 750824614 865539129 977522911 991038559 977131035 989923516 477195943 491341646 102306372 157198026 294957736 626236633 792232332 982202343 69901515 967645555 663720551 919860121 547100575 990655665 648650670 828501561 494852695 829426767 594384105 884596575 184867572 931121275 62914249 268265397 328850416 458109306 567147958 798345975 791471302 951625732 275077087 742518860 912850291 956567153 211167292 681035964 847848294 994485755 764403991 832435911 756121928 991150073 512434521 823004530 665005895 837237119 297332036 337106616 658400337 857780748 479138916 921908420 480710016 888215876 933361598 948273452 409957623 441268782 302444427 416079131 253047541 504701859 905941202 934407425 5903356 767655013 909060120 926691410 267828184 439173083 621467336 794236189 721286445 940949652 646050303 862760828 122520890 915372183 637840529 793006586 932255685 986636697 501045291 939773595 174501890 332470841 280656494 407153629 553676860 667936414 245916873 448592300 727087901 861950340 4728522 432149533 250795266 396513242 627303905 766489646 455346831 488934906 446228499 821032475 491486665 952506945 38818355 612112715 436618967 606636653 179246549 313988113 465942680 685289467 572363587 822015219 839666597 963436050 252424782 949435090 521241780 676249291 91564540 708852780 840862273 897677834 395932340 815335100 286072850 586775998 897937627 961963609 328412809 716574161 471772686 977009900 242025410 584812323 875467668 956781121 176215046 412973908 753421892 929804976 46968464 320183253 826545765 932914747 970272798 970750224 281473719 955402671 437543192 910358537 595201787 954326177 411274401 523195605 150972467 158246964 934239762 985726534 537151435 773346048 679992856 867762520 566510017 832104917 899434975 929271630 593071611 975985503 358127632 591408239 783860598 840241391 541613110 615781810 274972777 342685821 262019124 296788068 445199782 636336603 474704020 960120831 403014086 652912335 858328391 977584070 162956017 753044090 116474096 809755165 193703809 512803193 984390720 986677787 731130692 741919743 430795023 541274195 744005373 802723150 931603982 938412435 220320459 450376097 452222587 558399640 876443628 876743368 477954816 784471210 813399381 823641245 556407791 789809583 294742608 934568577 416031190 656540637 374334183 469088593 318137892 516091016 304383479 458064482 352779468 959952718 229800549 574438574 856669282 899041636 679581434 943497245 53896203 141544588 261145564 303670648 362570374 542592836 26406572 912639771 877499016 896794994 629834608 735068246 398911862 905805772 221835761 237458182 334813656 957035229 256893100 693728046 957064690 979361226 476395591 832602097 269106142 641420638 467393823 740980130 465872058 874896410 435253397 599713463 630687067 837619103 593194940 928276251 209068238 334311518 989487964 999994667 927327309 965165712 551946688 573240177 794548595 813990118 142367781 928128349 90706222 864214895 32848589 868083135 581268809 593632961 490696123 660098493 935416777 996153380 777699791 979069221 908603311 946256991 81531893 158435106 97051865 365340663 820486670 832524605 936866627 982716822 854156282 962413012 683487066 948306075 446811372 890419174 663596432 982179104 944167225 965504679 242450179 880265683 206136079 712147705 408756888 596734865 130973643 557859445 567712849 608624420 530309985 705843859 900300224 947373745 800331336 989016562 338317167 931633127 835734431 979536783 281941091 988512602 348601857 690755619 283816346 519033033 438114346 833423834 806604242 826405074 484997878 487075399 521188624 849523087 692614850 814272775 624997206 794455809 978143555 984436481 456140629 585015434 42862840 420060846 958903408 978557988 223404553 880369201 487627148 909196191 751547518 832398625 278722621 843405007 223800076 996692411 644106172 853404376 708148778 876081975 463504379 464845751 517515971 931779038 404994815 979406863 533556111 798312857 675650479 761945360 459047614 504718535 378552027 912643170 521344852 667695760 690564382 751027719 486070029 875068508 526012734 591436416 586007589 931216862 554797771 671154498 627337444 675761130 608088688 723126960 772367095 890011949 31126495 473781847 50922508 656977928 181854956 252926790 416080187 550754744 205649188 998350358 267615872 579019489 134993706 643407830 347011875 740304650 272520025 399313806 644562866 971512459 52149618 457980765 248444321 320087735 971373574 977529120 558761225 820512570 514149678 737941312 730362769 862087904 310372495 347728341 677120943 913258696 60612170 274630884 10625297 250236996 608739398 840605889 418131601 947464739 464098671 589841709 302938502 840269584 756466336 841779128 485010552 636543942 841037775 911330873 738823513 786366822 56290712 894893307 699529458 946630399 310997831 612002766 565514491 694655284 386351580 469551321 657464042 812844077 667914111 874216636 87570098 628422657 926730643 999010332 995360845 998297255 140211879 686741175 950417369 958154509 632935977 649792201 759239241 791514132 560819934 569617984 551956229 733270850 358855153 957487718 379501424 803097219 508797931 561208057 361904039 850085308 665724142 947770235 145438254 745866166 28756478 968965219 683301946 970470478 541164758 743476162 130854696 471026023 947632504 998173792 253032338 659454814 568398936 757122524 83763629 314738862 714564131 852383872 601765092 835367047 854280373 991484789 976245626 997872724 520310227 781675782 37874361 403751073 742883922 743909163 772903327 889930245 553249523 560522229 823449683 930026592 269837406 648039274 541341324 783032770 364559302 629646814 732917958 856830213 955269627 997834548 628564329 713359226 663851588 818448748 68301028 709917805 582033467 957011562 961715840 987932889 744991013 981649041 273419701 840680431 844012115 915952320 529760738 833735127 612850366 997412068 298038940 426365882 316157480 466087298 688863111 898305358 106992523 890340859 710702743 876354473 497246810 892751889 933581513 996816109 903157536 936724687 736644169 996847444 704580770 885173250 715915307 850843990 745173114 950499996 317035044 756864626 478955162 481845303 338519032 824301380 132674533 793912759 411510605 424465616 905358194 964464204 465766346 865513647 609986074 878219093 69226650 464409041 121325694 211973022 233252680 809373713 936985257 971413232 638290215 840188414 924402450 928965060 223366501 796007400 150276457 344998664 230575162 473489373 599963145 713805816 430492075 613421117 754429725 951057600 605711436 705140868 890838516 954192713 209537489 924202964 943659532 998761727 617709031 875658746 436510037 689998302 369028188 487366525 415508144 556680959 51333244 59165181 71925077 93568266 424838619 492083960 665548568 672568126 14925177 717642342 493689556 965824826 276723245 917697827 986172149 989860542 469089954 759820901 322783536 323576563 134031174 908042226 646908422 936949311 819003620 933355802 731895534 935397665 970002758 982668267 727173775 823609727 134482436 531028568 942746513 988451888 693255461 703955613 636366235 921708245 494776639 586564006 320923657 475922936 975870495 998754575 910594089 981227180 757689198 950917251 151263397 382641574 166931343 796994626 641179071 867828727 130288471 519303838 989469439 991861455 611383530 972502321 784662564 918665972 603943441 714992918 362450422 567658771 100158966 949793126 229557239 475909112 380425480 647284374 671016543 978992832 735413041 762005054 307337792 401180842 729475415 938868757 465410456 833855403 765033109 882443892 908038899 968027647 386327616 575197296 617308151 846192414 229275072 249717726 332685662 423728739 885145871 973276884 191360256 342180025 215638984 593485141 883508492 999929313 869663101 878913916 203896801 789378113 119070559 763807309 752070891 917364701 277186382 914906807 520694791 763919297 858405652 930309090 602619264 897098389 288763767 742302302 760999593 905057862 418639160 970941293 352310241 681430277 240594221 855942276 849126376 855182259 167407615 736186814 21207888 76660278 215646660 723735045 72306215 529498793 12303635 874536968 99686289 809745188 934117588 959458582 65940346 527267713 345783168 400113363 667695349 813087676 337559646 644544377 774432535 939716836 580604093 739920929 357659129 630845707 751686308 839016971 385292932 858220033 47253507 427457636 312114149 793631153 547640748 858396819 690002237 850245048 969009135 989409482 938164830 998139113 216122208 403165851 678441423 771574576 363602254 562175188 560689691 936592882 540224580 712523266 157387581 898601285 30202246 357020776 521574005 943756285 167419564 860156102 305614099 763261323 52503758 290276511 609512607 779957665 310993253 548944753 492831738 664564156 296951524 682457937 56404539 226710956 946762695 976132939 388406327 407418239 736001810 983582766 628641174 681209402 914574087 940207103 722546298 984846590 650910912 886634937 200031374 373520971 28330630 65047218 688199816 982543121 775995133 988460168 13072652 309239681 57140244 867725584 725201476 929093652 511125934 803694021 512912799 653560016 579904244 941756173 174403783 518763249 373173936 461277241 983280100 998831575 778713472 901137176 22117556 420845291 492449770 538375410 761527948 911051298 266628551 383027521 665449612 725099300 540988479 958302011 232927252 647268962 104439762 265378248 273059970 684763060 53425773 235992715 981505676 993426833 168918009 509130158 24696734 534074012 497443076 643331757 432610496 867197621 760549772 999695110 692530833 865945637 185729203 465872471 563234386 881605951 130601440 408577830 50321344 693032378 140104496 612223654 38476254 805752400 165604034 491713250 682486062 773152508 540431973 817671797 136369843 697864337 222769706 545385979 305756600 715689224 957732775 992801005 477723579 836188721 248789227 713049162 765511506 998093155 996757804 999290961 318683561 453700846 536707088 564253439 509246159 908040263 185857683 733147543 898265691 958311019 201606880 928444723 666203358 775638785 787529767 790667584 245634236 784151758 930463739 956430559 870785573 991786436 798284583 899732799 637393906 675239439 137776603 784921553 174689297 925191573 221825814 249484118 811469660 814953794 736530267 993874088 274885897 609812691 727250701 799581629 999542850 999913142 698696267 727536632 316931496 974810424 593853326 803311337 916991126 997137481 55519708 672940862 735381448 947484975 306953484 528043957 928248104 981085883 656638187 913057937 124255829 792719205 561687523 713511565 354000389 991176853 455784664 731717821 584000297 689031004 580800569 871795696 592709881 845655307 943579912 996994114 949839575 972636727 401714116 968187632 53032926 315615689 312190260 513477201 458530908 673127677 764166033 928921950 736618626 996580609 88115263 330724410 460268073 552942914 651929034 683123064 912919879 996195825 981131339 998791511 352501233 412450214 349324092 457703241 394521547 805952326 228031309 525780710 541419210 758729209 635206278 824111832 974157187 976826601 376266158 580739419 575481026 774872177 847160695 935479535 412452981 494197020 806175489 834918666 741117012 780338212 403610498 812798235 859258895 930943111 495026692 504984640 626454568 977692100 746348606 978477210 490358742 945241374 851747674 906535786 371407302 437809739 597694110 665919983 883827405 934539478 282785126 703750190 847116875 938759892 629456325 932611740 396875622 938999239 160798471 345640233 597636453 725769425 876073434 969651631 305487188 723414371 148400129 390185209 336389406 926694608 310907339 634413982 45872719 452855871 498780175 756910163 131412503 818294082 434609538 459235751 790395420 808164008 128946963 932556022 481991101 900961313 480375140 678993121 477694120 762205198 889530370 996311200 88753332 250465242 168508504 546698211 709018408 801224645 807436435 920821204 675591381 916359093 77477997 711371726 466026785 514575644 890248411 954656171 830137793 859959170 539587209 674923673 618386092 635891444 760402290 972997274 579262991 903949964 410975969 450400323 600298872 927444326 269760659 520694118 820176857 879273050 503819814 657941202 286922883 945833783 383308886 890853588 114062010 674385600 632794940 852124374 35223802 710271381 704121166 761088270 117712421 914387248 144731034 806751563 228446351 370881940 152165871 624357586 345588734 387115516 771268152 914377061 391303086 412045509 708719087 734458362 614093973 737972431 187755991 713111701 749153247 880883681 751119121 902327495 429802069 907608182 42473874 346338041 227423427 623345166 410339204 885205508 275054602 515816315 183253039 941849993 445351850 951517652 136348115 807538882 194915270 560725758 132531648 656699232 271846608 400257926 694079839 760346699 825068153 964143465 610539175 730012416 78845806 128831874 279637959 930919068 833860689 917486145 904118223 919583728 167115994 928339050 534059128 568743277 67680883 392496097 890340878 947898438 190005414 822798795 633427771 833172951 610378026 971191626 3201314 271192969 700466220 853016376 557100238 904304058 334077138 934343667 34503258 462664967 935027806 995792314 949626797 981055445 37146396 660242161 878741173 954682908 97861124 159904041 341055345 459067268 41904086 568540553 289923495 890163152 15947432 973424972 172758248 285498855 257337582 959187988 232808243 443345067 915934707 971487224 999687304 999893373 720611972 965120154 256365512 284381786 54142633 207564797 389150454 746051609 276040916 897972039 637275992 683401932 12343405 442735269 60836065 870934271 885466164 961549195 730689116 784521488 176973829 568478712 844726761 866425243 778086225 980749458 210270278 250429038 544399958 821620783 263832333 535138933 960079514 962674309 672027407 713677734 675432219 741354046 439070529 699799670 488037991 747000490 142150889 191853598 734354977 927897499 876358801 910068205 530861362 973590846 868306772 871202003 713326999 728541823 300945467 451128173 420727210 757522652 771583061 906470398 583737921 831496280 146412128 597085463 594456579 828854323 608660139 844493760 796851020 910337580 174504435 294327912 692168874 954233264 656287220 809906045 268010325 625216307 134769591 756391134 226864272 506362705 948354293 966130999 513224928 925528107 406207980 945571390 315581089 592570175 550800539 965993776 288525269 715937849 833280572 959918029 897932585 961167925 773230579 921462721 397550267 952035822 274658086 984255677 998820283 999200669 205515842 434821577 127714935 285854134 184977343 231991069 618611970 688995896 574960320 896548087 336883941 458477971 811370430 899831799 211865252 583656238 317340941 758448155 249783519 814152211 618681273 624990588 617589037 663405189 882515315 990218694 129760640 738823440 591797543 618125895 888820834 989421811 822088488 847798332 957641917 959724451 464622306 723948798 78636219 289199625 816311363 870661124 869803382 929846678 303240918 597712077 321284553 739075892 895268029 899546002 210654956 656708738 415820604 892310329 615926729 829446413 718052696 816637672 765687529 997908547 576425358 867800487 419597945 454625811 269077737 824884729 577673174 974097423 3356354 484929639 317207518 741419697 891110180 995650063 469414680 575428800 594303470 890668949 305508981 588214078 843852356 936663535 966315330 978993429 518979896 749800428 703404572 933703670 636082789 906134184 529945003 734375485 3646243 467082479 137851295 205536261 436558137 508395270 344313099 693043193 284192809 758284177 513751778 741667625 221522957 314146243 733982020 831987361 938133661 952588341 446117157 652681715 682793051 761380776 12376481 704581486 910314337 950830802 550338322 609619234 202144796 783016447 338272763 565800825 865993884 910558481 156179329 338384238 286139989 913452782 981939097 996748160 130772683 587001604 527132753 970585921 650633208 967898146 141195769 817485040 66505074 679131771 613183208 810454486 732673366 881096285 688319402 933037053 171671919 722992042 266993561 417408454 211117107 466348375 782265016 820489844 987939947 995155512 399315276 510198722 310139119 641315028 105914922 468556700 199228083 931857125 623519879 671035275 627029348 985885408 455679909 688779109 116618309 365525375 134324426 830865654 150139484 647506282 199572287 221061950 873567507 955417183 865058126 933180469 135314580 950340587 896057397 922005258 149282658 312189425 651496989 856506241 885819445 957002191 203270925 980438106 674249429 969561030 999391304 999984669 774620384 826432011 954943988 996789447 811259316 870471176 995799705 998935462 288190573 596589956 929313055 953944716 943942597 956385887 765269234 766495528 39625832 945751836 631701053 849777625 810465178 990995742 546848430 759690953 864082869 951138867 4658313 706630465 593409390 820621660 956441602 959450301 383637428 424030271 591727909 811777950 761144273 797287607 248408185 897867513 349576698 471803154 235863521 310373775 632603007 781448665 754974492 923140066 910570177 956160696 96898559 240007205 211273571 507885211 804829069 909365607 871269838 899030610 841717888 843381932 574561880 927439755 568238571 921403284 400201022 927937228 123440324 649279161 313411618 991632800 909133002 993617277 768942873 784086196 370798564 614511190 203879656 423153998 281259814 546653611 473554648 492497731 786550869 868415126 447726748 777218964 523385246 677588030 806200417 950848797 231527239 740988333 278706294 770102918 682839591 766214859 418209145 965203967 11173544 702289783 967429573 992754774 343573674 410422760 496383844 944347559 489983081 906050060 470366975 728851353 6265875 415423809 515486540 833836481 757806759 993891171 806057489 993564224 520571926 524311932 666546410 725381797 446941372 888969455 453003444 562201520 40241737 316636088 837852118 882386850 498246377 885091937 304550686 919741252 317290777 747093020 23408595 255831757 659858819 758007949 583783194 693274591 779785162 952220770 148446913 537549040 350651787 431817565 630581820 798785745 330053756 535319015 285220938 972484206 957726729 988639743 954299808 959576863 585834723 957146196 446486554 870042000 231645386 873328531 46271618 498625362 348386304 775435255 957032127 994854845 545189810 572366870 665762381 964519105 596844857 924470610 860008759 954346724 498415327 508529427 927987744 954751531 316035444 411682153 456913172 745438385 88739612 987692627 622119206 780392532 898267732 991748656 886454839 972910575 662797344 696462701 342358763 540149520 501025154 843667855 269420905 586107024 656440175 958189588 460012408 585794633 27406564 983742805 815709574 871433228 425713562 745190118 696511031 734298167 353039736 829440935 693738862 975475498 337376032 699907165 540950416 916244344 296858553 721332225 419525993 426874021 562868790 786844440 627163370 957297130 405061410 555764883 423141092 656957727 356761922 698710563 865870755 883726124 212005715 468460834 892066721 917429285 247912852 328558354 653911514 908326586 471639046 889156419 696248481 995689203 228268365 667184962 444083863 993793835 804110893 913007961 980087792 986734660 429540384 842099235 787267923 915384337 586456671 681279117 893284470 915048491 886485074 928096706 474847830 584507405 87556025 650146228 165231912 879038111 414345724 777932629 683544684 903084338 257782957 756517118 426109810 869788818 396671415 755547661 520754499 832806400 469529825 543089243 712973466 720165107 223364773 395803303 891896921 944453280 712244748 798036273 368126262 530762085 977708363 996231609 628870352 811792713 969617108 987677974 59568331 789036929 751205330 798457237 878901510 992310349 642404484 991086060 198446968 960120253 435446312 873511364 209278522 832331139 786629026 972338794 883778428 932140292 450640999 456314817 109591864 944693290 115517660 374271439 21871673 548220987 610906248 861532653 901242945 915092098 538438212 969747793 77126647 123331539 823417594 839688787 401715234 947811116 649946120 846403411 597109238 676663789 326462160 857041531 85265801 190885221 555459913 970665157 981263143 994359646 769527637 936482841 703863581 954433228 716641792 754822753 81896866 220137102 544015205 610218947 62978253 278542999 643485950 923073708 139933476 894089334 788562104 951283294 611176608 809007345 792943766 803424936 425578822 685785539 863994975 896852728 165345477 449019854 124012431 712882843 857498131 882628780 536084281 788066639 425475369 815028680 759997120 788640442 365695948 510124711 227551987 651121965 316941346 767571150 233456965 551202698 133214536 987073932 441528656 901310108 913510593 975880381 893420747 976339466 981831478 982153500 259956069 950162465 653232381 829366246 246781523 432231267 854129499 883261595 71609799 970273416 923493494 987151264 877758416 961280568 264224730 443241287 686376577 916491737 338104836 629914666 96669086 758606922 443803636 991234657 498622484 591726766 666896405 958829919 825384440 932182009 847298929 861680477 325974040 994548174 240725619 611146809 409834653 568568923 125925242 636214473 367050466 873645097 925923555 966035527 187043342 726719038 728270402 933707236 440856181 582218278 706476392 832534274 87382292 289331035 650659861 660427170 942506612 975479776 452235772 895348514 626010190 761335052 747508556 752418216 329511584 634086099 309836202 411903712 965804358 972199572 801922810 903676219 824481917 887753725 738124424 827230632 156331783 898109070 353753038 770723617 406118910 898610564 610789216 871595695 637387640 820887266 400898535 645505670 362479350 470605508 197266950 629498100 199385028 280643947 770287456 968780286 891171986 913706880 43475272 647285720 545423227 952749806 584603730 985469018 55928146 79091879 912643976 966209834 48763116 995156699 421438737 723959431 790451032 949067838 461767952 707733766 396186968 502597236 749627588 794762434 746133909 817558660 679510079 757660117 430743200 451799997 326461417 677007981 971698656 986941799 859489753 998801767 29286890 272459958 421900876 634007968 13084267 534870757 492739818 571315304 160261029 977105849 230942871 912339931 575680093 996811753 28315783 876872420 487810835 971541306 204061897 658363109 381099363 650390860 551903043 991809430 155071837 777489860 490440934 655088320 628210840 824416201 427357295 499168765 154497061 575390944 561191228 701327217 829095752 850054652 193058105 694887374 941385928 970500456 708399585 850540760 174207597 524558577 959311579 986615861 414760845 730712978 881082144 899517506 58855198 330568644 371238317 744612559 329304867 741698440 378492056 395786699 793331349 817838765 606332565 761060292 297197848 858959365 405172950 418164341 650279615 902430372 921214109 974660100 15542012 134700673 884997550 933243957 407212599 703136696 1568624 869752655 954312281 999501583 236170656 333596509 783266836 914851990 31843695 84515776 636096969 815171099 758280481 778711206 2095704 623453735 759567135 946044173 227767144 866872571 698501111 873712522 786345122 995642200 843548484 878259498 402756118 751418516 624522848 726050340 484140298 580099256 774299849 959615673 602892186 656533585 121612540 869019869 513732687 676269013 452437048 833788803 73998823 205690572 438491628 787327493 417739195 699465164 142555635 735616426 702355899 910629083 468234079 886123530 694878617 782752880 727959774 859958019 707998785 803485460 595233669 662322531 827268995 851129218 241179280 300675392 688902513 759042236 63442800 442345052 958924007 994848441 793482871 844115817 159156189 365536890 637411590 902759482 253582228 596407619 621725490 859196196 380412313 966108632 658786362 968088871 145538150 930194694 780516141 920244210 514608933 559955753 82569276 402662181 179952591 263248341 782371221 980844229 386746927 798517188 140707096 979811579 684586257 836490598 427906866 663114612 459235499 928244966 871607400 947857042 100569662 428044786 602199198 653536226 102692131 749062024 392803440 599653799 80421169 952890746 497299542 915419710 810918286 885527384 638653865 814579984 215835447 733762209 821476971 923734729 252127048 975092118 281853351 393261938 68580582 228262353 932570971 998790054 307105376 938422029 660615610 688794159 791992047 983565753 492407643 989653493 54867146 643161691 144510516 462585248 883864860 923133414 326848513 672574163 336337317 849823890 528661088 606826061 566536185 926067759 137564727 241249056 215687299 820038270 151220270 570568317 561963114 875251791 45745928 888383789 66483207 96815677 252260651 545661190 450413680 992741283 115025500 553738475 451506993 477269504 6355878 69312052 223984086 355789556 655434804 828726276 629056309 839462009 406693640 755473408 26096176 744367970 822922012 990718767 101227060 696537474 378738014 414519425 692945883 815140528 309074936 591320230 258050378 608475579 616504660 779454017 74811885 105711655 459505030 899268262 820715523 941407747 781113613 828514896 25636162 246692385 787624610 917588836 523766228 548254845 4947988 424967146 415998063 608498870 483632831 820799585 641911543 916910135 707555076 967931463 279502567 925372959 420089142 750934330 840192820 847817471 412460902 422693201 102380347 583798365 400761781 547122029 370247668 436970098 520802960 565597665 498083775 900248676 263625309 718779400 578900595 990521054 325877703 489673365 969352400 969523007 163427824 706453128 641134854 822203951 264989433 793118382 567005360 734175902 855358663 889115187 58389811 386618592 426890970 824913050 874022965 938470889 859161199 862263644 589877831 812326859 702146353 793947399 916450565 977070578 522588711 930047150 303278499 396436871 333149164 368264985 462213522 910069996 523048171 525816429 309374718 984537988 354216345 948192273 849125158 928793794 885434807 986760509 53714998 843654386 657409327 772593208 758407689 885291058 446281352 961376090 863367935 880059517 38647469 687782117 518143983 701203139 276981100 507730294 440810747 704139108 57098278 638484143 944088603 987807276 136255206 304694568 898286075 960704736 368259087 784105540 399693017 496918883 727261065 819659556 644789856 760454828 482459392 900294056 680490201 920355802 274052847 804672749 496783363 525888118 414994722 581362769 451525294 729212932 912359493 947508173 249352246 388312680 318679805 733082604 158179379 930545450 589266569 655776726 104040606 439312999 9070196 361201610 984373525 984857809 601632199 991683795 547679462 697018561 554182239 981761842 865864676 870572512 256674515 291683546 813409821 919123846 537393220 576861450 419392749 708650513 195077748 660518475 454171443 702773703 597092280 648027736 549795341 707106362 616503348 732145958 90565731 819333285 998947344 999234570 914390588 946363401 678421514 838893868 802438110 998411253 297093317 313787250 424134615 626951265 829143419 910766593 66657939 343435419 421319188 805494109 841708214 916409200 363220169 796389790 945514793 949764083 921886860 943481478 657995189 683631656 668063299 761217395 245901174 879718991 839588910 853346263 742221765 904624526 42474906 132841729 741379936 824991765 464254404 468589843 90002703 568137271 849549124 958777684 375718886 729605668 156221759 891519289 877288420 896697325 785914577 819047147 823757807 958077302 604690737 714889462 793280768 886425399 38977296 613037942 797151804 933891578 205230014 557548772 777697681 901598236 657639032 865266764 511425163 710589091 874293830 913783150 126985932 505591426 547842405 828588549 372507473 605537625 179216267 794305004 674253301 732418493 377176757 932320788 630557636 640351072 151001752 574423878 914745766 990887844 818311030 968951942 202576057 830901401 94689725 809366370 808505552 996784564 582301175 583305954 700822765 800065733 613028363 955347288 339938614 455358873 136069242 626207180 688430638 799563308 955860088 958115291 366720304 515649821 511098342 700142247 292754722 476154418 992952339 994549001 78762901 868925250 906869310 926775562 443929914 860308510 223934381 388815578 860526595 915429106 720950451 959184246 470735379 744800604 732816056 916303519 543675868 947417063 543866283 636064409 45748199 446437777 563599542 669211887 906811850 962669049 928464699 978501352 891301565 984280471 397753409 828406188 236997811 466099896 701952385 971540780 606028907 791375414 677492126 838484988 655398086 908620625 500026737 865422920 687157025 726324213 484255310 800388908 107814524 814149206 246139844 704920540 820739364 939885329 284625534 306294647 848060578 975607500 640211555 906459228 40926914 553768600 252070709 520210576 378763815 730944402 48896020 292142779 386231358 599755600 405899618 851025379 648774606 772360479 28340711 908878329 802964521 913821615 771225185 847465309 184764897 841246713 894476488 920582844 151532381 320184810 83567491 726034375 806576798 912794277 478555987 828799042 376235489 814546279 12739781 83768240 551880820 935009728 476025407 766569046 476885591 498407560 257979127 531667857 25393405 245888370 938551304 980808022 972500697 979717916 539709134 975992374 466252998 535529865 882239169 891244672 543743909 979266445 714527240 756137520 49033765 582523260 600968678 865517859 970130530 988529430 981115592 998147619 10125047 838546095 529363808 585771814 327034189 577727353 996709221 999013622 360087240 520055864 389268124 457166979 713445974 873082365 529143116 537275278 582307226 928589859 669663549 942298557 530191017 616619231 416888075 882015901 737805806 741182561 198590473 418504579 439420688 800952116 823706995 938183958 394692145 874027829 77168236 947262260 198350128 326771785 54761293 152315474 167259073 941183354 278536081 324118008 80952716 533587007 784920716 973568432 491899590 839800014 693470877 746229683 489510554 814605387 374245174 642252831 145157473 352753394 964764996 993789028 24361862 974283567 326568371 986179636 193727443 951596963 999310705 999691006 905084558 988477430 509272345 880528769 845888334 862030449 282752796 360036491 703245849 977708088 854621756 934720708 583207834 827160731 608810842 805865703 90917407 494906431 185863424 461525141 87472892 918239742 613345746 675565288 134797829 138066312 426968859 635086057 587134676 697424495 89286068 575607607 580061678 849127366 360999409 450309691 535693050 683901218 188513060 456200017 547919163 896810460 142128072 598093390 609815363 713167622 423356938 908762436 655741283 954553569 987789606 988797420 409307015 917586681 480490042 677283658 291163662 594902894 75193902 206201917 893919113 903297173 353141355 879337309 65638383 766410135 990703487 999623282 812761816 928680892 141019700 731659135 432432232 871731639 507729174 934198843 861694983 935258221 975748398 989991022 768483292 930175093 346677310 618810590 205204577 298982927 66669787 915034067 712063558 916661551 385171355 496083831 353385606 511731086 351506376 807235064 232378528 946102593 354194258 814148370 420670346 745421653 825940559 995313365 349913195 877223355 317304166 784361430 636543898 967482230 309821247 696031604 528502250 895324598 338079637 434918780 114882287 116382247 995079124 999712844 68699688 574050746 730172680 918570005 408536873 516112510 672769058 816174467 264492590 749225683 424484852 641720643 761831789 954865495 171431421 264807161 603165205 886884991 286240149 984365282 410601713 554125167 824987049 899893772 352733334 751264828 819510556 823586918 847483247 922944591 791143598 858230481 103413420 858551355 796743619 961492030 80595711 772076270 340692099 459606259 344778946 511159454 25171076 571495342 511362059 918138428 136748639 875014746 173533083 342796165 481657968 805846676 562546547 808590444 919036960 984641875 714646176 822601720 70634580 618242377 232979922 679862880 935740676 962919515 330638201 984529174 126164602 989767160 848255621 957217188 532880311 583414589 894558879 987227816 691782833 790929054 162890935 476101369 849770310 999099557 59413893 277491305 659454121 673363279 807128260 927888762 408195643 975388960 576862065 921084498 385853323 841252160 1046316 768427294 218337313 949917011 761574011 815916260 982044401 989046555 309721355 704496687 684760869 997085148 554022970 726372016 892563892 987236651 913140136 927789593 845973722 961800804 184700774 860880061 814044989 850445591 341699372 689958063 7880323 500687848 859614454 949481643 109154866 749582103 832485703 982640322 248303798 665779342 818426230 875435712 618070199 631172101 859516461 875707895 189769473 464676246 921217439 982349807 572357393 887578085 211106161 934853939 299992008 519891425 967298840 971995769 300926637 443316549 33658364 682740420 90708100 675143034 851835517 942568526 594451726 873515550 406693870 799494938 378282021 457732190 704395952 757385304 885913298 937656658 637742800 701247471 941014290 992093841 605283797 755532906 525813883 889222891 296467795 627399429 477043182 477150068 446680044 502379342 790122614 873051190 427528721 664659329 238400299 362105514 491299879 877165282 593173255 890274140 913331634 970632557 83217619 522634960 291183914 469418630 821460304 900599708 85041775 294235282 202272503 946844677 630971602 891447390 569754951 594292962 369567298 901600017 279903120 300244687 784717868 923159980 290487617 414962114 840787319 948053423 477257779 741191953 959596646 960467275 794033469 997890270 173468975 798650060 378312037 715474265 733354270 961370223 307907691 567672817 416690540 437332611 903068588 990908127 9051043 476109948 365385291 864158244 411860247 926756535 444715179 794507948 199945513 626168905 838439516 986933409 254679438 354017372 116263929 592175385 839764343 930080611 982513647 997257575 972081497 977529646 314678610 759417139 187413961 527073623 458794097 995021939 761296903 880660018 200909672 382159058 768125341 989511841 167380173 829529126 492917151 750929254 659390765 659703739 686569201 696527342 799610472 946743765 252296224 697045990 915070888 922327856 192447178 673234269 24011190 747928789 872417178 916918973 468113062 867311809 30420822 570219406 332686751 429514955 22446614 212350974 549403795 945074076 861952752 944773127 966475712 999097523 879987312 948582912 570513282 878380730 200633654 315113692 322708801 546715386 863049383 947254562 581540930 592491532 799502450 935233895 741080584 956315558 357473623 479119771 298633672 389609599 456175507 532335975 391456556 755191535 317170467 497117689 11930780 270793531 348812187 532709016 469526813 609630217 768301449 906206145 161123523 612736235 734568498 903034702 91605205 985173358 667586186 939595207 570359213 649259568 340763768 805464859 472958199 542761380 995314394 997122972 115526801 965573954 321303053 956381962 460809953 731761261 217785144 519386152 218041717 556745093 819042578 866461834 810701465 892828650 143567497 977054278 104550423 602989444 729837874 818703070 689603557 838138956 584107082 590975787 49280523 714903240 678492697 976292994 213149178 355409974 272217837 391372706 467631274 832066705 687345567 941919754 40557104 722754574 73061697 210149057 353279584 801689013 958019214 990304696 811420502 979842527 78902309 93869533 608784388 822866306 746883898 763493318 604384049 631558213 336888001 946542860 632377087 846459892 171012082 418847082 593296986 953713622 804233815 915312766 158218950 181208424 929440731 934586261 542685151 848818213 155332209 686457729 839186559 914878715 177143370 711436759 480661971 882848781 16594863 499192921 925932446 926169491 14945495 201975487 692024644 965653443 520726368 780018135 580389079 689365605 493912523 628429827 551350291 736834516 844404146 886835739 170438070 676301031 314495620 980385808 174790776 853801089 329435092 483693476 133739226 366673244 855779643 951222686 810674624 972701370 566884961 724205099 581630153 916636190 78229615 955307400 310123224 486833013 798439249 918302561 571379208 758444305 151465941 438407781 829169914 859853955 27263687 377968082 566878520 861619746 826309658 898133507 721765004 790960790 665848192 914313611 821469690 916413747 457317936 479575741 328010351 573249069 219793133 357448541 423720737 738049231 627806679 702860641 714405211 862694190 324868642 755633085 847486030 988287101 299694790 904746371 854669745 961890672 902319412 918615454 164688590 233059537 729430988 810862060 258469655 362424012 731683707 788420667 540323765 874168207 619523135 641384926 727828211 972221015 440253189 449040086 608981490 635254118 159369672 446613097 317992228 524479258 190617762 734905548 913970789 943425212 827173818 942392988 602875622 683723896 156473286 479689460 651531374 657275987 789194117 918628090 1884082 434588875 71591494 704387225 527636242 890235881 366734404 673282781 886166946 900314174 272785286 530617762 506096879 738033581 676348676 948679912 325193048 831710846 248201383 691501892 590333908 984594824 762639181 882780979 701714825 913903857 409678558 974227708 93742153 591002274 882966841 891553510 560525227 634499051 347672527 350046875 934013707 935435456 523094702 869181890 257485923 632228033 9210294 120575529 178737494 516520073 690522148 798361862 181653015 802310875 782537636 860765854 338992901 556409762 567512330 785906156 997426981 998110204 116614199 553637250 617156400 672810159 544965132 760543776 147361288 592690019 616460118 733189308 697266898 784397388 707008681 801147420 671329853 984304571 236760205 986346456 967071481 995193228 796632932 827376063 2280063 165539369 172878332 726329845 614740384 963686600 87341203 770553174 858664766 936101990 516423610 886811015 104586562 352437897 161303788 579948130 230442210 461736981 528216824 682086951 589161160 612388558 764151141 787462193 790998250 825147721 479866106 814255719 227337219 661216542 555230707 638074176 74200980 151035806 796907010 842680314 841380811 886844286 290482431 826016003 742877309 910872776 100439452 581655684 939594274 983859732 720457561 956415587 352111174 928318797 903130725 908430948 397470717 800740644 368048306 476459197 406027024 612848085 528292204 659598334 354151335 938681933 814750630 856481028 782898035 862818224 274008860 959903654 130187583 160173615 32774526 188823930 155386504 774181195 392977040 473737958 312804848 459062610 801664543 937225842 277843593 487275536 791185348 954166081 263403140 438107299 988196671 995173526 504063563 974700385 482342507 770977123 125496795 966678478 338613290 347944933 798818075 881645432 916993519 959254597 847700508 913195837 665982001 898220091 383114551 807711092 775024187 955418472 53578785 860845956 11277925 735461427 482300198 518974589 554381215 977199033 486365760 491865842 659736152 734800627 767640689 804462727 545589451 733819724 786842581 877416094 650113521 742703205 341598240 573187286 78474060 949539066 56818654 334612283 498275756 711296413 826556555 957112128 95159650 837620309 412281610 582940271 42344540 741775462 17328178 913633506 612640315 669313322 263092717 894354672 78694739 638383349 397448534 968577982 814604984 873847555 844361530 982088031 334965916 829667979 872731997 988849199 736073572 844562283 965467823 979869510 349893936 668167698 106092094 647463101 710578209 957801617 863894367 983598720 734879173 863867204 806775139 863688514 986968714 992454117 371122176 922640186 126050852 403996367 4811495 748417966 153487375 823379537 805121032 969592350 255730164 755230853 708988443 930260391 733978087 741148969 891017296 892324130 936173188 947131858 752710539 914671147 367920404 374804743 281327280 991057498 24631640 484649456 179198919 625760381 505862048 589007640 727762133 733958762 381758422 693690394 276384569 903751881 527902140 830494731 565545542 568479233 331027652 410403831 429135635 768968191 846308406 899940367 996868776 999601702 497327520 761783685 908912099 970979997 453852833 785925881 34034636 882650177 389636468 987543280 788015832 910556105 306517136 727941334 533076737 546297665 582374008 984396190 57426643 138905340 630431839 646066433 974231712 975502917 822848779 925604451 552081117 650078638 387459808 598491490 382506340 603236046 628697623 675277755 672177655 678675297 531340425 958536497 969705002 969926778 946780853 985959959 969838672 972919885 155390316 357768023 810975817 948670101 689831000 804261922 635091678 680900149 915627020 956038015 16431940 144431735 669788314 750157356 354916149 865014090 679621979 752230111 679202266 710993057 570248241 945348117 415275492 775517146 74996642 561644619 790300593 847043810 762117553 960246614 191297642 269481968 612103809 669499505 304089082 353988259 213356331 886063211 633532325 788261696 252076723 766323124 239038245 951375635 263607612 524344441 381164949 586777981 143037073 361240634 407276793 729432185 813274157 972003239 385920053 884558988 378255982 803858629 172879733 334792232 128659173 340871929 793645584 931807637 807826112 840277153 725328355 990601960 884526181 895016737 940103310 965889468 593523711 696796758 410824649 426512590 783151417 878013144 457771754 592802240 757510676 939380357 853915228 945156712 453976907 705842722 242666059 549406594 273690911 548790755 491320885 698508274 420799510 942987549 299477744 806398509 486279682 962754586 405479061 944585942 158988759 624939989 426517973 519993052 808063460 960341337 399215295 907894389 702390904 739467661 817865553 940735740 165984209 190343081 889501449 906465638 180477107 197722251 420248172 963793298 184989570 288333476 691316968 710080611 84370355 119741173 912442234 954608439 141641509 208463979 470375581 647346766 215265484 237430449 123690159 890399668 997558133 997970638 838317395 862917932 98880283 893697686 717980953 967557661 669417769 851280179 581042905 591343882 450068744 941764876 692730666 748886924 667710960 761808073 670256094 690808761 936697884 969250164 528721282 976628624 900521625 976309943 729502470 732529001 891127349 985928384 728931945 775402904 188101641 613026949 698832553 813450468 542791912 574895334 921610043 986142112 724005307 800652483 979079069 987168970 39157741 719569882 313294375 852436238 112560831 689635428 367569192 459050343 527074564 673469152 207091220 324266163 244303987 831782946 375489143 869197178 561407000 576130469 975491334 985796666 267292572 292928081 239462572 763886453 564220154 761917224 764336528 932313585 848590597 853393645 620677153 811703735 301164264 329360159 190341181 664127024 962094217 991577668 21860302 625504636 153797990 707763013 327146282 547966470 34736787 761960745 351000979 437227087 541967565 915993696 110074318 743819187 493866210 997502475 23106445 148290362 459092118 498962493 140364227 614825929 783021834 866437187 524645292 921376665 543945662 878614091 673830135 889755885 748295961 787130208 664889886 896967218 838072746 862109983 368639763 702321980 277834627 682178351 162492803 631034428 360484279 365185687 509938309 555469882 30461386 481099199 278809263 848164057 941516305 995902970 110648221 623015007 107706241 630407732 480778142 536096747 700645107 829268450 35185608 550229955 852477353 895388692 252296838 543050389 671209395 873225721 3200489 990440456 325789986 766862323 451851092 897679746 862558960 869590533 931146583 933821584 355029268 726656635 505394094 593471228 489146377 562407110 380096792 641232397 733841917 969233008 385198069 880207800 247719911 967722426 585294495 933896187 701119117 974474755 614299994 753842299 588810206 713075180 633093714 732411023 837098200 845010319 378157071 703780715 852023471 958013116 543183879 700562096 40256526 78027601 861496305 932858111 877294342 995234129 735955791 913847821 919049822 923942565 602339177 864485641 827114621 958157244 905714744 936589100 202064221 279745211 903915109 951149924 414452949 653330170 825704634 983613348 238756543 999539835 775454126 997460309 841699909 843703101 848406092 981539588 703512452 992622885 76206612 292817425 70759161 557299064 568148895 570697290 279843620 852303804 596523419 726961210 201696723 394778880 988460198 989909200 504763151 944701828 387598422 624292759 146755264 203066515 554461825 782800100 413769686 902845667 745533686 754220529 682116798 844836528 353852794 478195045 84955917 473429187 766739315 831755764 122101051 751937137 246629348 597830923 412606064 975068427 391252661 672781004 841864323 848879421 567265424 658061300 657488799 780137010 709282847 758490411 339945111 549156276 785056917 935582204 544980194 927074970 93937796 244928933 102294547 200090979 36932613 66521288 75656906 351789599 936956028 961831932 156819316 978789556 39357446 95290462 306608233 412267710 249342883 803191422 69432995 474874717 354050505 584384789 705795391 810214422 801405281 963391833 510498832 820456385 855058638 969277688 970314422 995550652 945251680 988903742 691139118 848113078 721424549 971196147 841039850 870403671 448829005 837945067 178751330 954971652 178649182 586017847 277393686 331933314 35763212 65209619 562159366 647466909 992288314 995311461 237954472 808436794 933835151 967097215 913192363 920710981 12909393 197369814 588353537 918913972 226959952 342368977 127346791 897450070 23990040 947515503 128517644 615485556 221571949 504993813 158581112 254157584 640575472 911419273 106583902 109259134 838359120 974891700 777118914 862655699 455094549 465609955 242085838 600028814 655999297 992060490 182860333 529770026 905150004 961368999 891621251 914129767 7926123 888114359 179113019 454512085 6252501 738001710 195414141 266589330 830327026 970676496 817652953 861707590 562716895 848369257 480427848 896624630 161681049 753556572 887316536 993762219 942249231 955612703 165503653 761584077 381709374 681331766 553037549 852179380 366587288 720942896 222057264 517675216 50642362 655030154 915442790 990178338 215797816 437313090 716776153 804376001 480591909 546190248 981034067 990556597 431975168 732529846 285333808 832270112 45893739 330055289 442000050 832840716 50373379 172588224 142059589 277084511 711805532 825644671 457414549 949957398 422610360 603745007 257585424 673800616 178612315 946766675 961087312 966192522 413698059 549946707 933114805 944008678 627591397 995372669 353010211 787632339 544092157 662738228 739189210 956531593 990523960 994162946 808769922 939378729 90475073 352109305 334870035 699469956 996417989 999345440 616670498 705075543 666406857 776700317 128558620 751410454 537335261 927854772 594026309 669593896 759344679 797842142 909870402 969110583 108270737 980757130 699725761 918362277 452625401 477393717 988384755 994543966 606742706 953227186 769111909 838048323 644896129 989147322 742715004 783297905 958086119 970325940 277947802 330825570 317022229 431437515 751313701 998833931 311795542 649854900 374178890 881404054 297518006 965963913 62876840 879067461 40157707 283820729 881866261 961128591 772174364 858369023 110197028 879443782 884634610 975579980 116180690 969269046 368056793 955501138 512263082 592042185 209997580 444111550 90548012 937340011 972503263 980664870 283373781 909252906 760766234 761099664 426002714 518931313 43309067 367014885 850488845 894931434 763632873 880684785 242547541 546262464 592415401 904845198 956650288 969719462 675940329 784114413 28142761 834928520 495396002 841130828 729794475 879274966 513014161 967187586 166277774 302133232 247887457 339093176 433511640 884520853 524640176 593219954 485038462 864517437 745365714 900940699 169625855 195548924 911114248 970488523 823388028 905596868 913808336 970682396 597398871 745159526 988023811 990499383 425150061 507521499 208880709 877960397 732663442 975469981 726701865 951902248 438946100 504303048 632571959 860399309 899669445 990024500 851546764 971032723 389755376 611577803 477676586 889662988 891861294 967182612 393801646 491453701 563619832 851856473 518019187 665019678 393660477 913987396 256620753 984117454 636330853 743304011 92151689 656063903 764217275 798166357 16969378 158255948 999419435 999482027 133877871 541323889 246477576 808291352 467847057 846890592 82949425 202821257 304033566 891711102 49191043 382911795 846623693 941410182 782460828 811657419 215457418 529580923 838468846 911421159 693837428 744644672 740213158 889504933 513624961 888760126 199934594 556621936 81569398 405825348 929815697 955894556 657857155 872421476 919666879 976692471 422430504 536341655 319897778 800107878 544677023 649344083 165291975 771367398 346764800 734220659 587014572 882429330 478246970 804583069 511254520 790528151 768408113 874065410 709327782 834140537 577024946 963241417 810056240 868303678 12328272 388879697 292171898 668454138 879960216 903175544 895830694 995891209 740584292 807850400 815278511 817104657 526399345 940127711 110455947 768364134 765182259 831421534 812298487 994368922 345478403 724837784 324636792 709675078 255359060 599142225 727732245 852889620 99315505 722364225 358220682 411775438 465944662 858018010 685724132 817243082 120241953 785298407 10939788 814736003 877840860 939190332 859177603 962869519 728282766 908308586 491414776 505896720 834223374 925316838 438875914 595568417 495284212 896237240 637539657 934849487 458469876 774781148 448376905 689848932 661363454 727570883 574748326 767935132 282658159 478046442 928817734 989255052 169388356 196067781 920308949 948412327 530782256 954695541 779585403 781317751 700963199 790654060 190660286 442599302 961046814 982973121 617661307 623611350 90360915 726929988 729042990 777224312 619867102 807271256 736559007 742508112 684660965 988228178 456069249 532658529 38860519 985614777 63377527 489714935 628636164 967440070 997596365 998410872 69132962 400185127 211811116 922282459 9508742 461873322 537935294 867666427 729528215 792709729 19822805 176398980 734393804 993730301 112661188 838899722 935235806 943994533 535265594 597892284 402495618 890334264 41860107 416383962 471281466 588650704 213425183 633034584 336040800 446774162 337005646 342817051 341571629 723484207 787354626 852879109 377769490 623130876 791051384 940458466 456577731 544365263 32339988 59167485 848788561 948418476 79369546 814544920 686113599 878122016 702041653 946130360 679017663 803571110 754505528 823521895 259503291 396863482 747176156 881364367 742044612 746865100 740160631 992081544 132181921 893082213 119297700 622834674 303208866 947013102 801573032 911747671 709569216 933187830 565029305 867529733 450880029 564890753 520439874 634014673 697015910 924115889 288676050 781377786 584340663 985796040 498029174 865707897 454083606 923472466 137645747 336601428 471477654 660554260 530065345 639642848 898197911 930605220 183107243 889158310 799291403 939716074 261730330 595906295 583439295 898973221 372071619 908980825 304133406 409492076 187052555 542365307 757556388 853920327 117493690 702383785 895672045 938485015 226205696 944384950 185466250 604929648 757418233 859224939 211392111 347114029 330348451 952699728 170941050 979360477 93763138 814087872 278859505 283884817 881363882 961183391 577098109 758706078 532913755 668517151 820002809 821372202 66037722 204947768 818456291 934517551 896267537 991826839 926520925 978246662 252852704 923485169 487589793 635727042 251143257 851973191 47117311 389191884 419639405 483402080 276936100 653397931 46936026 271148744 307060436 440955222 492579056 531887441 810942620 914665417 86932295 610946344 339511609 685190656 120307364 323426645 282723733 644184799 242063726 783729565 644954359 839663711 835338257 937730455 992442031 995359809 24919826 177391411 211184430 510433252 544427223 829423151 24919464 129942135 743624323 809814859 337967302 606002171 11976697 802993347 212553488 215968785 603639744 897844196 28583881 515086446 778857904 889209565 866912521 929414849 365924772 456318954 277179300 749066375 301210439 908684732 886193978 986514716 109424089 868953296 601361789 898195862 957241893 986794772 373400775 519526667 103813792 986660739 103814475 709428537 763990533 868279210 251712694 273369119 414278991 811844502 438939816 819380265 416752650 797186583 632271933 983771117 987976951 995226210 395473900 692288945 316787690 771889027 668966442 991155156 581796656 658572991 566108612 778566886 203229489 956078144 597948709 604938661 181613217 344173231 296802360 396244795 52724930 454917245 449715643 697992050 891040684 939698811 870555839 934040785 103045818 814641588 346671334 810835779 92933670 243895162 504345832 595780455 67122036 765178568 364713281 954087640 528852493 620946759 954675797 984094417 655078438 937269530 637174127 812031897 542201735 950789583 34190206 995337725 829469005 928690684 222780653 808887823 512256384 981865982 897291561 997048257 698238586 783479384 228975896 892848968 453194822 933908106 918907231 995268043 975892374 990890024 348303296 671370142 143593474 145303182 541264420 637387681 130169794 716580824 471290588 808172888 360773147 579271797 247443581 380824910 95584378 717751267 687159601 837305806 991695495 995835918 247245926 252228773 224097674 341597937 567166952 789439032 60182223 297045240 315344767 423585290 811112295 996467020 333276672 989140620 273245115 287552257 833998527 930727554 511350813 727398382 398885438 684883901 177056538 619922203 248043477 996845505 708771856 727198260 195422862 684767571 724178736 876741188 825083987 889689823 660040284 971116011 17861221 423717690 369519132 777875765 368412712 759899754 772006454 775364627 158051551 478347454 338254851 379651969 291559047 624742594 449591939 724927067 871616196 874435505 948083552 962506510 611505296 655648425 715886002 776947318 368038822 733992488 52718605 102299445 494998223 927523013 953318431 986466899 627611532 946665889 839774698 915400475 637403250 676924443 726658366 754797081 94160350 240617678 487486445 614459963 880918187 925332183 721827071 835220638 179046006 228098870 614748764 754420347 869465892 943378860 894587576 940396716 35908681 903215781 188504835 497928892 521733768 742277417 302125528 732259519 522748062 972854509 671327017 806060478 787024838 872528006 264229035 267473474 837170841 879162394 303992085 801108866 881906409 916212291 877600221 932116851 221705189 599547984 610011935 848210079 250075138 457714806 673859849 976102516 584791928 859648166 497191127 631099075 111969193 750458148 133333460 923666595 129313105 434939604 672217534 895843861 469256196 802964841 175670877 959635935 650631238 935857137 30387885 175847325 553557092 863721425 955885992 975351660 920508970 986565582 1683267 762284445 355188547 822111591 350584980 494173160 232633060 624027930 318525301 977564127 673883871 962760519 792854323 933193154 7549025 766200379 526750657 959952366 470755724 548196901 484399412 541087229 827316657 990427909 5053137 794168825 482971791 687787657 470478554 777965311 995841316 998221270 277466088 780084121 978239555 984722233 719953024 842557087 766739274 836673858 874582478 953042661 152248706 190083368 882376942 919250611 26670535 723748827 711061662 858077241 345852525 536428492 317794068 731384164 946317702 971404794 822805089 975098292 285255123 991206483 988646777 996482571 721879069 907911061 342151129 756372406 929475374 932186280 34026074 466886204 410354945 526595860 514303511 804584565 493430382 765756233 236396694 588924768 721783857 764984186 480691237 811952268 785499421 996505141 235195349 563568852 395588471 410420659 60465463 768841507 535059256 770029584 51622783 711362914 873817780 966319713 545467254 993043149 85993865 899246960 252013528 674319063 118870055 158449959 377201752 420620661 777406680 919807960 668383056 868400795 118498204 925883700 600888400 904722470 632283466 819520823 466820000 682593298 637034430 716141482 698918451 821810442 592661721 774737921 487387711 521132316 49731018 53474284 219578590 794830056 393081074 726343712 816929691 995905190 836298736 978559768 358907761 778919888 228430470 326694160 333444195 802176403 227712246 454422544 788631798 972625600 74093737 821478100 383269287 519467362 392189624 534772295 863356507 958541714 442522750 931103113 431674548 619138780 250739885 250968908 212887876 218169780 588833518 846137004 296822962 624275674 536435027 649702334 973840849 993529681 124221501 803862638 14113486 296413794 79642635 177867164 958783661 973567169 501988570 825653184 628702409 788074749 77041196 439892773 373856716 849859412 159370099 600790447 981947871 997295946 931049114 960441920 470701055 537456905 308404223 630733052 619878681 917919343 768373685 912447198 937496802 996948896 975958260 979529154 210776669 477088066 534902949 722546002 19092721 863026109 544513504 991072618 320766372 605904730 663667429 832722011 241562119 972965521 882056459 970504744 259722104 952807679 384898406 975320932 134307436 606602448 319994431 466417677 685554609 972037627 748100274 862944798 746168048 975104569 250440825 370350989 920192545 991675953 600961989 788612019 370806927 623082086 15639317 178636595 165751000 715369527 265916626 273320836 297055211 804299794 162291402 198002424 787595258 838965221 290670130 868480605 763481955 881112831 33898322 146806493 145124829 700805762 987390325 995058009 220548144 665815256 113044255 300542357 377282783 858443453 682024213 785174752 241011798 262109238 83367593 426797563 126253777 939856039 624653224 843463414 62722128 839466951 807865284 821033339 685357845 942646704 412151987 679946798 899208557 995246366 213373186 623792481 915290911 923827339 595978923 862487130 175376238 487393495 425810774 966035330 82287339 336073586 381498175 751534143 398784064 769892043 547878975 720297119 803037407 829227000 107182329 612597096 454068290 882082412 398969225 611392207 219274587 484404682 507961533 708357920 759914420 976903567 298385616 908342703 100483408 314022735 207324730 321605623 38298152 860518579 664648828 826451140 347058028 854720612 467007330 488411334 221212947 731270696 90712926 756630663 957682316 981168424 636130783 740187697 359754219 645113771 738721588 877321905 685610232 789972124 919447474 989185804 368627308 898034306 994208696 998225113 726865936 802602572 204991451 684607054 302452603 886905856 496160182 735478368 629546507 750828142 327234430 848200836 682209743 735161732 816424872 898676747 754870660 794276597 273783331 486471591 320472146 880395833 588085845 712953751 303618933 464187971 965938343 993012785 116443528 951355799 447271161 615271380 518189356 935488034 574223252 609197224 309505333 972124367 347088719 414318912 753281268 802669260 97478404 343595562 35900511 616654650 325633600 954999610 750411750 842070088 327100799 605962395 568485546 952300946 881600482 983346753 746761166 788613185 598694545 966750209 849918706 955747621 478965454 490230233 238294971 323366073 18634673 844954449 738886425 944999199 498179926 599533760 828678474 856487165 917139841 974336925 481979042 542444532 355065315 660729321 453520019 974501897 244979168 719039628 207403411 693396821 537822214 602271140 376774843 794631638 885743599 992578646 128156371 158053127 716842169 813895421 987042571 995420844 24916613 339280709 420770980 651787665 78355358 306461664 851755014 951975416 706382468 954382275 193078687 701316437 589109039 658805952 218930712 769484139 835054560 949780095 33166518 575023690 343657151 517142157 402747853 837618059 769379126 909091583 830543037 997390872 467258156 548318153 760251832 881156680 11388165 876914210 192091521 436021281 575930308 809637687 767742374 927320529 783030179 920370329 171321417 206604786 756650668 910719835 144001042 283081142 782294747 915690263 173942186 724648251 697119577 767553051 663249562 781916246 691841820 997367728 926105680 947723513 207338603 516018726 503484625 820216972 408055479 756460388 120131747 415727306 211801742 855370197 686053830 754655913 832381602 993054906 470058456 819828275 327532230 903118795 349474830 690566666 211520680 445075187 878620456 976717556 458515459 915862863 108508993 983501592 17819201 703885956 930239378 968508366 784307799 837521303 126889768 402254760 657049432 670489895 297810816 545009650 234227083 786495379 920002186 939373776 26650184 698284701 10758647 140437605 559243722 587457532 251334275 658376236 410254396 555766240 561111731 680856139 126804151 997700181 652316321 852539382 766492527 861908417 534635045 803845928 358295450 449242176 866045099 954237127 58916344 101608942 4570489 769192705 302604163 656545277 675281161 804221359 135048727 254335330 269667156 911973483 883601072 986307217 795779106 844098779 912593698 916858830 386507580 578055321 97712716 165094861 605798443 876311154 389684194 405077490 456220445 808233361 180678946 310654437 741768314 885793314 394417446 504300750 391403271 960645368 176967936 292617109 92211383 989011838 727944101 828537891 502406075 704116554 472892385 936267172 644962451 997331456 310726274 457978906 806979087 877716581 410867044 621937763 103816751 726761880 905367849 941073777 617496955 685586887 579144603 736182688 193918869 294139939 727575050 877801806 673271231 751020571 712352553 919006757 732741978 847049972 813951213 982491944 975043675 991094264 385627258 532851206 220674268 961167063 301573050 669507187 934648158 996062028 42519978 55674910 321956156 618053773 855909666 895254626 958897764 994291633 294313583 884304399 213177060 798024832 315633325 422178653 997349305 999028409 81355760 536298096 243495941 551378188 73014396 574610706 992912873 998542058 648487756 775097930 370035089 971374262 823313599 833326016 825450105 885578173 965937632 971222097 304303334 761713469 756803675 808517647 422187252 996744942 731183429 808447183 351945188 898979081 372753045 994613461 344811368 736334229 796677779 917326270 106377574 863044129 97831372 744977717 466538208 674518594 876346429 943528331 873636306 939269975 709951688 741197074 630424512 685989899 373713614 618384855 333289714 444982813 731870544 838396251 140849279 913271530 104893448 389275585 96975798 673889744 829815306 937084620 722766540 808985206 256151428 733446800 922656814 993958784 808046150 862371090 357217685 855150543 597557774 875670232 523423666 532025176 37945214 357076514 998913592 999803673 289096965 605468521 759353844 937396464 742041401 930898789 437031595 541209138 731968034 778024527 970104554 985292275 29415572 977309082 281517382 652258868 78358704 363736376 58578650 316061234 356842648 536793751 808448143 889388250 191741317 309527495 668618046 845026014 259693935 270312584 657246292 858722953 853670138 932726827 883694993 970974955 42824304 377906762 943516214 963191707 403299469 437224889 85641787 451845527 873690741 993221106 577950931 611520142 851035761 970054404 203615752 588215143 60242927 976233887 406024720 994338495 15021463 757261883 475063207 871031674 637397450 692934760 28728829 651890283 292992996 578307582 943642229 972313758 64687741 886379173 823137222 994074653 606300035 832951472 800221584 945444019 565572928 944339669 925779858 983478094 750856292 767854430 299892754 470089856 796841019 875315057 168514709 636329886 479478394 955907203 794462074 877796910 836738115 927532042 908746864 971834636 903523368 923205782 589239842 769075320 682316764 860232008 962989982 985588992 404474911 938800614 488997379 796639624 909834414 992073771 50979618 717871713 736506130 895743418 35550375 888217416 280787782 994968785 237516086 980379922 873460048 886032684 156882075 229888128 968359669 977539975 524876319 868587157 708153256 893701428 892451174 980683803 703708351 967112673 466282854 824597500 542872828 946010696 842602558 850118456 715407988 951728645 478217113 996574258 31312412 518762924 983186490 986894929 495578582 720331170 952852504 963741480 758675284 843118668 940577013 990965244 673364634 738429288 57882995 423854895 139286782 189464940 459866526 594753160 608986557 753499949 850861683 995186522 527316256 805683965 889381516 979102063 594578888 736806610 441440999 995605668 843702915 880549701 176635995 661122506 941197716 983685993 311976079 315884467 568021565 947129617 904109505 952916490 705332800 908011390 744704844 973489046 213723555 577873077 972246989 977219163 450399237 803586438 119509662 191026200 366000329 783000375 179510548 785709333 144827984 601133545 149202868 259574077 230169267 959869751 654029662 778527854 671663597 767980116 191763944 919826054 199564324 524199445 99527739 261086059 410415400 465033058 774765927 856629910 770823111 885326241 935773881 988538048 438081952 791358694 305949531 851787274 395033327 461899208 674362516 676402293 677153593 795992951 11266309 315722728 420986437 690704831 222035994 640794013 72178367 666736050 823639665 920779366 62271884 405125045 299917833 896229556 469088302 556256051 345653837 440770738 992465479 992885016 278998610 628363743 231467629 324307589 52975072 436363112 576648269 668462050 800888086 812292881 280403639 694838262 312084365 835870419 156726974 773881662 698450806 717619963 841343775 988575396 945374056 952661174 420453311 876283306 926010646 950131984 79247596 183713601 581985593 938972162 697471940 730016774 441993026 942036193 363479231 603110390 866908650 938629277 571127798 738070321 543635941 789708039 31347202 696949177 846107847 867529241 934297967 964925892 733622595 817258544 688082502 719594562 174250469 505274122 172129524 280652272 518942925 967284894 661414624 827500508 293109028 694817603 487023951 741071176 502953081 779499138 312976106 968157600 749834453 809462730 506128015 657364529 305705594 940207070 703737124 770478749 928212953 960970291 451327043 469166275 208457565 305215383 20096707 485576753 49192765 757823773 372764635 474208001 129783556 640600046 859155971 863284545 634959011 871155024 210444770 702804669 154219479 458421415 380712670 720854888 493009535 988579995 472065742 662775179 230689140 975377179 749016324 784360534 916190512 938514812 647514655 752615231 825926836 949015595 573753340 623159109 964454662 971636270 64064280 945180448 261092113 615256942 695935736 844534171 594658171 812747809 162188144 902145041 582611080 649589983 458641191 695575695 881552791 948733339 286059662 677073596 920924836 935090823 355861961 792234687 941251224 943816110 820098761 857612501 256631208 393235452 969932904 976730893 449406098 623337219 620270246 964460916 74581704 313532621 164375605 815128537 342499903 977642228 5120896 677811719 428241676 697762629 699027024 826218387 536239360 971776185 811013816 897037994 853378022 950750409 970472779 982739330 198126951 554443212 367273239 578110902 186602254 598781682 339234467 870589391 154821215 494172039 573043037 888948244 38980531 76643355 382105952 582220466 414722086 450325929 708855608 777088901 730921284 799404826 266671372 740379342 14844384 559564429 182003264 607862340 620151133 717664133 728227094 976462411 650216201 761111141 167467247 722621801 537177757 882032583 828627167 990273102 548680358 556237854 119230619 613221818 369788150 616509918 178816872 970882856 857206123 937136542 560826078 638227513 70480443 373123692 237933380 479507176 878600374 881811005 817503520 937855011 68254987 307030748 652614758 760545549 811537752 816225034 423293434 778512803 290540680 935336211 168947462 453880550 563917620 790558831 201709160 827747789 595691134 601684724 719489574 900841391 195315211 825630444 200369073 449418670 250124295 427231859 556020697 782256879 407825225 541989499 239375316 413478073 154758970 904121699 372922903 933041648 438035181 783629814 967064249 996578814 473787795 784863716 430400975 670696531 517721130 619993115 738605043 774456399 590845421 951860722 110950567 333692777 169615655 991758384 420034910 937232044 269114531 626770799 631240628 922295983 968190059 981591996 638902115 916512856 889400136 979227055 238303824 624569869 973056286 997545942 690630381 978630642 516116476 715457472 348723626 728159840 307437082 679918756 226339121 277782623 164663646 341997320 256357468 897674146 467499121 498426985 282604270 811810193 997817908 998521818 850387222 918476011 573126804 844954775 773964135 887896118 591445001 694887425 35094485 335050139 274896564 699061032 946619773 972790864 178654238 887385693 293670336 533356327 386526555 678752531 831922469 910220838 388871114 553054952 626341025 894068898 304114211 327405420 750487707 899738860 315338594 513624271 823053164 879065100 580183070 849968224 315813387 508815191 638956441 958999829 547302902 613934639 680005748 960229691 179110281 851582811 574755394 777307385 68681377 689311320 608811631 822468780 107381383 273524093 626320815 924661914 802689202 863721495 956805544 986014924 479623962 813842572 695006548 757160982 16638735 700754252 888386767 956994607 214050952 857339126 118453758 920344830 918918885 963621947 209452373 956949445 277553929 766355596 146686851 192569938 395183504 599302498 45986299 742358239 312637249 852526924 28592978 424247458 250694819 678098005 169991870 879702284 144660444 365274069 220813633 382740603 876890685 953939489 433794943 688436501 368742709 828735002 430347062 586633731 803443755 827773026 597066991 650695395 675336321 837497327 766277069 975740135 981051300 984927805 97325441 602836896 350205104 645716001 576558780 819006005 871970492 961574098 426951095 857182047 719982324 764491694 946415032 998448228 82358605 647130706 747674259 916577440 169940048 897110218 768414271 769707957 224443421 949991553 507454204 765626721 257513257 325550659 348953107 941023325 974829576 984874249 599290418 689030696 828090655 894831970 129982789 346758074 636273984 971393518 580446942 830006478 821814127 883924910 375205341 702556123 597717388 697194412 766109050 779985557 102132956 767509619 725513368 847663891 307981528 392607334 906611885 951405145 367719965 440694960 809703981 975809575 656441124 772600687 444480005 868658295 859913862 945130626 861089860 986637688 303311508 351493166 993865925 997979390 466442755 502252006 365269893 379274315 527208325 926123506 528453937 880313241 279236698 637064842 798327002 980682310 921474354 994391445 119926289 970847025 43577198 609829982 528547687 633007914 397606441 493142186 280543153 603699790 55997694 503207094 175455962 612015244 995559407 999912950 553994319 677334191 459709198 773624613 833565314 936878366 825983560 916494104 415580324 574537462 277703807 302625013 81138956 123465494 616868720 656215526 55077133 286787806 683739291 754263484 430828809 633959797 973490005 985193844 775702594 880065619 865019737 953729779 31974296 700443755 473492101 818741562 89726069 325375703 234918103 722311664 35079288 689034859 864497838 940790669 19079934 26890634 392387567 749072133 609117161 764163470 894115143 940531643 520691883 728742406 695292013 776899979 879397211 930576405 394606437 956195795 538842398 658266863 487787839 652761491 561770245 735722083 173901111 581862896 100171165 506022648 951679666 974509803 705221746 922855541 718607982 823376567 340474830 726963413 369345019 535750747 893111420 923930346 67645500 211506446 112998005 735684250 500411081 711753723 367717181 889126139 90861270 237344780 132906559 966222181 312152167 946990937 213002527 247093307 628471218 735157518 38695503 676713150 380194853 607728995 383704480 987883448 646948762 773823296 987761963 988416373 874246200 899055752 139173083 600056132 594259421 896851727 348766661 817340648 601314664 643429199 229263411 912994656 398422608 731697234 783146523 877185444 86623382 426200913 553050060 753112599 276806998 659490923 160536300 423237817 516987972 979074138 395848557 768564880 393772073 742937860 170942732 501343574 344162200 612927550 179251102 227729137 749261236 888751650 990221370 993167997 59102220 932427850 715918385 882302205 313612951 501519010 393075694 568560716 558509625 618374635 88208210 707823111 427921878 743081541 229377643 867443850 998356146 998936224 427481366 594628855 942259565 982756042 756763483 823483333 307374187 487014706 724368631 725172159 796685149 849851271 44177331 447978177 923985167 925229425 244850294 635408916 655695948 842896446 136551891 673101411 287531189 781083209 466982685 865081832 64417802 83091144 818747852 986260841 976083012 995259314 910979798 942736218 577214375 982106328 378830250 768176348 690544595 876068494 82138609 376276599 383200316 578808013 162226697 443861847 613838905 817708097 330402478 567969261 887369582 976079521 746572999 930163001 614023761 880411120 258450135 765357751 776059760 870406510 397583879 552027845 307194161 519266617 165051270 302097328 194515520 835357654 305186915 425380469 36714801 403074008 366459878 439397544 506087304 804302777 268582586 903600582 59904396 523569454 365709307 934472355 271864639 792274548 757805653 860871829 831507911 907592255 913076508 931742757 568167000 868658935 853253460 941289008 611412261 746298607 648105677 835094771 459911879 536638024 69171489 774527470 389596074 924704458 510950290 799523724 403889726 434936078 127665903 896024633 422302855 748610013 627571463 824314955 482223579 708177441 458913785 549824243 563654970 875372178 943371441 958132093 657064045 666082355 177798488 864074446 500673056 627910660 471094159 771040159 499631867 552859703 484503814 966875483 475906334 761886208 210239720 679914996 674375146 998018804 518499844 772620688 531851874 781322017 641001841 953178776 964151427 970642746 815809766 987854761 779671806 838422171 486752424 874023345 1380143 832804290 95096247 300641166 363918515 711862577 920742561 946095210 382875120 472055321 749001486 894869030 930636111 989286768 695895625 988322129 458861014 555583126 702428397 852087809 115960146 770912481 686752692 756668527 529695243 549731924 688224946 937543936 258671617 739965071 282127891 741087898 399035358 481403271 334348144 982987385 225976652 997765574 162208606 296619602 345358557 944839506 47638702 738801134 615231594 944651519 555704899 992813038 288630365 949209951 942648933 962809149 817536171 959821763 272080109 818834599 878604319 977998548 760999496 871690341 385578600 487107725 469891717 616577124 812094925 883062831 816357092 848075804 202266802 463665495 354452597 710487961 326377390 540743430 121480264 361470356 893695938 909185802 166983377 312941127 707124769 865925209 810741301 963937080 579632826 624536748 836697909 956892431 705636397 846262981 647925009 795089016 58400286 233750447 769113512 852616006 12611520 199781284 597619235 998013212 405382580 528326127 161597787 175730886 669565939 942516861 624680986 938064752 9702069 803933440 120303024 837580002 827539383 964030606 788537678 895901126 48635275 725410790 534446735 974052967 711985791 835639297 178402852 395502681 86361833 863968097 7219396 972174025 420930595 665255898 39743355 159423638 857810427 962914625 466146668 652290860 906969535 942217759 187759310 979732721 791813867 822458629 282334291 736323478 355185083 601593367 405576863 832674064 176960183 627534631 992958603 997761646 736657773 815531612 449856362 512377991 791726984 844486685 216082350 731905886 461688332 621320798 947490840 963421135 960870453 970379905 757426393 830356933 199950180 508197014 30410779 644871320 268378192 728071930 955309740 990429288 324369573 986173572 879135029 928176633 610314153 802318839 951276525 983642617 701698284 990378901 451278777 845520222 886039111 892711834 668025272 762028944 51678433 721336728 745065691 818765859 816519442 958340346 647946297 677314103 601817740 802466470 649137878 765565810 815887068 914721121 73120727 421640110 403290957 827271337 795387332 859318791 155207650 926013356 511928673 820785923 917174170 997557374 97746872 143999104 209449735 532235474 461984499 733475969 488467015 803155203 16655260 700306070 642303699 853165618 312628404 375082137 550722427 922574885 725331892 980545956 784945049 998360052 594446477 791314385 242251204 849986521 823871713 838290161 847322484 946283647 626117416 755804058 929120790 984603582 554322446 991564243 2103368 289718623 817139643 920156367 816704581 943341229 248547169 745221140 774667368 868652477 568082464 640006227 672115767 884741782 457611508 884130057 757167843 890752129 267118308 671426270 518358420 638031961 892518136 974572293 3171645 621392567 41791309 956718256 676268021 719497065 435087068 924879383 224458781 730317274 642727187 901749652 243648074 352590623 108352684 498858597 930011881 963238368 703049312 929058031 325448916 459272318 713266091 788516568 715862217 788938345 762923460 819653553 714271755 954988717 325424577 778344512 610388122 768601885 877538462 940882158 95518064 434873121 602289221 944440406 530231243 930543625 953552225 978074281 700642574 812952133 738300878 964472520 424824 852315035 504446049 855292477 432351468 967070978 410964976 989740974 665333652 956720513 276759569 546464869 411202573 854099567 479098385 806526899 312785846 804130491 897210888 933525950 804893975 902228675 733495531 757924995 549516315 878877154 278302745 987972424 491985719 631773075 542115846 853109177 831001806 872086654 546729425 853928207 850111787 858979077 609384117 879904053 325941852 332117155 238845799 747008018 615466421 959552450 853800614 859772498 375081080 899143186 663479129 995002561 449594379 680695718 905910344 993146749 404737551 814805881 265313731 588126173 255990431 901560956 177434160 557383623 283531447 999887781 227181088 982771471 293615674 368860935 564388163 792016786 242699695 689642057 84352329 318264368 598873930 770782729 96621493 394281592 613482455 901515403 783470499 816011076 693302956 903859944 873635355 902754563 371478359 435405656 888857293 912605063 926298636 937488823 846705918 889006215 585451452 770607420 539490601 650899029 995788269 999075799 407121049 784751949 762403141 949397198 619112431 993170181 981940267 992053415 680479715 818155100 727640722 925675778 620511156 670968330 854324121 998040355 943588804 984307502 420433086 936952561 505017328 830291402 832343105 901800712 472495441 958134928 117267461 809517324 779578282 854167958 310005476 641616335 667408298 831888604 477642201 940200821 662248543 804105247 898365854 944343736 336305795 568196760 379922559 686466422 249590728 975533687 208740606 679555879 162813711 597839477 526821600 652823002 366216789 930421342 997185321 998239673 470701168 863240214 819636328 836052612 295863438 941765848 960869172 989056704 311679190 856561316 81810793 120838306 965000783 967802557 458626409 537178298 429821198 462886020 762278385 875868928 115004054 958554747 401519953 911753652 675929889 697223821 589469743 931569309 991989883 999643116 408768861 657142216 274989060 813760583 906212809 996308784 79475407 82966417 392831622 983977907 419291900 920936987 880173187 983988373 591567686 889900865 478887058 610368087 936166152 951826941 482270411 600607235 34124317 920738903 816800029 868591396 650311981 794059452 6187770 86989023 276584057 385304296 931733839 982213695 407547210 914672321 196046663 628370211 420941826 577183606 320952661 536612412 543904901 703692162 528748472 995417341 8922537 249791195 243136524 546088900 117088227 126008514 574958325 916066840 203256493 763162024 585288159 908084855 85181856 233381763 955832034 980995278 171110045 446831962 753351395 800365722 495819771 655576669 231085521 631812935 883882766 885549910 469453130 911901972 797322056 859614333 958120031 958291518 656583143 801065174 327482522 440033541 364982331 540091380 385579130 838342226 881507823 902637105 553981603 793142441 313953628 517956010 342912183 807734132 467400921 524301518 916959347 919480951 979560576 997459542 427260725 720375892 308123008 519274757 389604266 792262826 688564578 760852866 510725668 728373592 4905172 515077356 443319941 867582488 463155844 637422265 984859250 993975480 535778799 597212535 985317355 988889971 349635671 922550175 269481344 682578142 146830201 920205956 176121916 314914566 258729076 644885995 376536852 580616351 121694808 464414883 845373536 922415457 940250709 954609209 866006094 929925721 680333754 884650846 485979086 788764078 633808327 976707030 456521267 613443674 412033418 819364290 229325818 499730077 649379029 820745134 344919210 596155549 874805982 948988285 938345481 969290888 520243511 812365477 198707776 382808523 286344704 924430417 526668074 774599905 101605444 539899273 254964462 721221847 801641864 988567858 389318473 525679954 77858322 695050971 947339680 948108994 728373366 876251693 68324993 586159086 538553545 897035633 509131311 804155644 241375846 468807712 428538525 691387281 443415663 736062123 80377388 676261805 597370203 919143659 654769195 979084572 699572018 713381697 20243077 532916075 189779481 548174802 921323881 953429290 414490463 860959767 363332034 982165458 286946516 563994552 222915678 782889777 400948268 499225573 144807898 279824828 324021947 864897749 354011778 563912564 368244369 508721434 468389781 888577198 222233346 918132769 989327818 998871775 305237052 987814592 424677721 866296218 190490234 335059348 624877036 710671319 459664038 921030050 60886802 591940591 378417004 981601922 596105728 611297119 439366599 734966796 868672320 957315944 233553171 954937910 607357535 658509517 312674264 706708259 54924665 213703051 602022694 789117791 126321688 437985951 760019318 855291626 117066401 740302326 318906930 769146177 194099854 659605042 375723320 579255188 615665663 761346614 443226514 912792347 804379267 959767328 736067836 823563788 229539131 839397378 804167487 929498957 861286474 984513408 145455693 251950382 682284599 976533977 301048734 791291208 791243635 921772898 572138655 917803799 958769696 969873030 810569621 821253594 815882347 890192891 720547347 975185166 429931953 485492822 872788563 983425690 455035863 659193297 162608233 857351819 108456397 943495678 277277700 543133153 504401342 997330604 141616400 689215688 258256079 921028223 168531586 190125287 473734395 950090387 864889961 930706205 794837467 854762260 375754693 676150189 680590586 842480989 91799366 295334658 988941131 997124124 615750139 710287308 422981455 888124390 793474849 890567595 892096709 904431704 889428348 930916214 348958960 519590780 608414157 960435101 655976105 889458260 406058933 922414349 101948733 343378108 634057918 701136346 605988627 792832146 108412142 256382245 280741927 808540781 165385715 761880088 76015729 96968200 700947082 906581745 268159316 492733601 918511576 937198159 837909108 882434240 250143631 761076267 978199454 984125945 28713316 187690047 983473991 992435707 150973360 534993863 579938758 980930796 403474879 500109474 560008923 635378938 62454126 379501689 25091409 552937173 650416016 747522570 397044668 427470594 685011780 845443339 544737805 786057533 926520190 957805697 478080882 507387729 978736234 981552357 521586607 958743944 303242798 320016594 417739708 701004281 902158145 990100654 709411126 858380205 774599659 791386440 116294689 840026689 865386560 872697724 882521064 972877397 162196865 329523964 678076283 696135187 420307083 850132189 523908689 788061035 848010353 950066157 196393099 761561665 859761114 943899361 863355229 951898656 908759353 931266316 283872929 449933160 527641568 975579907 897901046 993067907 337491146 926231672 858025408 932189699 204716783 290227034 394287042 975262811 60666679 217469297 239173581 993578882 414609360 734895116 272116663 486602634 57108270 969761556 78554439 333422614 939190457 989483284 687553070 938538756 653084569 995839588 226173428 606840538 895876853 916722132 39329906 595001153 913141685 948498644 135147246 314125117 876843891 922706940 615727828 675999019 781362702 974329530 252445114 290193417 870545511 970359575 769056792 778318308 108761024 761757977 994487838 998958623 364921062 577332172 47656659 742662188 916178492 962422063 647367060 658444369 741008376 813387406 542626146 616738470 465817527 776723349 726605279 759010967 915564473 931386065 627146416 876821352 372406126 951301046 433865415 824286759 426121498 971293595 665907103 868003084 133375070 250143211 76139464 358643025 393383873 942543544 937926604 987840699 563062973 661679250 597795773 834888586 439054925 508641715 194381661 558301219 639109064 778897115 5580387 164038119 257665196 416429640 944874213 945765174 16589092 667067628 781668991 967146018 694054684 993614119 861784489 924508227 149262060 281835979 475303504 939586062 548963507 918429342 118998068 798154170 388383755 872600161 951704792 953423425 538710479 981272402 939108573 973297537 327596467 534608210 763547360 769864001 733182515 897056454 700612849 900244102 332888436 494538730 164932119 371211283 852997896 884544407 575113574 912274243 718311201 840396990 649838870 945780706 540895401 935748570 876607894 895505925 626332173 724436398 333713089 366390831 543714725 970773405 574278076 921005033 579163894 586909316 295286805 926304972 499081216 529272959 186697155 825998693 436781771 760432658 972267996 973714444 201486566 311383854 185924428 559950071 318002573 913175101 398323852 780683876 412302344 835727485 796833596 897226103 157863282 297341266 24419466 668546662 328402934 500642885 251330390 996285974 213435054 374614880 870223159 930362165 108868209 696713611 284743108 688886482 147922022 389669032 563994161 916305897 294713971 482902475 802552062 930596105 586645246 990526328 75782486 202223699 997837982 999237762 86226339 809774634 540511016 842098098 506565820 939160701 892283498 932165905 569484084 650001655 423049716 516798787 852822708 983876938 157402482 738159263 479375276 805503749 757734490 761984547 835554800 951040921 359264572 410106530 29829502 205653696 915973824 971731514 426933314 770605547 387075909 422793304 479672859 503707333 930903691 979380723 809530264 853491934 772476392 957017486 550963421 876356477 994410690 997859932 146504481 405680507 356298104 924959470 104636522 460582431 181808258 688679944 558279291 833377298 331875090 973228704 811895904 887937971 132194705 227782041 552711164 901974277 740995411 860721984 281406027 975954109 210369856 737950585 839952896 872585722 919025343 958709947 829614444 869034221 423987588 618859528 810481643 823183187 76263252 241147061 894327343 992427925 340560821 427774082 772725749 859526617 15368885 319142841 387961442 571190411 720101408 934561569 240421429 655617746 771171896 787163338 489962770 813545201 973208936 984453036 107284010 115856467 416382811 634901018 605310603 823933927 157560120 805065911 117254972 554459826 253535255 962068160 687101444 690096185 631520417 976645198 9573721 742924130 770418357 975279446 568007110 867216448 147575383 581415882 790666590 957278405 836402588 934482799 679734091 780687373 835947790 987048077 860352001 886710710 492691851 816964369 13223304 567464820 797446656 890150736 605714823 915800398 124349857 141031604 396542369 755576951 46651377 955307920 77022635 566714932 935610063 936353176 44020833 698971429 790855635 984630318 664592231 991878953 633213377 867151941 683209600 922293014 412172736 467836794 946822030 987762008 607360690 891569762 752157428 774376219 714343678 716787871 288573336 350112458 539732195 906457057 342050140 541709330 980835369 998048037 1635398 560413122 595521373 751962529 317211680 927163727 897533909 937840062 968676076 979228437 702698104 734534765 193840229 364438285 965032512 976969694 227898425 691234619 535411644 536169245 825535068 960733279 708066262 842727355 333255488 379435867 430984646 772521498 410280408 882455388 987579317 988620576 52403986 271762662 209638120 481502237 212586149 356993328 887954259 957204142 756633108 885814441 611657240 890309864 441063940 763376477 843239534 967422732 857010476 898987829 493380546 696501258 248969656 286757408 190338150 363890566 750860205 941607580 766428302 773163372 953694530 983698697 61551236 281687835 732354927 778890358 51674880 391037664 636055422 789172320 45430678 446282928 8212353 844734897 744858761 955130801 114063059 143264199 394610111 511682609 489123551 662181322 99671873 789208139 340956606 837991796 156383026 634033252 597163571 840223516 70037464 433429504 600212993 787132559 112353539 460203799 194158441 651830325 57522969 913714195 225954578 825970002 109833232 355075347 856142133 907888938 78920326 851501326 687343563 755503968 139289143 287216940 120734551 626887907 336935788 641506287 537191536 754439294 831366839 855485914 41950394 903366612 835187286 866908505 514202335 560367962 215613136 807107685 927240067 966324911 797394418 882818215 154851883 738169597 780099208 953235821 371047589 781038094 145992717 475402876 84066516 777696030 574559378 591806329 340386574 839643187 472299408 478070027 217139700 910388808 511157424 862660242 767530813 829858658 724643780 854478381 233897323 562576556 98092290 952160809 239453974 752304014 486737196 517894835 904842847 977653591 2900065 102599894 831926742 846294016 641204756 876251557 741785572 800998365 243090399 722905491 321167490 947733920 494309109 768232772 560699129 958698223 980134620 991549135 211781717 304900573 177384870 178765135 546025290 799085324 172202953 833104441 956780667 972216807 482873433 914181385 489414298 769249963 271284681 601805678 532872717 869024481 809281646 849898787 906427088 992642082 108111688 466132860 235068245 717376103 639970245 941678959 778094949 975321583 271521714 703570066 439064961 674111374 901232161 956631917 93978550 570944088 850172570 881024622 110271255 987801297 118816827 556981932 157157464 313374198 950112586 959880194 990914695 992847819 678780746 680247132 254040848 859264527 834181641 835074334 66210416 271080504 157177610 845844801 763764231 894525818 974250757 989110436 965060200 987059876 291240794 361025950 400289695 638831277 50070839 567191746 225724910 678996529 989606900 992643982 887693024 935788233 457071741 573649090 523420229 674236423 730804522 910672749 426839712 730530930 386757347 429377731 591134530 632350488 336682705 870808983 994795449 998933726 944754096 981604060 449571009 771182144 339211461 532219475 982673344 989990298 687533499 917978090 383350868 662867838 984130561 988534217 547154845 923867722 972650134 974603269 890751609 989562475 427093536 780371642 619211111 959615447 199441466 235810377 400185575 419593197 213644713 670883795 610435285 737341009 765151666 883190856 645916722 875934370 607875408 693903237 26521742 468212702 556856941 905483803 928925474 941691640 946757731 959982326 496232632 694463415 618407394 887666646 354917618 432590646 866733261 943326009 109172875 369851548 71796170 433632463 82212244 329452408 972730564 977541084 499410512 610674515 862181481 985699366 592463736 964665090 468738989 491707757 706098891 977760317 892589755 894881184 483252110 542383969 701601380 761339192 624618077 807939984 432845490 766357857 375337709 967375703 626440354 945709891 156387944 513301263 199454726 391404751 861673290 945498281 927720045 945747455 89511268 949530069 429691349 600621156 807762611 866430496 520704391 785354847 993868398 998503359 724960926 998416968 489131948 510081145 163157681 739250697 461763476 805877053 818205006 894965182 340182894 434983167 637765480 677382635 416909282 541236545 246124219 843791999 444365668 643269130 158300794 275924684 970127696 979635069 718690130 745193354 940854672 988975145 933412493 973053392 772934838 914073068 57298795 459743294 686725632 812031796 917192524 993162484 591818322 670517569 854566369 977499131 932949236 945425164 278542002 911080324 18111101 835665515 119500971 149324518 585129992 984553959 611140377 612565470 869723684 981618486 752390793 918890907 148745174 444779118 254018718 988944566 800303957 957405170 435629781 546021094 750771434 942332634 588667617 630945997 766850942 870817142 53687922 982707410 89262892 616306328 503152417 792406145 199376728 808284658 314569059 468512556 755739344 866465415 903990062 955908737 491056223 803445065 179756675 231229876 778546330 929385656 674955197 926972172 50313458 815855963 737945760 853571743 900578806 988309443 203644812 484888547 887911128 934729042 56155094 784486397 915137250 982833802 488194832 969707113 341291699 730106879 285308594 327343755 920221560 925886047 845427606 974321168 507817166 683155576 633648535 878050566 367348009 491257428 501036226 766089538 373372460 587300336 565977504 779336809 494631119 607991523 817432104 898860408 231471159 486445323 298175588 400769009 266573630 741087892 223650424 778461972 505856731 534691414 724731137 986817641 867956924 960308960 605683686 726349144 989790238 990609454 546088748 733129894 49077033 583449239 429666703 449349576 706952868 947868019 647958206 993260526 50629458 468420306 919057235 949135421 561438437 792514546 231887626 431372998 774959223 804710913 40095676 715437301 975551183 993863048 837180153 984198161 365670030 910682125 119176824 617728484 995389894 995537759 592055745 627997719 840729761 858048022 87612599 194119135 902214537 911575055 509169180 847581483 543424977 932314770 104364950 139757704 449123362 994983794 113238873 255830892 645891885 881910985 820940959 933917704 7835592 939271277 608264364 620527013 927410954 998729648 98385200 304638595 39477677 452452054 182713806 842520726 531474216 856800789 375268488 457061976 55852250 648558179 465480626 968228201 961941416 986123626 672716486 753078257 148977459 229068811 486862434 796807193 794217809 855760705 343295547 977118011 812382588 976208671 669623333 768475800 807728506 860185310 908330918 979056711 888696058 980168071 667488331 831341524 982039103 991718686 997943670 999604201 952038247 980540301 771786766 950960126 86014632 397513338 555403710 876527881 186810378 886799455 913740428 975541626 648282558 982485857 275198473 532947111 499749930 570816905 110420354 807091368 464154632 812061329 784738331 959818648 998941706 999019626 92682818 347215001 676851178 822752772 260005656 922130700 988811191 999938842 353833884 429315705 289676202 308548283 66411583 896992180 666409956 773776278 419036329 733475549 170194482 209010667 334039804 944979930 777226389 991738694 271871706 918136286 550081000 705350941 401080867 986144392 17079774 394368057 757031714 990795107 340646336 562828013 957905409 978882483 125545844 724513002 21679368 331794512 849438332 944778264 378825117 610186227 231705872 867395771 896942616 978951000 570583260 998838161 543199918 775768656 263960868 680262064 469165279 892895504 920456083 960328160 981876162 982753931 513836225 612766782 862938465 870091966 208185058 705619795 219456751 764606083 571247572 804765631 899111282 974173056 263228251 312904973 793982256 838421299 428128231 641376332 415213352 449812410 436739553 491952017 461362894 565649723 987655897 992809309 108569562 208239542 783063539 832868801 831171810 839016941 80862480 319461830 362707118 366304918 653281644 788414277 497637470 956793230 647128739 670643292 476945185 602425557 762485515 963836617 276111564 947094037 492698914 978425148 171675576 738628608 811466762 850743974 177101467 743519563 762714172 858153112 320396282 374067308 580023761 666785617 709506127 897840393 9426989 103861725 904791224 936981343 235166376 367256765 990353516 996748007 69589428 559666884 600021308 710354298 154833799 881553187 630894559 744607684 922222223 936745004 544697572 647814742 223732206 558503427 681770981 936029278 775352132 821811082 774538585 942096927 176440537 557893166 516049231 881146637 468127927 734200410 270498680 662260157 477255907 559041310 635275067 666846262 719265801 949506020 968878361 995258046 764845804 914306584 589590548 661522390 267574301 642178963 103024425 537192990 211351951 791543014 92735200 748645306 514593256 841796096 428198172 722834180 91948176 244520238 635627948 832385174 606360100 681796323 101746862 385460028 759128262 891868103 685108722 914378772 790804243 811498926 652832191 900607196 225967290 838188151 772052133 814436020 114763309 744178499 909187317 990490647 107576748 590936978 520160980 654925278 832304519 877233043 844842075 931268948 352750527 906074875 108673771 506128135 894046405 895716248 498437603 821576725 56193765 420738708 684994710 742301071 503416274 638457002 649583549 864026767 893779768 957987935 316286461 367070912 821037522 925454977 200074442 982536994 733251794 877832905 167723191 387092934 998766218 999419600 13173097 545010623 900710336 979004038 712808776 943873169 472582388 785750659 869485038 957538503 930883240 967680983 846476674 998911363 236006029 932772447 63978529 989630983 256490779 496796850 749798140 791678093 908417993 917677853 730379099 962885960 533655030 868944638 399819704 613555275 948740083 996429353 73641980 901868190 861982998 931324242 231196679 832127217 714590143 896641630 95674031 506058369 421909736 948159862 196023086 621180168 449703505 806500568 432183277 634893091 207418964 698213788 978759479 984007829 9270105 265004847 81688813 848162894 868215092 901830826 302332601 919354301 154650059 754550864 912703168 926346195 574925279 870075586 2268334 251641312 136880388 583020686 748198855 851459315 416322165 598946487 962824555 968681911 481641455 849998457 660211477 817337968 980831623 997118277 116139409 667341901 59063309 801145326 770846309 852894923 270005090 720077036 11811426 679781690 429700081 532292039 436444890 516668676 718753216 870278050 369110979 565210285 68121747 203467392 794849006 811997895 401030541 516218043 583010031 698563880 74121331 482864619 311808864 629380977 442750687 745101861 37852593 842079612 912419950 918696134 313175117 659838198 16061023 291726774 94601526 371436098 290208726 471647294 177202524 664733796 47239681 894373087 226449727 603468299 368625738 369539556 969114808 978291873 420798589 637774427 343895547 940766558 383673627 930605777 707060223 726302766 823859712 897414063 798747617 820916225 138521947 971887103 20991635 590451572 432497508 994981408 146094625 564301247 528895852 563443435 457855059 486770918 160969944 733248516 532167889 874290735 222984578 498916261 483896988 493787591 387265410 781458128 326452820 740443298 939687369 967208455 158948733 861244826 236465407 453957343 780522755 852814353 899068453 968537084 616979533 790689779 475164641 834332868 155034133 828896456 312986082 510650412 901691692 983262564 998525743 998946641 741043235 886405903 295023191 444846597 493444271 844326922 70515882 494650780 459300704 559733755 380064707 584706853 12207731 166922736 819797060 917973464 677420251 728759479 176087689 917194107 799554585 848445033 100073781 649939181 968109565 984958536 204501027 667498861 697873211 706623657 308021582 878578375 99360246 421993403 320922771 334463516 931817422 988622892 92478811 272709289 971798242 991571435 127345900 340922112 862616368 969650184 957968079 993894938 249512400 356794422 355002118 679522301 315871432 799762565 931388382 978296571 145988540 637065324 439716861 798674848 445896314 628883558 13232635 954928245 374317017 629857296 3317512 292350133 908635748 991311696 640068641 702566919 34685775 610562531 663947603 761227808 864359861 964569830 874221547 930085631 930214824 958992076 53343377 331286783 423415897 714390715 444132303 795362814 655457062 971009521 304980472 429880166 600765499 799650843 366569394 551228048 67216119 470310871 885113880 954019093 916133426 986399956 181974123 471995813 7793843 393454886 872060648 953255524 786409850 982431879 879329759 910895877 892823885 981865308 375600269 380136058 381671578 926679715 581087181 773225569 39976966 664307899 819708994 905277268 963931689 999801202 573893297 698380196 75432397 665167942 377375723 675138338 75710042 257396393 193444524 313713072 73044365 390065623 643500720 931643469 799945988 877293179 161430219 586774221 789940330 927195931 154227976 790937763 462420895 860670923 881692364 989846241 658329439 734689556 552324437 582325284 630857749 971560029 156869346 182832506 143396695 715615841 408322033 413422746 609732749 953825330 380530594 841479222 15290270 807244217 830278642 906399516 636638379 871449944 305418929 620589966 781046231 837348964 528638676 999722841 322310603 378287168 966256747 990475679 73656019 790456712 338144925 942020262 64269226 972964020 191955171 885716212 523457964 794965064 768108442 953820591 979274335 989286672 942309984 976656456 357570945 426858980 491189196 563897093 526818623 937325804 462846923 926154696 577487948 863026627 362064311 635937039 363659582 808718593 137994074 411550257 938046146 998456412 393859840 767479593 656778291 732561111 670891365 968093975 808489857 810539799 184956549 783566401 159992049 586830584 901189411 983017203 104127079 917544001 751232231 993668607 212181546 754083527 548277129 946787967 22536280 314770065 627200822 888044498 9997426 192271670 280109631 674327658 268476805 769563965 316678430 806969300 74146284 631288250 224841801 795911488 793468082 845897505 649408532 950820278 396235328 876536695 547412066 961940695 192711511 383571967 668425151 953886087 137522105 381934704 9979125 147391400 31347611 727649841 18665840 140101623 803769213 805510330 643022026 748427243 982309028 989923945 185140594 831916308 591422271 777279724 750708391 870427348 66349192 942864234 139463373 935477463 395513576 820451350 543540550 741758576 409181113 524852270 371787228 734920066 276028122 607403467 111373114 710845285 54998248 793148339 550334986 995526844 353892290 864883651 857316176 954754239 696797067 972780851 962535124 996552918 739048268 793446463 620788123 724186387 223813213 387504703 207592252 678180020 167323085 750860768 23938668 71440358 726154866 818441196 136376701 420880437 379217542 490266658 549309238 880012623 438642981 813880456 310186763 711656822 339878285 677311553 515341056 928432162 441633045 878537616 571351652 640637855 940398455 944560045 253056223 673054495 930836539 945392663 662785946 970168128 648826970 863810738 785612397 844807272 244405697 748677720 849757488 924883663 138374159 346815185 937696942 976633882 306169712 988087563 156642044 330991209 640302875 899744125 193800421 910488669 104837213 821325486 799412948 965639845 273696098 609667443 66612644 983345640 201667409 694560813 261989571 577842875 225994492 847725590 357565633 376487484 526235855 712229175 272523026 303270666 721899447 873433426 459279137 668813353 943294474 999388528 873317441 931915388 714846430 765554148 432725864 987937080 531026606 540594757 89118149 475875359 670559255 783705499 136257793 151845133 969097948 980457530 251274779 714958221 444060518 603208696 882680186 992814940 683200787 749452109 978606598 984430253 836499454 981039428 554321053 998831318 552648383 824334057 625336077 631483219 248894914 896579579 706374150 973722017 831012645 996093080 552727976 740697513 656942799 722413373 142846673 478964373 276597575 613778728 567015476 757650463 10535257 453314215 946894773 996458429 553865182 963615062 518891852 524917532 728269810 778212937 636885391 713515323 860895489 868845827 596599731 619815614 312503026 418065907 463424089 559848434 78033917 686978842 595844251 851857441 644261333 683805723 561284071 973900933 84549774 400581416 243966207 333457199 152593626 154081552 494423607 840278946 42442013 515552261 4674731 70838606 998445265 998670840 452648983 806936816 3644150 683305337 603470751 945947051 748324645 760867196 31185938 703435744 267361531 931040394 618172405 779493565 531977823 737672264 739021034 847965800 428227639 952711570 340338546 881026434 881621793 912254159 252367956 257286430 929501017 943727213 241589544 295684093 905999712 983346850 453550648 749875701 750607973 805809249 634100430 884753064 318621878 685874110 555840974 873637047 109789791 774800431 221415836 500043408 285591804 575793933 825869058 906759059 902149244 963243457 564145391 726336137 912714181 948094377 886517169 887264367 707687328 837499264 876470477 956648536 396129066 614481123 241681347 895900537 649586327 971858124 392166201 538263706 185388982 470926354 181335524 446883000 981413497 988277963 36338343 506154627 794139594 886824587 83541731 210092895 441370834 736675922 275280286 408848706 247819921 520979878 306850420 572592870 262066985 579413771 592955948 627136166 949712773 983026254 409721488 411564668 648663798 798148541 763288436 838090891 940444647 977121913 200928685 823815131 986328743 996651934 860213635 995987052 1339028 525077437 919227062 960323242 965515916 988254181 334631711 525862806 786570345 822057321 916693058 932388141 831477899 948814588 172256057 459882275 479283886 770429819 416502696 455562426 195354480 357471203 498424247 535507166 674968014 901286399 74559544 622142023 110790715 472448748 969960345 983863918 737664092 806696256 454271704 736823391 444711617 546244612 266806164 656107044 482427969 545365579 756776121 848308619 432829890 468218713 833341027 880440011 476002529 982563921 529196996 554434506 597232802 785382642 507900553 591353978 230881265 273060902 920367600 977852552 134425824 667178409 258280806 646871577 814515615 921541104 115593371 918611422 674790580 766937148 325810522 545840267 461097007 729779792 6515571 568359032 437490183 757146342 627493156 882239187 624902401 683766058 279933367 924730336 331703813 874714205 106703564 384407796 114191859 376754163 318321709 324034354 664948324 785884837 466077415 838300231 229730150 912229067 87850811 680141998 320599662 692684960 862070454 896220278 831516799 847489960 268216746 839311872 658157682 662518444 930750147 934217887 793011642 875067023 599594186 785930743 868378279 872637910 269907482 508715986 911833464 966251276 443413880 736670164 133510900 628916011 974242139 986656423 111048715 681959229 520993860 988279325 29930042 600490909 341453740 969233169 687166818 908372379 705185600 967011727 196531906 678036811 71753962 267073095 627784679 859799161 25885495 211456471 815812061 987643443 801511227 869098964 864601950 882809118 757125270 782286975 783175040 964893014 637789390 752053434 648844024 831696398 295808982 628285631 525416376 627104729 291267751 721294991 64824552 196695602 821925698 842077996 998247171 999542231 703297993 870862103 726159502 739304186 286929648 417668701 38625617 476388525 632897264 876449780 938725567 966270623 930509579 948301206 911991260 999957247 313425239 336906964 165472447 398856583 36616581 490152816 421694836 486822573 431048312 656770452 568343131 850369805 713417295 922030165 159445092 262520525 718176843 946942076 177741194 264256185 372752665 605724430 207098755 907430103 966431807 996256336 430463739 911844325 758381799 761729208 538271053 902956633 370338243 794647419 83558842 866711850 725159591 773347789 276230994 880355376 618035746 919341327 237275061 366219188 64529753 815624962 679338427 740751504 182157801 607904675 365516760 529392432 669524562 968866139 586705396 811206716 737368252 825970009 955486336 967887541 323735120 640340760 745764229 892703014 567456844 757043697 669617602 892094664 107793635 126731066 392021107 800537112 928271730 928819889 392720202 932224045 505563944 981062759 32698401 786446955 434971119 452233179 660112515 743041724 68727522 314748611 941228910 981603357 480895610 575343771 566810500 918102942 632562463 763594056 951384916 995975712 482536860 515826712 322477150 806452963 114254939 408494335 400052468 717724037 876705613 951586790 504688193 590126062 209077490 844903191 677103888 995929026 448249755 757743879 30344242 140067617 865920323 894210859 102888148 950014668 336171731 399178181 570762066 728774997 983088392 993911837 697976729 709518903 331131968 799176779 276571833 402384181 182030644 757149234 811121549 862745767 489239734 752726151 868924988 918400819 550267871 577006709 627634974 767110866 937074553 996426806 681229752 711942190 409947964 878290291 312725527 700281608 112260494 370066278 324236171 554179821 836750405 905361824 695644623 826297862 598982148 976227286 432912618 479590743 314652118 839164312 62973724 391707114 462046488 922509775 437220951 851333191 657105094 763858884 888221065 976888203 788957330 831472946 907740183 991894491 207289432 237711774 708284576 944087309 271306859 417233513 106751475 324854048 964073167 985239235 705942944 956687766 459746583 572311379 337790906 791496204 581673426 866643015 937132835 966949153 799543227 834290827 535622982 605400059 522222679 534528485 689844143 913199192 265692188 391959710 482851497 919067114 187482364 865143872 279091272 910988421 438145758 618437937 893863059 993783262 668900433 686914843 709096159 836161319 984259759 998534530 881645519 985145719 638892023 678410497 169797109 621760569 667782138 976051787 528162479 772582902 912562530 915940499 305979489 520128068 416568262 863971841 342080116 585485934 844893423 859959713 64913007 529821589 878568837 905199696 232106200 669501213 238159801 681565862 52074159 699740492 934892395 953885660 955921855 977058532 100949215 762807202 898424440 906086802 804861835 991755249 790323541 857354624 324061115 413906799 268581055 572817786 905830895 924834946 554199245 663468064 705050636 806845706 687653531 740430107 660341394 714807948 361793805 413286150 516169493 867049508 502456789 842074370 920971229 962804623 273940438 466720127 764347788 894486614 66886067 485184783 186358148 299183174 610629614 790911003 383412632 588189089 255779334 412106042 382064105 963724780 112819806 248589594 919861939 956770729 923097496 972859749 274463116 526546870 20583890 500743372 766509269 774966532 170923393 239764359 205497172 322970706 982713871 993580484 127577864 486221886 56573262 477186538 892655506 903097174 13337104 852073839 781777876 973432706 562720807 909018068 80306234 917347368 149108639 424368574 881757137 985310822 355712582 744286505 692467635 973888824 573540880 772287377 256322420 635966581 830077986 942158094 536756363 791509389 448210360 529245183 782600155 939491453 106717708 800459920 239632092 677597059 637509679 817782137 859859599 879933877 121689380 514488340 667465619 936803808 9933961 847243480 992172030 996963295 388636106 608221381 812487769 978728583 644740146 736774781 853794214 972461945 358649253 956018897 214758226 938100393 966731559 969177298 814928709 821557436 136289269 671152307 53890436 569782911 588629588 697215415 794875273 907013374 479478258 603174403 965815048 966139041 189878557 369722527 106273233 690228963 317788921 860121835 351077863 616517219 613932260 888928494 890978116 897351840 539330012 839896344 602676462 700767882 694873942 849411743 248610448 735630055 752574641 934617970 920064817 972751283 953502162 965382179 391871618 498283436 229041341 448645396 903839092 976265843 889274882 967438628 382599696 957877908 563808167 736397680 775432813 978243633 843991360 903769003 987022756 987864209 314382179 432636227 487435675 616325559 745373363 863234587 522272034 913066484 478222699 498141867 365315544 901160198 629287139 733243202 479203021 894261026 363553103 998489157 614147410 989484549 582090065 871494813 500757523 975448286 2879334 613104978 706777588 769204914 546484733 987492841 698396751 995409510 578015262 799781844 353552311 442547261 227863657 537063669 133575011 199135020 571492454 698427499 404224791 595402466 816619895 988170758 562878751 832069706 811634387 918221422 955247739 993458053 14793592 529123309 354604383 486987749 995960224 998518368 413075247 903038664 446041211 602119747 222224275 853932510 951815574 957188503 19133614 255547539 129731473 621375498 65199216 637045997 982957057 988981245 520279316 651169885 304490397 735378934 821769884 862328491 43876228 476003136 322045684 623116925 211849436 939096320 572362978 805826231 38897003 562043198 118303829 890219219 269276883 371712711 576777988 782221233 429276869 916017291 676015621 967703265 400271394 882029109 52979446 412321733 739516226 791930592 21116486 159024706 957046619 968970813 688313401 813078403 217968071 975892088 102406496 902370556 912320236 960307217 218192612 297528119 57335639 524223345 686963437 900294324 757024259 891022479 413562299 877937993 849576254 886596912 291512728 395789769 467023383 705049347 105265155 955237177 975419969 977308845 815556858 954549352 129424119 805510906 347710544 486153131 356350488 572192350 128027659 482003426 920907682 923980542 919950069 930159931 534012449 645220538 950795356 985818688 2692964 509206463 301759236 540272283 370602901 702799999 925447131 995283819 791286266 944774606 706905773 721507906 969564573 985472188 832742102 922419423 401415757 706887765 105894187 336958787 895641434 906487005 31701783 38302818 865202352 938745610 767398655 863241307 706128732 780244207 151247658 699855997 758015363 901497732 997086863 998841582 658804717 728619113 952354196 976217855 75427677 846904814 190556162 600663833 902263834 941799375 938235998 961565141 404869424 933413914 100346255 857205096 71330819 286874897 656703149 851468581 433344222 909697765 96524916 161025306 130305776 430260930 730116767 882474694 112378850 161312215 97738891 541741020 486637901 600687344 834893659 985651387 431264997 566503946 53659050 591536972 451442182 987097879 762267239 997290403 912204019 920875053 600874188 921221476 598111443 688596828 675116455 928536361 25883224 203238033 581359432 631724430 594438441 875468125 403900987 616595870 603432792 896313838 332866673 890770895 595088765 855037921 660412700 693389665 640117914 833625903 311136691 349834224 87288347 887832747 961566393 968096012 653926995 853841004 610802101 650792290 154259455 499446456 135192502 226452282 938692872 959680269 58544309 340904323 957575252 998219042 482692061 504119478 806936126 976305807 389596893 952692123 459173346 813352296 519336620 697461568 148368498 386649705 219852247 629545019 622382479 955182084 393211914 596327571 832141821 970603726 665994717 929064169 151869727 265633304 806093987 887570831 147979509 924599757 80975815 276072413 366564612 587535565 695629195 919986060 179821890 814113320 503483503 585440507 743530274 912983164 461652491 936655081 195330873 227812452 763585852 998625532 736883485 807805625 870856502 886301888 261349835 849812991 25075754 726349254 753053953 999073555 7848354 777625828 102494234 708117392 361281379 486232415 890206223 907407200 841963117 917349727 733360768 968822597 74850126 960142645 935221699 977551627 613305297 731368801 895724200 905587953 392796924 585742677 295624279 887286760 727951441 984253074 301891849 421697743 321497368 707065504 497890135 540668173 965402687 989937815 86131116 580337865 362870718 432747063 742797894 772848949 829354018 952409282 940812052 987036471 31261612 579036696 928889853 948665008 953738597 995614061 73979787 825452047 704835756 900932475 716377822 802615181 732650776 755745819 343104658 657200186 441885627 940263725 108986562 872248601 602117858 967567205 787440986 847671138 958308478 998018871 592588574 961264343 105508717 903048475 490902453 781524034 906329460 958601361 756482149 761132399 450318811 940082504 617165084 789938533 175938142 393285447 924277497 929289151 618090594 835752924 347974077 878388675 978122852 985980831 48304004 810951375 510741538 761724399 554578680 810426755 870994266 989584011 703556812 809896662 35238952 723444986 30725636 854276135 261188514 571540421 402798734 544738924 303303034 340038479 813963821 871635883 224268591 514675427 953602167 998717461 718754407 782540653 522672791 623407621 418043103 941336440 966375585 967973377 109205210 318240395 814806822 889343096 623094570 995680574 78373132 565914892 332234879 884570963 715200399 826952501 64562958 864284667 337233702 902574356 961536122 991292135 669683814 737902668 92263502 650610683 519582686 952830313 140041470 672061354 159856504 662372340 119038187 119278233 362096546 420585764 240082033 559180650 966258996 974776789 493092185 593197639 910213335 970905866 22850381 387149516 214957102 597497413 943629105 993617685 302926687 729546557 672845646 983529918 660147487 832963606 751274027 931921313 720130368 991791048 605745659 784011234 569837510 749750854 20298311 786495524 685275367 887533874 329436825 870677899 259879069 863171738 769863989 812072609 830279069 974933485 749589816 918990526 814649204 865505295 356563011 529975492 932088797 979208660 772945958 776056916 618873997 695664387 448778788 652299663 556482373 722968165 489565621 668753423 872446056 925877380 753043264 932790879 194764965 505974863 692390944 839486664 605648967 937506495 874751128 946948518 232832054 657874820 953991333 980006356 87531096 967097721 885800975 969624575 499890400 568648358 944623559 964710907 843859595 972230331 41925599 639143834 546724371 883298406 149506435 532215179 4660863 558830200 98600538 609548120 302047410 639665038 512769326 961499143 473028800 706072465 216239679 647136494 950622161 956524685 666523477 995553500 555727421 963494443 868779809 881965174 411428448 457160321 64456063 589557649 519239049 907770185 112090415 756055199 874734654 888402157 301392785 402031207 279083006 524112501 818640451 829915193 561823929 964810883 573660940 786608693 959184230 963593898 410347204 716598437 152785932 255982848 988815430 996415157 911907119 918982414 214031274 413134128 700194182 945373862 947110125 949861128 545959815 741168862 674588143 778253512 486682574 791240665 501883024 560421594 111252952 930783414 918627431 997341971 105286242 980116497 241915729 313826960 520245348 584458425 830984453 972685721 286546882 752970509 423676337 774102065 601153076 699163835 518903612 820018733 886183526 955753955 489907038 896888118 233739691 296851845 907344900 980851416 215088400 585596231 249850608 758976588 2886337 539276811 748168447 922492697 467366726 601530724 211970650 949301409 340613562 868160299 511923635 806914957 758310777 766263080 42962827 412973066 202802365 697921872 424279081 805221812 4533698 580153933 705846626 769538700 561126550 608001932 889704891 920418824 408294425 903697349 615308369 749368605 994481930 997326708 558574108 977400007 613090568 751203756 701383485 718900400 938818967 946806043 908443249 919076487 176309099 211940079 926906221 970647136 759093820 997746405 79366137 313968330 805795612 829978652 112843991 702801561 82997588 363042353 459775693 980598528 435077064 444461425 433976706 603116457 685370319 808556338 219526845 715030568 725790867 996147694 726589186 812978887 588163126 717968609 774508838 895186513 726931132 915856794 626545418 841856458 889851859 953959271 188671666 624047283 621639561 886812882 870890918 970092491 766464415 879902373 304223999 700643669 959984971 964349805 850842191 907942950 170155379 323986537 273458180 480118165 629999363 688245725 323719486 998446975 924303769 927346729 983978742 997508748 23441075 919624174 145475196 820199343 320829894 445581159 394132152 707393867 563509665 863354851 687778223 818358060 255188401 971147437 835838062 926400976 845748758 846561822 791095331 820107728 684053257 709599730 749157464 795528005 93392192 605379410 900205231 909480179 105819674 381843186 996193359 999105953 17698935 829908797 779679668 792685328 412824690 874814906 301120497 938264442 632721328 647516701 618130420 850477093 1052519 756149306 616194184 644272976 197106872 903802804 798055249 944891361 765408098 981343096 285183227 521542028 423368835 656962779 803484375 975364210 607975365 724566837 741952605 752943475 388760706 697262622 19561685 84705703 9634853 425263076 665480245 894892301 587766927 646469115 578435315 639292592 632417860 854625164 848884455 899861848 681234047 686821452 96652891 387016394 38121757 312975024 505497050 777292460 714057741 781015038 422759843 838573858 938921411 960109462 736415198 845501505 381298290 385884469 442633619 452336050 234999425 305766091 735004154 857819637 359840652 759306713 257691020 896543501 944830644 973323023 798919807 940459513 944955285 988736906 538541635 612507036 290074550 296585822 500866202 549359670 799457981 955999493 614385897 928251476 273336212 344401345 750941334 856987387 11494069 771072825 987757989 993484811 159316403 872539895 980069587 982616213 875368617 952939429 611644946 686154401 468129341 821658892 417706880 806732684 611283699 992111330 309267637 462647855 812939141 891036095 934179652 944448902 386405236 597718308 686078829 807427695 932635981 962702260 673825963 986306639 746077368 935337463 168254435 962157924 714534617 954810023 619263303 662957803 23380334 40413692 230130320 802805479 307073792 312784685 869353885 922528018 217936771 831654891 534316302 968382208 681793994 828233005 980622160 996781437 827727581 989928610 513747754 987636853 731591989 953889411 811327179 879250048 306718302 808748308 505529984 611878382 919814708 985921299 583793144 680959207 50945935 938074576 343591940 778876457 375177377 926308790 348171212 995515418 362572289 947801102 666419480 991044277 661659302 925369677 211918901 463385003 418841856 588350108 681645879 994986275 543676017 606343325 11906117 199079930 437979075 627384646 558469710 874813512 282488540 844360462 235612498 717468529 660298673 666680887 320436734 498077674 102536526 348017471 733152755 889882563 721527608 933344015 991851437 993270744 811240604 953646530 697979707 778519824 268344944 270180878 174552095 838774876 465846679 813897300 426688530 977820131 2310641 51656633 650873750 833004061 554556561 957468769 323404028 937585117 522219570 564791685 131201529 791545550 590982140 799514202 256448737 785759902 586077611 878007174 629963278 703619418 809786596 936663492 631474319 715494565 859306245 939943139 86052267 598083243 336326211 948865098 160396752 622793052 931004297 942471448 572301852 836882127 673334731 848321039 151635854 336169642 161796852 911346441 369828338 893832729 986095668 989287963 199866164 582707460 131160213 761490950 81300249 997659351 741640284 843071419 32606547 311005978 667152648 971886496 887830438 890492540 305718769 310153235 434161458 452173000 901979719 946848176 645740263 814010519 643790212 939441339 259734440 676400240 613104549 640967068 619870857 818081199 337476508 904411045 920416332 938418073 157094012 301329957 1464837 348819828 486556650 857424493 66976281 604530434 703123108 813717307 449570730 678433315 230671378 294738243 583148205 927950559 895522111 915702909 460511052 600649165 663995139 782738841 537896725 943686509 743972179 912518374 197687075 622170951 234292353 375587521 600386580 686815906 488845243 615050676 460135859 495251514 952575053 958841190 691086142 832310504 285942358 960855975 144387667 615187837 241686852 667469619 46477067 988470446 339275882 892757093 121010299 637929014 67911982 695350159 799584666 947746730 329703727 375627943 101832199 990365910 446553886 675986735 211767642 380282965 78995465 458032844 866670764 936596313 606440059 934909144 254373036 784964728 481603287 984782431 816669306 924114686 376005053 939748839 665297261 906754993 572255107 767935623 342882330 648964289 415265047 724255047 783036660 866036406 568685920 951956928 291797864 941507880 834512065 882891126 980983691 983386967 96936956 266845734 736504039 777189021 547618765 942069359 124670742 357803303 567957754 979611016 940128892 980055541 809577870 916950328 163229104 505217150 811452178 974847591 331238005 745669732 900084639 905925318 45334217 605218007 923515807 991717066 869190375 869599985 379510077 444974857 202661177 351823512 631019049 651307674 645568327 845440360 433716729 805599559 347562570 617266622 370080117 820267662 842427294 970758008 263960940 546557672 877665343 880622974 543710032 999456982 889612384 896088395 837153437 852813162 992816284 998380954 227270025 762898750 87347215 171937017 744737530 764764145 82400692 208423966 554710668 641662675 268431692 644036315 949009435 998772724 133022749 831814021 325517541 433941716 325394112 360642671 684583142 803875904 410312001 898391394 542801307 587167780 294944609 779808098 136037784 545348378 627211917 689351128 518417770 698433634 687758468 827348065 25121277 484208436 697675533 789198809 530202085 814775282 855171354 859060844 614664066 708545815 440296183 746037421 515265956 599775230 555618903 891199400 263139082 402253558 421038260 586863562 134493167 703478862 460713996 634956416 489131068 517799075 686645948 973638974 877881369 909923708 130739261 446138881 118398879 587868091 991738092 996862298 142753513 981580141 295530689 754880939 540371414 573049917 57794639 389664301 580464682 802575850 35497971 640154249 825884964 918128644 543542106 584195337 956536443 982409686 177203512 295662622 57422669 853290689 603913959 893061197 8682966 38494965 950424421 974024287 815393977 825074182 296554630 859931804 118693081 134948894 776628868 909753309 319530108 629721644 785446919 876735492 108256928 572925650 484806779 990614887 381054132 747947358 789344125 989073275 175061721 404251252 65609951 985798167 744883414 746064972 291300557 853038428 358559508 979475913 469145422 957531225 631436238 690193692 201060584 659414356 452319490 828756905 486967410 538655113 521941521 867262438 802979918 993922538 280560166 675241209 868722542 927992872 417115610 655131650 494077357 661885267 9370957 697698047 669214288 699803429 82383046 292532113 881940456 917708502 728837415 909180252 692588405 940445801 834442421 991579721 20083716 908876285 610233591 911442161 34268522 438444445 62581083 509361553 152744009 790108436 902372845 956675012 391695482 741308889 190984199 840238834 989616617 997710467 658520447 676396044 948247813 990032114 967137415 975883541 185790040 221330147 133641413 719323858 511234081 731715543 649457796 911139210 729843957 881881041 527189607 656119954 499587583 757459215 949100728 980048047 867106115 899880728 116702282 945730506 212178281 503858231 958480059 981509764 984508867 990975805 234247352 662640040 824090282 954386052 821410307 956540688 838648412 850769120 449631052 475579908 167102422 873319560 68653203 889179139 54101178 162960710 806712223 826878804 935797880 961104134 316261756 617079236 355961402 845888900 706244054 975472077 678956864 785728499 67785041 434879969 318050239 695490702 109576816 829159220 960424838 983274356 802084330 870805959 251100933 348216961 24207708 826504568 991863087 995213888 154532313 678821516 124883410 274310399 506711784 513968377 669503013 990764587 288080703 408275132 748250773 750425597 315473354 526112140 656759176 853652268 822338341 972973491 991964893 996684541 451723037 649851174 213325583 236544023 308868107 970721955 603440072 684868026 841933571 874532517 220229587 465469128 312759837 732419303 858338630 936121433 984116842 997555015 105772869 869998222 89533561 108191177 514358735 982298832 918981518 949310393 71497652 861943165 520568397 691423680 341921975 783514369 643564412 738577417 618360766 852379975 815072370 978391758 460364442 584465111 703647234 786292154 198785386 966773989 729034231 936774057 725475914 926443662 338085070 834800555 431595797 554091782 68326620 539124536 606092756 958358617 384384146 880266264 342454055 862314133 898220550 976012775 589651871 881077424 190642697 280793357 630891698 708534948 163696774 918545847 411094419 519538242 43237588 196657512 225435916 249816833 153654377 363503687 425154367 838397878 379813376 820372301 949406611 980676880 805076335 869706194 107868578 555341818 88751272 830677708 41314868 961540083 416925769 942887401 960332261 970947297 75165033 188970134 743865913 924354023 159131826 950980713 289342248 493495472 152749313 518248921 598220167 752172388 699413909 772408565 182046762 787655763 450057635 847251925 325333436 734340395 246877757 314094500 569493277 571626658 533224155 540323396 102590692 137045498 254383044 972736486 529293312 538041550 243284872 544375758 921008525 991253185 617619351 817516746 233473101 399156070 215407860 342660485 456952106 850743566 803341044 840023155 931220264 952741954 361889358 366367477 498592476 995553383 581752454 616291692 440807528 600694197 850558122 962636543 558130937 872925704 714282400 982760447 310872508 526237820 317736032 430778311 52862740 485705116 741325336 774493564 604844183 791865404 349101953 797953704 249699024 647512877 215839557 589923207 835619572 999753350 64811390 295512678 953005949 975742200 556619281 779052677 702743967 989918841 765352858 805136780 362821150 758745027 683978807 733874976 777297105 803176885 176762475 338855527 30784073 323993475 11744682 171008086 974427180 991018258 308784243 577310835 263795534 804733452 305269989 956035185 438755194 767538762 746085180 966955786 908482457 943796310 490559621 718592340 976723760 996863387 23271212 811601609 872723225 995370782 321315112 980855807 546331583 738638811 716951431 750575891 68282168 894753993 831764254 943370067 448507812 707537466 906185114 963788312 791127374 974795990 448435580 456651963 805736113 855784872 944573976 967267812 949823330 975906765 421995539 738561033 441033923 959831999 762489586 948349669 18031425 512492836 284790439 419773250 814527573 868934044 333324741 656493851 224835194 906999535 621272603 923506057 942152557 996115825 170200146 350800617 841933414 928765073 205823733 642135831 777287449 782467489 182297263 688877272 52983693 558499183 142975639 442112512 758549317 859477566 946025249 969713213 528135619 603648585 903477601 927775308 566077825 580698055 291544588 564900909 598644426 667602927 99344707 306867927 570093612 608054910 572989663 762446966 298635335 302440410 234454431 688449292 706628348 818879751 765863369 894706396 44076279 532430190 954991555 962124715 631060914 825718944 242345762 786706321 712568777 989494311 725084151 820027477 564614947 990324420 14750630 875214978 368539410 762223478 408102484 696604151 593121557 744880974 153446581 680749799 747636182 900824717 816632776 916243283 87213196 749336124 673281259 731045682 58686277 660332275 591688975 804155591 513740175 995533489 889867284 994213751 24968403 919450582 354489625 886140559 887648696 989135165 624228221 914088509 148542448 290235468 566141580 595039794 902900090 918822212 875634710 952466511 511128978 616313066 370400470 768261454 111845678 591979031 368333034 813991883 806529991 920556201 515443385 781036515 886173863 942798240 922342597 927286507 726580141 734606172 341236135 524422168 145102719 611071182 569911500 927190079 160063195 375190742 248837208 927184254 531261947 614911105 921722748 973068365 961189742 991024540 766906727 871513776 175977297 560480835 181800693 713132092 547799432 746586443 581330921 596969787 657342039 707161139 488704717 802623847 8094052 703593932 7247597 858244383 931124976 952280953 864673590 902107707 108049535 646118465 148602770 471693131 90842395 604057988 925974930 978869034 723919830 965126085 129382766 740693585 2163123 768587092 921573947 933612715 426644925 998194807 662324698 713277439 411732564 973914973 610868051 660275421 781723505 840012583 966034906 968499999 945654688 987481100 321687964 983436759 226574384 766265407 923740775 939225091 504487659 999267867 855236041 924646992 673972015 728205356 680671769 960000469 260897936 793627348 91070705 861267049 761831435 788931396 835491292 968961082 248244157 340557512 452954382 946768220 202049032 246433343 81000271 508279520 558003795 623933668 25143801 325074332 526574809 831703133 50437453 837681394 813286934 868564743 989339935 992075623 207528274 432814151 897530431 958535311 847737154 903364073 315094785 718566856 609607055 799096890 940725847 971577222 286198626 932789655 519431813 743577698 342078663 728376897 652016848 992765058 730030203 893860560 250455559 911122333 131090355 201890606 10190826 254046932 375227491 421629493 762330720 833078705 800917761 990362418 422438078 700830387 115490966 254428545 447071434 638836297 712280349 991046173 284011980 640465536 28044840 142742917 843042361 978067182 786965750 990465134 402595077 806915789 117009427 749677698 178890535 413232424 802320797 962766365 333251151 997317178 245342135 881514904 942489721 985877826 53983024 61647225 946499684 953736912 81749529 322049695 217357222 735982570 615928401 986179636 632705454 820218970 330341822 972880466 854718880 861892679 415206194 519973345 988444165 994695844 719530453 760233767 265900171 460355404 421796513 647077085 833585740 928999427 494965434 617789341 131272612 888134311 897535662 980176256 34464736 312833168 576925910 913359209 529876931 829936371 909815353 916408366 897225357 999272730 297984282 372166206 972951933 994834357 278605771 848583686 888802844 957174306 692347854 730207625 685944804 793682629 956123675 984238979 66346548 444103362 463303681 619418981 491557918 914361695 560087964 642330284 323309962 698324355 160460128 298098170 777457255 963102970 6677344 109248945 13205456 168780666 145433983 545070094 32439316 594404456 364454067 836688328 235380801 990780790 53974598 538633438 401903125 433027886 820781398 876901892 964765895 999882012 186022258 358510783 229833591 711215653 727961771 801799149 362102405 739333371 679550118 762075705 447274944 718127786 823473528 853487468 305809161 747336322 286629833 492100688 235613055 395541525 431259747 543006764 222567207 413566505 519597674 521111938 599677524 887925225 992814986 994085278 107898162 630568061 882154620 952652131 43968803 981251944 137296126 360922360 842859625 877645433 451495699 706517411 801291697 875456778 608686079 707501232 234765910 636003410 530458506 683407640 68713226 500268584 919637229 956529774 680103361 921952466 287597886 745386357 708930660 858833751 816457090 895107094 989358583 999806463 687149358 833268201 53800968 422429073 853891718 993442321 935428570 959885302 216066664 763996486 809155376 901664502 543442991 843538305 442152836 828864148 961247609 983390299 941051199 965211774 44535094 577141403 880363136 908042111 236559926 319324884 560508499 678919478 510315884 948707877 906700227 953637799 439770488 593180815 250496137 929391743 416004747 843421648 586910374 878923107 356171969 892271021 328615753 917228318 81498555 101047388 770313886 866072264 407488857 526020228 696136957 848919906 592737060 925587199 945185171 987280571 9773933 284351329 452517112 924184961 319141335 423374597 437962943 751611854 492236488 563764036 165597682 908614913 720916475 929848365 567344634 947066129 434230447 949418285 978694720 990591306 585652674 938764098 81656760 942258819 827893684 954032857 35526857 152142966 446424539 884987645 104850695 132894369 428292928 862537686 487906343 998374131 289701587 387714078 222479123 686907015 945989166 949708969 573690371 940615062 13649641 709595472 609861671 678773719 676124235 884031432 971173536 982258501 446968312 839088125 519416488 615948702 282167100 947123212 551758982 567549825 431950077 493170835 379228704 540324366 245196273 859797101 468837752 796103044 33033557 764253641 81682658 860126940 700328397 969201656 643949781 908435572 660287822 848345827 201467667 940474034 673467983 927560130 640197835 997847714 178260966 291040685 772936107 986182429 768280769 804483586 547297741 988086257 628658324 817623791 876608629 921796266 90570033 710827205 163420824 171569989 604879746 814543704 134981351 630563294 360973382 609609662 147917654 208346996 822024237 934925608 747750438 806071751 873585557 940802921 380240769 973521509 806673806 962895907 17199291 60008516 169295837 922351765 303506195 425662846 87004451 728929518 365528723 555180920 828322870 863077981 571277986 585048169 628601163 685598057 648598831 652027520 923821754 959686952 644744345 949586111 118621771 960094017 481256879 595466361 187091461 288645167 370437250 918905449 329953165 538844144 957740898 966657096 231788781 276244850 297352917 420817437 23452685 645719702 209075161 311588867 433629908 550696991 710087678 794745996 350008299 876080866 559842004 876445982 338550431 584610643 718835413 832819435 77285956 660460145 542147529 581750761 453495604 733792482 261583955 694913945 999427919 999588295 35172353 786734980 780230931 961205277 375852476 714371753 91032084 721038776 533269285 647753176 191212082 488509830 849137469 983177168 307395446 364006266 413682825 639310842 487927242 929832276 217168206 689284497 534160748 548866609 994060646 998049611 269953305 308869245 234006562 864611163 393840293 985975210 134248075 954357251 828185615 916791010 838971402 849841601 286591124 570451554 212962499 472639379 694107465 890348311 150907812 646553847 529258686 738869498 841302175 944089859 700282879 843802768 37977242 744345813 887850265 893555373 186720649 604975729 144298667 915548504 213380767 497038396 608308211 638795182 595717200 996038835 685321928 999599504 740630468 900688968 106640826 937853839 470708610 715695313 39713334 316566257 610733216 995290232 202766072 729939011 954942800 967957735 509870452 649726246 838789220 977310071 265981438 349301072 265807758 981589539 401981942 954328968 99996519 145051662 591308235 828710230 442012262 727121266 992042949 999681686 862887586 953231147 888933782 967359597 763808340 818010263 772136183 833910668 55270878 905621985 917858039 953297280 929794812 948642759 23186689 700501321 319949404 498643002 989358206 990119416 902192311 909745705 122476173 891432203 848400383 879879344 569074650 595662048 391093894 419945571 863495586 868362628 212759599 457408823 663857814 718370849 157292427 436049140 498282801 809315932 750458563 846863986 388905348 679803805 583366385 670955557 385998183 759004664 467065662 697238272 843213970 974402379 186642288 462933187 40279244 833070940 535118248 990242272 837163808 965974375 833863263 878787802 776581494 892951191 100101200 624134708 170397936 217059854 562242983 926272485 875244177 926530347 584423832 927830385 543721598 986772189 683394164 767689410 939760424 958835058 158689854 528109573 901296656 970015239 270125641 724618686 610830461 917249664 287778396 573047278 268197882 761844952 163451106 633822487 22460151 130705306 466547012 494370167 961691827 967109094 742732734 811329631 419143041 886840309 411944187 556652511 759614063 989790166 542918629 972650626 541835956 802770007 300528751 737316595 253865283 852067929 356632929 760977719 783923473 908432432 519087386 522528638 604943060 717667530 778923014 938158582 860258832 982540826 760283979 957931075 405313332 963136327 584770693 806745292 824810099 859553087 591376770 932880666 684704036 796911929 818629329 881118022 913595448 940144236 101472983 170086328 381478788 762189857 380759794 671169351 850676289 972090845 595747577 609161179 571931562 887169676 625637657 879273088 2834456 582348648 538480639 619645175 226847966 519176291 598510797 691188712 19495150 869691769 28060193 435673192 231060143 294328113 291713365 692848539 713693522 885299020 340855564 708054406 886905714 939127885 684020049 756865921 417720324 514891884 858691008 993652355 642759794 794273453 804299248 894501868 866174414 993221678 394087759 861095280 567997334 959611691 336140275 438731290 768887461 787377063 382698783 837660836 32314116 938409558 118998070 458634981 820875681 892041030 674706603 945527010 389727720 712497170 814275763 888895393 655049824 656039066 213069998 493794649 578782561 966355245 22281125 797514298 391349167 823637402 105118574 798014323 652422409 791507694 791148458 866291276 150936832 298151983 972815402 975114188 796607165 951209088 84433220 346235198 291500699 687108249 652349975 968603432 229560150 889914961 392500804 955913756 542446980 771827584 563328071 760256310 107209705 842834151 706237630 951075419 834460626 911318431 451308058 729475583 529647329 677501052 976984373 997761367 119062995 714104334 954186349 961187181 213936512 777027225 591003795 727858363 670709062 945323438 942925177 991408817 817047958 964513301 331762958 378964911 268648486 786824643 379748548 488613621 152522223 231796520 476025529 578895843 275433325 589300981 617516342 804626454 805635662 931024748 277081689 370219484 4061498 471969874 622171659 736208738 747204341 834554472 908860157 933108462 617442522 792273957 134132037 940586280 210008577 610670597 104097504 795921533 757570535 980677446 450137235 926662851 571055305 942610759 720066870 749383875 964395554 979997693 286628664 808603284 684191854 956594606 905040778 983665757 572071519 660771276 653318506 665182220 979212743 980636883 116831466 652816531 71544273 489443376 171165352 303438815 488192595 813632100 61419037 560009116 135467216 477869194 465960046 521508996 618257949 732916383 133157150 224200958 732838522 936985907 35462574 48623250 753223969 891749006 692489531 706026498 276815414 954061246 800234798 836785403 337623165 876572153 710456702 761360078 21382042 543280231 610745515 932799009 843540525 938247487 148996688 371121737 882882217 961955864 630378000 694656285 823238721 964582608 521122736 849764896 781245257 884162664 673109083 837168464 248729255 611125698 486099394 819794592 441882294 789415336 921576164 957549352 993305573 995847011 255218396 409042770 715341174 906788741 140897517 908703863 248939246 467645089 121015861 216342966 884163957 983598472 618312130 893979487 459124449 637996416 662555099 942454105 987344337 990046209 956226445 981953156 955574696 977059420 626821081 955146954 804553031 879359921 418949519 450358171 33494370 271413456 351404313 854799890 270889094 651992461 530857093 848399829 693776577 926523543 282033678 896066859 354639358 891915817 886691950 996338296 389917155 598598111 891341790 995337116 780851350 898002969 280798868 975876964 328274824 403053852 300588299 839319531 46552036 183133764 393839874 581772161 248071710 531106260 597519013 698094418 425640209 704168128 704938065 758617339 662823965 805664854 27238891 720089877 61515009 469420277 226720032 562012252 138809295 793186755 781019293 922973911 507616335 922004032 457513204 665056863 336127211 911965606 850694004 972682806 906038880 942214312 293947755 990336015 620646204 888817321 271671622 774500812 959125762 978151911 112850046 483987470 182386398 669084974 937899782 961419515 975768366 989453511 573991123 587468920 666001401 750300423 310852241 807395157 88353602 941700978 18877920 889856511 623534037 892895815 309081702 316728166 591903081 730029026 166699314 416946833 741811427 777439699 182621083 244342018 57934835 874655369 320568861 427234613 645561805 790144124 30409845 903199885 349311407 859058096 386018413 909278398 121575518 710802941 10531655 354778567 2446604 351230035 683298776 733508125 249849499 860241348 3210270 694132351 652448170 871254477 633136768 665104118 952823850 994074157 338617284 936973657 378120116 695424654 970079787 977361781 530398272 777329626 679678620 978284462 916512095 982160546 433137413 515146133 14036288 771479220 617088312 883553998 965970858 996204778 696004053 923415682 757269071 873221338 873751428 977017398 934317582 975517578 927973403 955495893 108824267 848719818 952579151 973345054 991787117 993753236 108907915 965481959 333245216 952897954 621775894 867738990 377650885 635880207 229274027 793938253 876367576 909725010 59668361 575341699 333164585 522323451 467135196 667368454 719574928 899145587 768722218 971658767 861820847 875021470 944304400 990826439 401672054 595982430 635948068 973135907 425890119 819566759 551522520 812268543 82201859 196159275 555355461 933936508 64215876 724146827 755907538 990987222 889830960 987313051 461865319 757627164 990797064 999962084 658823086 986216726 731281835 894510334 507135722 558624917 100865403 441039320 548725843 701747221 425801299 433420658 828673919 864840686 993824574 995388540 227213214 795034326 488502916 519096909 467081242 816081758 603565294 619226547 911667109 937285352 860059431 948114781 363195399 638295924 976134871 988907102 852608811 940012124 700285438 843435379 13911746 134087680 601924175 654276837 826533462 839376227 294371519 503210796 519667984 756183310 95876217 791815208 638748479 805246548 702566782 838292811 102790808 656955401 52464666 616552858 330377943 382725343 906506296 986293008 653129391 979941061 500715249 663139316 747366354 998840348 995881207 998375548 518433655 770513001 668994925 936486864 929747141 981903871 606954273 862976838 514811250 948951995 969776570 992554834 575165308 865847157 948138360 988429698 128461028 380987897 593689435 660337651 824364125 914993166 618105172 963359308 970873099 997723786 677965262 902224955 304522578 770145236 463677788 564448710 142002519 921590918 616526069 962557080 49353933 674445164 20098240 463025858 955766163 957374653 630115592 998790001 948709920 956779532 520428042 757703884 144218099 454589430 287853851 512579809 758585401 980509410 516480527 524669859 550810757 947911858 512804063 705954237 371377966 770017554 69153847 268696525 94395003 410444054 502486838 935184180 597357584 862940729 924483355 970191020 265478449 959522092 961064409 967110515 512215444 523321091 552150076 856944201 693443521 777598401 162147837 345685849 722530113 935284231 701463745 876329254 505483272 526151130 652486552 676957032 439466748 756612432 485772397 907816685 792303598 868933043 947462113 982149520 941176630 945007442 413337745 773989144 732312990 847582998 111996195 231440933 934320816 947177088 231366532 566153191 770041779 875294140 267840342 490085018 495473426 773263963 205456151 703651409 316528784 660890808 756881352 991710326 367344389 981892188 937401538 957838397 889272317 999804871 581118011 896868282 450359548 843954953 59125329 636371289 812034282 902339897 551956395 600230397 849437747 887774217 639402653 639764470 168562374 560494978 152348139 946974756 212431787 270108756 49584216 991058689 737648214 768863512 465051889 992583792 248223110 512032260 325927374 723872519 996714619 997926825 107003048 180690074 292591180 388706071 836744725 869155818 81695364 653120123 417545929 872982370 398594656 863942737 540044688 840183101 781105253 886924198 385759862 447124498 14504451 212409439 110543483 544151670 18233283 593245982 891466337 923742279 642261550 981408580 39268342 475049752 813583111 947495305 911550607 985913289 865733189 885135844 782536604 820118745 15217241 480472037 445008721 460230400 395125469 575106689 279550510 484849392 792299525 870784941 722460567 961473616 638185327 652804077 202035597 553110968 296152258 436386272 891422820 923968715 589094278 767490577 500192499 613653213 830682955 835579876 303555475 883168867 82130084 592628630 782448742 945833643 951538479 968732742 185596521 868920933 740499789 766804630 488517958 815198533 440225198 794089504 252755331 533962912 363441613 777496651 517179132 886915537 14599328 567231283 356243022 584098800 861973544 920048824 968674309 983628165 938268051 985873094 899908588 930160545 68896704 788168180 231420245 908500192 383445298 654356279 40111710 41568539 370643681 540605680 34763771 662280985 881140507 933421566 456285292 743554258 716213462 745943004 393689711 534487648 717122114 952053730 324169038 953613635 489372142 725813334 152749242 268097286 519393753 778205536 46930981 64273831 613976098 810272582 502323364 643624619 694637194 829667272 621633150 758457521 910544263 943891699 944593338 982979240 51747408 887866566 25480251 370663764 74204591 397780001 614920256 842830032 502698405 766196327 148497830 410541948 860478269 867460385 725442839 851218424 662308879 677707289 268332240 700039330 470340385 710826140 23720473 112019311 737700026 836572791 648561090 705218446 172327279 482814759 306803324 658218347 87568894 90896992 16296689 173401029 152459513 526488279 553801010 622306871 456195597 676781647 460129568 559724668 414869129 734355203 940466555 995359520 156912024 761659098 133227535 283942054 220657095 868634032 886587656 890650753 450220016 904920150 659780006 979524028 366269824 449193151 662407465 848932335 382443040 396970899 442262451 508950374 85300321 748707857 234585559 271404489 27538851 328594974 201075525 602475888 667600862 814748780 309660573 779949641 434686105 675915742 317170286 859177275 987952361 995868997 872109181 902160089 405722423 766232448 581345129 822968912 679669731 905928173 486445039 921143407 30559924 77688357 190248673 687395883 557041105 785757353 989810709 993334661 847723631 942130120 457637897 714121757 518048440 777063956 167658098 203209275 946415866 956455968 419470479 594645644 132527775 193512422 114903211 505987064 747480988 917732024 58733485 993025564 516052624 764011848 387992786 940569745 936251825 938084068 702279567 988629491 436752696 676691606 232603825 338630421 953262249 990696830 161943655 511234520 491766171 605337158 825015559 987842180 133456085 957782181 289947208 451314298 178495585 515288906 759652918 988190377 590691652 679331081 608674863 842475094 9647335 430203529 520682608 734644626 440787555 508209781 569686382 908302518 765431730 892414497 305360055 307588227 997154497 997655136 537487699 677446558 657350526 658765589 900070827 946294522 39200850 683717300 341868387 484621096 70239022 129753036 837546547 962278948 700601621 810991005 598866739 962368451 139828076 636254005 432773055 491269219 928556861 978556099 50005884 467204384 504426896 533127309 850911227 873295684 343570444 970812973 498568411 819247900 619076762 655038950 669823127 847669007 913731987 924914628 346968675 409649700 844753601 971197982 129071906 325586571 283066718 848138631 677817456 923545430 211025086 343018491 988860659 995004858 650145787 985121169 803336750 826892267 126845376 801304408 618805975 697958270 824544278 977094018 64264608 199433142 295688963 417735592 253232107 530530574 221215856 966715087 839350980 853297595 877179374 950757161 351643409 565481521 631787958 781691473 986478680 996430894 766114889 871157001 155647814 487133095 572806389 686694733 520295259 743143557 565619164 807064760 903618006 913246707 907077583 907499492 37047186 686605554 500163379 862876648 295763055 456860468 486178244 496750936 122581996 127792583 869485105 905532784 783012941 924398700 186994503 214201464 769817234 780244368 894404356 925006367 371839484 478420967 927873061 966753150 596384208 855631491 840561739 924066448 602828493 727132496 821459006 989072037 201790690 277415020 918260414 989944154 313566856 967063459 102275428 890651878 703968310 756746670 574413523 678306591 87984585 303047675 927905525 952286523 186730088 420446327 276073970 885838537 22265301 289233054 669130582 859935063 725869504 972759387 426479895 643978338 758490612 956850846 229669618 442967261 69108450 868328228 663245476 927841647 665849447 872217753 191148131 646801197 135322225 319430974 913952895 973273788 576095031 696615912 701841712 763003658 407509229 451553633 459937592 904889258 65298632 416006143 571237843 814436217 317153344 686391111 477039748 694038407 22635648 487266647 879392666 917278242 96508455 429684954 250115252 507642398 53339635 502624732 570025371 634382427 253014248 616958645 158875593 820895108 40248691 662239412 421962458 665080484 508062518 549109562 145151079 666441201 556232709 962517824 325865362 421387595 791391327 922162059 769419006 954061736 167365188 217425239 172914282 808196098 680587677 850606826 743790364 882369500 582444376 784827523 205243801 893417381 566316480 706140498 264780359 945961398 614659204 755975029 59535790 411834319 929507613 947832256 578913351 826889529 967696280 994500773 967733692 986348257 240163241 693551371 23046554 223579016 928982628 943393688 342175802 957552722 653232894 661093427 424113413 758831110 179581015 213146481 672798825 902291743 839633568 935142967 715872624 783061334 902657314 981058036 428038729 495307116 618156795 940648398 135761108 581906332 237250598 852231296 299053813 602335979 467301549 811372502 804061921 831105102 552847204 821841386 932547902 951151081 449329601 498713682 935802833 956349598 105620960 840142029 99302790 132082212 376149156 588593659 273958986 664701578 623787176 756251879 335589698 866532311 959841806 985106540 861224472 945194619 908881403 961288157 985594665 987123692 853389901 906054073 204225978 443755973 310728041 843325089 247758527 286663392 29437636 166855978 204314409 848465855 54613168 291914163 915831915 986063745 160837789 641105635 544922345 730708399 243343999 469047242 597756234 869241353 940044869 957038791 586888934 904492763 421460635 685298536 387010795 694622265 376266501 981218831 142544168 777807514 95314276 833923549 693474525 979992850 147439599 345728379 629694714 829270605 335282888 464584444 343599219 720457639 838796544 863610393 190826551 998251834 395732493 778462857 155604467 862272182 622538966 812546806 212157674 388807362 576970236 598790562 869438477 947036553 483737875 549718511 104255933 159618814 330675073 601075420 19301769 312478164 549751115 669814877 328667814 929648874 119938187 682154494 775555357 846282899 8066354 104892644 637425662 975728735 657534855 794562490 872176746 905130661 812044530 907142705 382640498 593529784 921055142 946896189 290950603 782710032 790870127 805147351 163659866 286368350 296827688 637540272 579051976 832593238 135490541 492708271 796192757 891433711 404891041 621407941 542619728 562450646 564978716 902403027 442357042 964394443 591091501 703539164 922338468 953236183 256720270 843850332 457111908 828378843 959066979 992325061 331543890 849725413 19505961 232557763 929018868 980797250 377441045 594080963 276142926 944145806 248285565 399145263 93337239 973033523 943107897 991901695 696120891 865870308 660642908 923195370 490855393 908948261 286445801 295560306 60098335 660199775 942223780 965640459 278193333 414065473 40117657 280289945 687408016 926266091 400907079 696035976 105006918 640687521 273395446 796719622 112381040 335449362 132038507 480839538 977676583 995944113 306425030 936219983 502142429 770009304 148728888 212319124 828121033 866512775 525813154 716726173 787457839 837655755 551701406 716340789 946995072 948755316 694748074 994549357 709734909 979623245 533509273 883891960 683756915 702156763 327457990 483230778 396792745 607256338 150578320 811458745 14666271 919376040 249069165 656133009 804642923 985269433 656456351 721659582 373099610 512163888 344557134 824609135 499127897 548333924 883691162 968141239 664579764 837028135 595829028 614226491 997950805 999522533 18319907 204987596 512300453 659923915 794448681 874734909 492696338 982545777 609694992 979803684 517493508 685249129 970285051 985918637 578720061 749157338 632357908 928517306 579871336 660324925 595654797 993901712 894978316 947323633 862367923 929200654 175306943 810632003 998656469 999837590 398550993 555518701 404289984 547363354 16442198 890366014 891166562 994640708 589059929 593871188 378309920 760160575 601215855 831446064 650538765 702422892 901999035 902442013 297865162 436456144 181629508 774096478 810550422 956750700 858396729 897917374 720761291 998171371 679476437 958311621 43714263 108974142 243991054 473995215 97714474 395960090 123877772 637728240 694970224 880782684 833925438 912825810 894630817 939871562 184868539 570025379 983619602 994676915 876016517 919962886 239102857 291548546 781717264 794856751 390692471 713440965 598773077 855651484 708238304 927365244 842104232 971167653 771802030 884280071 694070993 809492362 344317342 358841947 444928672 862656486 185100083 783060557 289934222 327941948 834054287 976004081 579787100 618702987 159837238 937406735 850638088 956273153 978493133 996777688 514749418 533594079 770681558 770776216 288545760 662739898 661773305 746311173 939414697 958970761 550724336 946176377 978725653 990172207 128016979 334866020 693812375 863324272 44953712 997493048 491164678 770415045 992512709 995678339 776752377 936777720 994064171 997772606 840974935 876991713 877718090 892380557 630852514 942843857 622767545 776294378 54206394 786239271 274866618 534428017 799299631 859101836 451345318 912796168 558838008 659052087 617564067 873443029 115757169 184525169 468005421 933792683 285331616 412909363 385476631 887438794 260951387 843769434 682170061 987573143 352267805 932367776 842697789 932334779 837901305 839444590 740371343 809218724 442253328 881385134 811346592 817486983 547498470 636392945 543316996 873657548 348187434 824154344 290134307 317339913 891532571 954737056 115413574 691815044 613833189 906046828 638542242 656651354 199816561 568344655 479638256 512875361 494757467 591213679 836564361 873419406 261782081 615493496 228254698 789774183 2576692 233658891 104421443 455607569 291273399 638127325 460538744 946506125 468275294 850938111 725446559 864365605 599544448 629770590 821189147 919090583 239708202 702937035 823569553 933783635 912753466 958466083 919785878 993642919 292550678 441789453 122562144 437074307 719497990 774197940 543296628 583256929 608235248 650297937 639484882 998577275 785568393 938784758 502810716 642836408 417037067 973606600 687130478 773376624 435622501 943428221 225029009 589044413 399943086 762155832 286949533 518330932 396931320 689409724 146329802 307022511 353792955 423445950 669818244 876449549 568309082 755289921 160306130 295655642 663490231 797544853 884002725 928940551 471226305 880701751 940822955 968761325 937765946 993593013 197364019 912978482 207306231 777884631 937736336 943050887 841291188 852950966 310538554 796016998 451711413 959288419 739608763 921063494 833365140 839426144 770585702 826143489 448969267 877741967 93386526 545896934 581912293 798266411 989453172 993381208 783985708 829694480 999152807 999926300 328709807 685302887 618814101 880617771 839487220 982587816 146226559 855127453 150920502 706650060 840023725 914728843 689524527 858909327 380861128 502311671 248121990 673356004 240285906 607673509 710225280 715821019 648671789 828290755 627351933 871506921 685688896 803429720 389722027 862071086 560922663 866892516 50318379 413984277 494790268 618351959 789558292 975093024 854809184 907324235 907050032 908403663 710593133 943964741 698927869 809538177 647039942 778402155 278711348 818376008 864098174 879345110 605031472 877533282 526012067 603696139 856263286 974692582 606198667 866284513 184866354 896546135 78915276 814170556 616705911 848497412 603926303 667691857 201463055 807528155 749177896 925147627 681625194 836225058 983570587 985037764 741626219 946687812 665188340 800972422 281305886 352321092 238493096 794733058 662408385 763667743 672239896 729547884 456737125 553592329 901346658 961502482 960732880 972711313 753059308 776678348 303478363 867102793 804409411 882316510 510466428 975194781 485379884 683803491 442707477 847338213 486742006 812227183 538718236 658106068 110852936 913509840 609231401 638469882 719614293 756886286 764398287 977992806 971108383 998568658 809013142 978303514 922330635 951487395 412654670 961179763 911811032 997314495 46593342 751188146 209999834 704016203 413818199 803389394 288630915 540522134 981073179 986171875 371132851 462004492 831017501 909805976 984956319 995604221 401071861 649386724 853601272 904313843 509926163 520899351 872866334 886753212 420405950 915080806 355782947 847806312 420066038 433891897 40264487 991538457 678520538 823172545 425749825 449793167 615925624 920272465 352815058 422767255 636499443 788559311 530897720 735053116 948640428 985547597 642372702 933230501 999451382 999513069 214264605 651429318 828103609 850782110 760427130 858746633 765073808 831570503 445538103 685563293 774985611 894382496 839481195 892687970 806700024 876756322 7003900 825524368 448608486 491499533 834759742 852338318 704142180 881355927 13599731 444914895 225733343 935154643 299124515 383960060 972986707 995371061 205397156 286715179 889309755 975399279 57461126 100170479 551252372 922170540 209211528 757047611 67011572 826604570 608336097 672102349 827788287 860108744 112160705 971713563 99741287 877820695 659459431 882662748 374386057 475528531 806883203 809995013 814873035 925874966 598073642 690356803 888937678 991433143 316931871 655490411 66998250 388207393 798681300 984870331 394366798 404882604 585806428 767466764 769013384 925260302 740581160 925957677 447874718 829225122 59071943 606157684 216754583 449456563 422559021 557723891 202714745 474176893 863175739 950741986 356136174 557634140 481714124 483722920 198809787 364480811 310674732 799197067 719870338 807882832 462246200 514727624 574648436 976091023 110243914 215254851 974205828 985597171 277483695 407238875 312618774 511303169 11538006 217033478 973057244 980933869 690190226 948124855 170173138 912254054 753556633 874011116 426922093 806780074 465144774 666391943 962787870 965456762 664970766 902165659 983578830 992530630 362310281 451580708 632449029 856034365 450247806 700238301 671953900 873084792 355762886 529572932 31314349 656497320 137922012 242993025 378977078 997065976 10973817 501680304 490328851 964260757 30454465 528114377 307556502 434116698 939469817 952685462 17203792 533698388 230454598 927649464 903733999 907358894 566163724 656648548 755873479 845572754 487461230 703102033 794271072 805459419 361118080 538080711 271641204 780803918 656455187 746383221 899694934 991215066 625395622 627205005 330512063 414656303 512759026 965016682 859960478 967973855 905537521 999902489 265396442 919197786 552298913 747887290 103594095 127320276 334907160 352864253 259785726 464649074 270893588 688405906 319131432 725890138 918694673 995372723 617187594 751340209 910627776 941678518 874540534 893584952 230399320 980873558 72703907 789688916 483538812 969934935 812348830 898574322 900133185 941272542 932500394 997523014 462246367 977865152 225270734 993156346 432999832 492367960 635870905 651869918 276339434 452025637 305591262 933436817 79022565 83530610 894238537 963800384 341258746 871752156 361995596 670613935 499855926 544514505 193464272 379183919 237488800 358891770 701853340 745935521 769873684 933491160 557156719 721946334 455484372 474113537 527060142 615317399 564740006 761897667 320626801 957250498 368745328 759867260 322375948 728768171 783788904 856024741 939748456 959250793 322213580 940235726 138374944 807796848 492466321 706912504 625907190 924184813 638887615 974565669 145371512 722838043 141307019 617689316 598220906 884067624 148583639 309758007 787333787 901253225 248905181 443802857 390165642 583296864 173921219 237563808 921117603 930004904 196669547 430619760 708689277 804855744 600086556 634140045 649727324 720806881 923416578 979240279 189771354 596417375 690746916 827590286 828447528 856492875 4093486 255426384 919881506 984772667 985946756 995634149 193397694 617464405 960729540 968391224 92864925 684823316 60957022 689877142 262847853 782181020 617602886 660731075 679310405 763625656 72059435 550605849 482546754 624643911 808533741 833783269 191882177 605316838 731146028 735935815 312830172 724991181 645047834 964714288 612693244 863887351 181284708 498548271 493717180 771732235 435700461 565078791 727556019 789429408 14459369 219735770 417795663 756544208 794544636 950292467 887654915 979503412 383754708 580665336 684390443 760044709 512759379 988318930 658720136 714423118 439202182 567714601 769135028 843772147 572492073 846051716 798654755 857370885 757045824 958782457 598293280 635514840 723708038 819217030 983464695 989479759 507919136 569658625 227408569 480299004 355103384 868572941 698639337 854611507 501458987 821358275 453789859 521196845 491720743 608082411 787329542 959993456 313703562 406870473 980231112 999341080 684226281 960372007 752675973 970678099 489907384 953172558 52631312 641298963 399971128 802920939 446990275 550862093 807310781 905045357 345673189 609980653 974535212 979593726 412833233 959393540 390489147 627742715 847023634 855581755 230004679 676485373 314443518 882352344 659886476 933905184 442014262 647086940 477338900 737805689 466880357 994688279 178780767 533238219 769205270 784679717 437955915 685346241 18876501 730729226 169775004 545858291 117993791 563459200 805598916 828126935 56300705 714401802 320732885 962826912 227777297 463324615 500334455 909823992 84263892 619929803 735504722 802230578 683858877 824769319 822865453 905418583 350543783 547078753 339153871 958863813 524970591 695559225 835378441 938116528 988889475 994953814 655098967 659344204 32883778 614950693 274042863 713464427 755371441 759616116 311894887 910968710 341324444 696435586 614607340 804660859 675202764 766401931 405765084 667777102 100406722 581798989 887780196 950095065 182444363 226996209 184358542 895500374 150030266 476966946 61300102 350761160 919772807 922961126 396500963 528407755 91659365 917855754 731719378 749350912 59429830 434365374 207062170 750450611 86929662 121455071 856531067 861084068 928525418 941251833 922337351 942828387 703476401 864832823 773136983 815975562 179559979 659592709 68532402 644704819 524280421 872141440 711977294 915611263 540823188 578338721 21551912 299009762 306039697 758082859 630308566 705612830 583881469 883020792 127789975 148027012 4679353 380039486 426830552 694864369 406276141 598422208 52466990 62339184 19172393 368759278 843195862 901476644 386275654 598762995 980965765 995544540 454355657 667736026 138038492 177598180 265839589 603005767 495130721 880817351 729323348 756893470 161988183 490769249 460143367 670971904 626403540 868426246 643694154 899196800 934542678 963496024 73412427 541320622 295660780 361916666 941360871 941622082 33969559 741104731 720348248 749198645 131730910 673911675 541256170 969466659 537213531 767008999 268149943 296743257 806382211 977142309 656607898 664773440 508173290 761916116 577307547 610019409 18619654 674823379 384303421 711780858 894869195 914218945 68453586 469438965 327613906 915338012 494524875 715735340 60035303 201004572 626464658 984773071 715357100 785197451 610305168 726081544 432101183 865981357 397520962 714691222 565501848 670805494 368903724 714144765 656372731 761768964 297608484 316380342 836734939 955650459 701570584 853843258 211500960 386911831 729473446 876036933 829830314 867570921 242367249 918471416 938578132 980115175 583414808 714283218 976585970 979385933 53001456 845621412 487990216 739667916 786676827 833666089 736756835 962266693 969533656 973760464 151900609 298596920 187936035 982902949 283198437 550714101 944960444 995867980 252617055 437957513 117578100 990143190 525689961 679372911 587456322 940886829 751001754 981284502 753525737 791346254 345181505 657042926 365650619 402109381 71037083 250912775 277332641 953232481 920698267 955057065 281598869 307864605 267588392 643234266 462386976 501319558 96905130 525621365 208395833 257290121 414627174 438565527 603856434 793994426 600450020 719518122 354033381 617065691 139046023 186943795 626605315 737992103 306570552 625454026 776378583 954283268 726474138 787405401 336602615 565802848 4221974 900129081 666278832 724503491 264328214 979432175 509327714 609872730 683456332 827132551 5402895 575069661 474489342 858919183 96729995 384907125 477674459 761404854 42958925 154502447 290781245 967305193 43864921 671871708 272900539 801318299 181677555 706432580 116819403 369917461 548513702 984820529 33710662 97414779 816651246 924604092 906009619 981915180 151008270 836175316 842592498 873437931 615782298 929946022 644150834 774513089 794216204 866824639 178491645 458835088 807668873 977076930 143221349 342344712 791666755 838424636 675967110 733933132 118497528 928098354 169461163 458249158 498965392 833651292 733018476 915854995 150268089 712317251 93994448 172418331 843123055 908063428 970952042 994008456 261637074 965608708 381284667 785821603 822196744 929502931 714745557 775650215 72304984 309969097 486957723 975922243 977348334 978135109 413311373 597145277 254975618 291292037 574073684 759034424 492445071 952663097 282468770 514840161 540946285 913930050 746240605 988587609 454173076 697523732 590432072 862812206 890430239 915320286 528805086 660862662 744148084 995188201 785355476 901776562 113962298 123726035 382102860 564646337 304688665 913462133 29993754 525735377 373784582 789325625 954843761 980938747 138321587 765322197 780277159 795710648 844402351 918237658 43430702 476474993 750769980 967251591 84943872 825574581 341896186 435321873 242754403 838827248 824368907 900329745 717907927 818701326 299579943 855657293 114401193 765599336 204455855 897033771 262511819 840473298 962620127 966908012 981628775 990244497 88479460 493604574 584798029 625249121 515231527 607459598 968550265 994675821 912290300 944716150 178708662 411335093 480795152 762292087 871194745 934348724 149695784 427804755 574457617 774852677 627835586 926523487 136065362 762175239 57475135 375525667 49488158 492971458 470918092 838457585 469547414 811663281 888862501 967584212 667437371 735412236 209989491 619668093 450146189 733355974 581130056 954322044 760176919 859070023 319572446 925923074 951687822 997471407 330313470 685324253 761488911 771368194 528124173 862715241 96776577 818235721 812549338 888985254 437627841 877533983 340836917 809164727 822432444 826218288 67299087 684425196 334958456 653177444 950820755 951669349 728849194 750619520 331675765 513282696 23727309 716642193 275266316 501154334 503550350 792659867 758278240 834910851 772498853 830948149 266654914 617290496 837227593 954801371 981878124 991666917 447628345 583927430 328643605 547598282 430926659 783470463 497076811 568084601 71054307 294882094 979790710 983972721 227681307 990276194 528265197 742841769 318580512 427559426 507533558 762288261 833671038 840242628 959768450 988575424 941602045 957079821 943485765 988517985 450156436 586772136 726180310 835965958 131733712 627029610 191969843 531209732 78677307 545807738 223441055 631734173 685495634 965068871 949755993 970410630 134405309 273900331 26178886 457896808 643494190 921232211 390838872 861912307 418968895 805292922 111286145 553669431 621982647 649832652 13611841 632183361 593973003 633630637 282545899 459290665 291754214 812079356 872615499 939361355 158429821 550967677 527454375 876997927 90752866 94575160 493635111 588866325 705890586 941621912 24794695 935980316 97563361 610043722 169680690 529066514 663417291 991163251 269250970 661273387 34552210 419539375 514957690 880058163 582568054 923336289 459708088 939049642 486597148 492183997 31696583 997472296 528723348 990785757 738387950 743033990 922418477 954058043 872401651 921016245 528463348 615769370 243573023 951062646 992261475 996879924 96629138 897055397 26951315 78460138 277788701 821320107 104642369 524636815 569840877 758301408 353950811 387901619 175138602 755497170 608796688 627527846 986638377 990870125 701453224 997683891 940920043 979321211 712084931 869655677 326874887 815823395 951375523 968040226 42096813 235379059 787505976 852341515 779876685 931353074 43625052 193138800 459325811 513876149 445381016 764879251 251183074 748527378 294045300 727093120 847854279 954122656 260779326 650005684 191948904 919865791 59202409 459653658 921847009 961903668 904271890 976290578 691885788 753609144 76320928 956135845 503564105 848493617 60257227 494051624 472585180 827607025 268411182 895329747 111260172 422242733 631276095 632898450 505004651 951203689 584887359 686884807 960364724 997213009 987216356 991209962 660445195 876971950 128027314 635533431 664048314 717163864 859617029 901501702 110031734 120817451 440619888 614913299 920736376 964720975 852909801 895513914 83729859 925683915 766039334 827379601 560388210 562878484 110542324 153464949 570452559 747288306 49956297 713109389 768573945 903741398 689455735 931549941 675074253 690935089 10290413 374562115 407894422 951673402 36016747 943582805 97099113 831108616 186493534 765477885 855534237 980668047 142998796 641193736 48694358 63171069 81445853 800845516 84125032 750262734 118318102 726400262 338990766 985099437 103183668 852569077 847536505 979106569 182842007 505401112 900118994 907696663 525280802 609178325 235924114 482251285 215459447 907888793 215075872 266100921 917276969 941074813 956848225 980413733 30011779 148967745 643410681 743086241 601638600 626402080 530236156 685260589 314882069 520123643 599121283 701449746 296595320 370106975 141184711 585489737 392253238 658890908 321437262 587423446 494778005 609191705 801650292 812693422 590123283 704742520 587192583 831901966 142209289 178529976 689006192 943522844 872756740 905181251 445824261 884458455 61612413 701228885 627065306 831261046 412315508 695845041 22848996 654341788 854819543 971482589 45189862 440449469 636990194 842706295 578671800 579710158 758682364 898360855 958817974 963427751 61502798 409400554 855803206 863557510 181892679 764726700 938257938 975358096 383466283 935090045 448903094 911190124 885339274 895599670 886366526 894294323 882937866 906516718 465511994 798388549 817473823 968947770 499953445 716896132 860556925 908559505 559157406 916951002 146388606 263114876 710956022 891052494 23200290 133833976 278664639 354194651 683449608 801289437 565151229 870342262 785602187 945612287 326704225 927526049 542627743 737344743 781711514 985518781 270666201 641396127 599750972 789639168 59412498 488899675 984177415 988060607 567495881 636778008 725350588 841547272 745809787 792057168 177882037 918125018 864616119 903915966 132268731 237055362 678051920 761623567 599212337 662391279 26076951 143254074 188480810 355539264 573824892 912317587 476778589 950426906 584650315 723990145 710979421 878101662 294220126 366404806 582683473 757959147 855327472 975679890 71476820 172273190 886836477 983795013 333750776 877845202 893880692 900880712 144944319 292281354 149949336 447585115 583139771 758452090 434871792 632369809 856760755 923522473 519520204 818954716 683621353 912812596 608284365 704931867 172232659 732028809 300230674 439747208 499921769 628413148 670004667 932322469 965307314 992065596 875178619 982017015 423739740 604628847 416016605 717685623 428490901 723417439 535687922 696441240 837335934 859648181 3663186 924111472 915787265 983387983 539043811 562270802 422014662 480009550 272157794 384958379 961562456 991262672 130682561 999721774 600809321 763621779 406238304 798906535 484641210 747750485 614510577 930709999 435228128 881703168 424623781 509096157 183529375 423157001 824592659 867820566 309243419 520031451 390591893 697625763 839065371 849059189 817140928 834694747 884758924 980397156 198184785 357768864 829802815 919536941 547862782 803871817 551444153 609820500 637161361 927504886 397132938 414962064 301397859 349852426 252995642 702332268 217841752 247219720 581474968 920148967 370397559 847326040 595964556 689451555 614704049 660113671 397201954 553639679 144119614 567393224 664335252 914800386 105262282 672375794 365547617 414948835 316728766 774791802 936557600 968250425 260314652 710774525 822801742 980010568 852326903 887086428 664830833 962772921 461748192 621256600 307169164 628150488 735284430 786526902 750943955 920771985 344853211 884319194 881140592 883867593 307230234 426413769 185002734 347258823 387504520 602374577 92700765 861997853 252698840 409025625 270567589 876471594 708087599 943261441 708333359 802056996 17290071 285486885 339761454 626390512 744132501 879338716 837893965 943480897 38892694 318201974 467890292 468060473 242211261 261095851 505796492 890217773 359937908 573217958 168281896 207318884 229539355 483327731 953439969 988115012 810366527 824622773 364138479 748494798 241770283 756645816 46714936 586360215 432152332 680595235 285710925 801356826 236630461 374680526 460703511 967356147 442194745 769963582 819663597 835122074 534562176 699369075 282047535 485063628 647445475 927568282 512898681 578604021 838219383 941497040 283145833 466456256 782928796 942760180 864797400 974308348 656714866 775183705 935678908 985844081 667489596 956210853 300650797 541857330 821353623 953902005 674464922 769631241 780743434 977539385 636533532 667225837 565752743 807737776 57990679 168814158 491680089 926632160 278141768 614919305 298184444 765195593 186144518 373097195 350083983 512450107 556595850 755488436 46842824 214881007 346498305 438224035 819746550 901057530 519066728 861700949 765826237 787853733 335126057 952749047 174013605 771952880 636248794 984887933 35592055 709877275 232101421 504171239 380072112 482865886 752997335 838474954 875328550 971954662 119015176 330737756 117002009 750525731 160352444 847853408 397800890 797372309 98467259 693987416 469674635 827471409 192218442 514945721 653014008 860289841 300860921 744662129 882097920 906331612 112765001 851997409 342463701 710834644 459867359 816302967 321858032 739133928 915710330 962749660 941163518 992961133 858740907 929702600 814952440 970529543 4063681 944669378 253223627 677225352 353472740 440833757 703341576 919748752 248265776 931391502 634736815 881164600 620310236 709208891 274922171 817999637 808907843 959182363 198808645 450630088 863710876 905242770 992101516 998714217 935102211 937746828 697780528 791754951 515783447 659829883 484704072 774843488 536647594 548105162 269060035 529632299 133476077 367525587 64652828 459831411 533304437 673488358 202143881 667302038 332532711 394408248 618411418 932902845 928493218 951785806 36421503 506765131 93126499 506183733 573641751 861456923 281817373 857464422 781406061 987934534 179963377 775470046 564082923 574930570 123983737 562307731 699624299 783792962 43046010 555999622 393601561 479325779 640681315 754284940 492420441 662102699 711624401 742305380 193248048 289002912 688680942 826492687 618368294 981886135 829307488 842409776 967317170 972597048 264896510 622567332 688524655 925826019 916015786 931466220 179886955 573106244 165121835 291107282 175039018 257876247 419577940 819092008 365112903 725487312 641350190 872674587 73915960 778702213 548142085 992624998 295407090 579132035 894093432 900241909 729302555 918105503 587741156 817193605 674043404 717801605 247462549 869474405 14651786 50570677 949868513 972487302 513955622 807977386 926004683 978261500 494544266 888662318 935865568 951889123 751489999 915349881 651254309 791909866 265264179 699367461 999964650 999994526 637832657 790355399 472578907 991666286 926991150 982476384 680228357 912149342 475485391 965744587 177724888 655433697 99100664 277865683 591468652 678813003 698295908 947015813 587302025 637193367 655970669 716001224 624518236 915146012 136152501 604601573 329771692 639641849 423556777 427600139 330785990 702930890 739139873 993788866 443256890 562657481 223870776 491345090 385294510 834102373 731225042 742784226 235626559 693850461 607253339 656396118 233357765 638147110 48720721 369491519 747718297 926511839 33687120 596668552 108398861 217263672 696760743 740084799 193481501 719507676 302890769 888554130 426412883 583284810 759682804 884597195 732482373 913638467 226130073 616202057 495578643 719254612 724688149 779303848 962818264 988908345 974765204 997812045 906521436 971942511 615585934 733866159 510134060 864961476 475020744 823463106 434380834 892452185 709416504 765733389 877728867 963745846 849200133 909229059 125758076 649284137 595959085 849714737 783275121 816631719 696395612 988438744 496371640 569349691 625180990 717688068 404574527 596515981 487364431 913046164 190808982 233965231 522949891 989223400 937271496 987188346 9071080 523696845 139403008 411822209 163957436 795164512 474303768 651162206 529592490 711859669 624869288 912976883 626343246 940813594 713577435 962213928 555141254 592707455 866783796 967147962 66386296 73806294 153349953 523459176 134877461 945056194 379499586 943215816 398384003 994887254 611198755 901228237 978195518 982332074 755003741 946366121 50821444 732611212 742430934 997939911 912339540 996142194 101731868 676570952 238476251 294263926 507775052 696843701 973647918 975736478 593788138 718144377 586187833 834632791 774150393 959146418 912956856 926055019 234653251 878521826 228884396 504975578 501752870 773627767 820044430 940449336 25705298 935035938 867499297 949204189 464882297 976258129 636618469 983957952 911426950 973362938 260345623 639389982 189554026 825233409 701047533 716833976 942919924 944107530 403009447 491639186 991575814 991931995 726666551 781091893 886182087 892233044 853345970 906395732 147242917 585492574 173487139 462706894 142610166 846781252 836376391 890924502 422706783 737825386 370490174 700702676 747191344 785180866 174040532 649579204 417572738 931160378 414399664 828025172 301140032 362108248 577660020 844315863 575664450 605634508 219970949 665443180 631711790 918722780 986539435 995700280 419179833 783882222 192102327 296097292 959030122 996229240 186066753 652654490 447342411 570284674 522920694 926087751 493806843 921240980 302098733 489660615 609559075 799129865 429745915 745443491 128922088 972186500 44381185 494648444 459726669 633188688 418033259 980967852 597142766 761517114 391168423 723748157 884247332 924652385 178783430 641572149 482182774 641277842 289129172 509813335 683359075 951189833 684877722 726306216 84290050 841548127 307933679 845329536 408785138 670243112 879697436 937805355 25761845 550221133 587254252 939988175 431827657 824682197 83661440 690848153 476118562 952069398 769109684 944772230 411240256 598507981 963288577 987664018 189723969 630074125 635963526 811811052 722282459 915679767 497138080 887453775 168086512 373656082 656410561 672053952 691274086 850991408 434379595 491245341 147660625 663724935 701256819 728144913 173274522 295006638 693754113 736913216 693698528 878749797 683263140 686368130 97806542 400770591 605752748 811243830 171183608 650643143 390106292 729657306 103826267 764605488 226928156 343285666 350235911 492801984 1746652 259673847 841167264 926615743 602526217 700069680 919889611 990636915 591507408 929535451 732179139 919116074 18503952 610612436 752619530 970766788 520097455 829472472 123504897 701016570 423134474 515667458 630606960 927817625 681693072 890478253 279494939 562303910 829915616 928545975 260820357 569149928 592307164 688941446 981561444 993141018 300165353 791339370 843106777 920213693 864680530 887573862 451811642 823926575 550800700 778221443 772220252 825580433 236845808 899055572 995757558 997307041 99831980 983795015 443378335 578564751 720265882 831291473 235179944 300281960 805836250 859113347 319613791 713530081 801561677 934004958 247675177 616005452 756078036 885327155 13739169 753806329 8954680 487497830 863139707 928016906 393736149 809553672 126882051 734912325 689543575 791591722 394868357 642414867 303458631 919075271 425977179 437759556 512166749 513897625 126569456 899379869 360905996 582093820 887074964 914686551 426990852 563973911 382323755 897812700 992897769 997625899 614580177 975219397 180910292 290780597 38509910 613258846 851922350 902898316 150462219 183703477 954192931 966556814 188123801 580197802 641659133 778535554 972574609 995887893 556296179 665979077 398063165 885818450 282335049 759918944 653328099 920590018 349921196 726878945 164800092 863873392 581126862 676642320 89385369 506474917 386630324 499888013 47312497 318651499 742226112 888225597 643071050 966295811 518923065 687510997 800684595 979624679 402384849 787460032 442899974 631995891 18700578 410465612 642089423 901777680 865562825 931766967 865448475 968960445 611180141 859815533 516595999 975734752 351357905 502687008 892058587 927564069 171718315 250190587 747661951 792260963 251711009 873455328 834105574 891291900 146810153 472309000 625211841 878832052 366729247 923932683 627219275 865048349 182270429 349000075 662458705 683192724 34991782 443885052 549537039 565376192 332321370 834943161 237858282 257268788 430282416 581759100 230520808 611216901 127886581 133643825 382485102 488325409 535434682 599309147 835310732 898758855 846799920 869874277 519245519 831418030 687177616 692058372 987905071 996729799 866827572 977140659 69046743 355780181 359073701 388865544 117572307 403616652 150371033 892907486 867521992 928799308 952351345 966345847 963814217 983261671 983342818 995071050 384827039 916479329 773732725 828528097 964186251 984176929 748352281 781836138 334359325 653314179 436644224 958456241 688864805 889797464 781032358 918516472 637894569 955594600 884415740 933370616 651896113 745466192 261004642 312443270 482776696 744089267 839167904 907859714 133101409 456287966 909673 873537834 309670698 589212256 886224338 934359473 134759433 787596068 14840836 199610540 134659690 612009450 12992978 822747272 149664460 376569949 377002677 709865101 269322328 586223921 703696057 856366673 716144103 837926206 426821948 475504127 671613311 818625326 126244497 207691451 113664162 923160264 854795503 968485575 773678439 964895034 728308412 921483603 341373084 773713158 193692574 599656341 863826888 945215340 911439511 935054863 677808139 888683455 222033473 920230481 176261448 660016581 343709390 697175454 583719489 711453641 273176169 755368159 675031069 825125818 838408893 896796616 458695269 818857429 45314882 252114504 54990222 522659739 259750034 868734005 820172344 907448684 917066275 992590917 919802925 952106324 1335422 707259859 650037576 990839827 364449377 416429712 585387462 946134518 31678503 75787076 136136763 396966650 655804860 796305959 907567510 920110294 203667641 738084759 331106796 923519915 409124464 913776763 390484260 625771317 153913594 958121073 815835969 903626483 757427995 985805178 327717530 663516474 160389440 503954344 312008661 768352510 961519468 971495118 999827094 999933660 561129664 631099283 752949638 813238770 664603779 952807110 662229638 807831422 464141559 877135592 621017478 658474296 440604767 611520323 590229895 683063049 921829858 986942740 78151524 312680888 943185093 972994923 600085304 940868313 619001947 772920466 651424396 946284780 430907508 436805364 43790709 398583644 772522230 817151745 681265241 834599378 907258966 941050387 483657850 613570854 529982314 601077248 283642194 933901014 726906851 929290636 605293646 981132682 413922745 654569927 608307392 895261919 995712957 999507723 918605286 982980251 895235133 895962335 618709409 633300956 521325751 764289226 751804606 937533861 606116267 880304948 842987974 942368002 493689413 620369918 510677075 865581299 319193175 884397390 661316962 772953757 403326590 959379240 282421917 651003463 456738048 724938180 886518847 927754743 791453305 962733172 853035952 980285671 602082079 619523416 656403094 968041588 535644818 743433349 995221753 998986846 439497744 806154634 66873396 517468375 390941060 549013715 435219451 678638582 802340571 910247484 642366465 996888189 254047796 280455429 342015573 866376579 89020553 626387635 749637256 970318590 496733276 962640248 339335415 419690820 498200738 815960235 643567774 807302620 267957908 735768771 464488902 586900338 218221975 613358287 866917002 892626244 649845526 998452983 514915898 546016793 981745131 984058056 815121039 886834690 488823916 632036629 52233297 155816018 777092269 869207922 360504658 964815254 450796442 665877755 8435129 985264913 935397304 940003996 382341970 571647742 740833317 778678779 186017067 325693399 371184473 919721921 100528762 770157685 765046804 954812081 478637507 916705987 953636665 994827030 652641719 780500434 934239253 958984313 771504970 910890272 337999679 370627824 260464702 261830818 390385340 520580421 858989946 925618519 724542570 898353863 214802610 912841911 563313043 959524401 817388955 916047167 386725448 620617212 800444692 924463072 24726984 367537055 755285327 850246513 638088867 807773957 215117723 450164338 144580265 980015294 783453732 879732205 150247486 321675617 123376880 347937633 702881898 714711653 309225187 785455341 91822168 364144887 919737829 931858962 193794034 348782792 46373470 804510199 829809355 981620210 163603947 411759944 670246613 884431503 581767469 634620730 433472623 938038484 917295868 946805184 947266821 960154535 983646972 998786794 792621838 981083046 151260243 776518803 193732795 964610290 677038926 991194073 329137564 396989557 823327580 906092256 739624072 762114423 226904047 853592161 40943697 517441006 966102840 978794823 912081131 931334586 164930069 361822908 510907401 663329817 381430927 594411400 727470260 956768877 79714727 687620203 786915353 961339071 136102480 945023756 803349194 918343172 266318030 554886306 690971247 846806335 547112746 777108957 478141255 691381895 980424158 986236778 32308894 331931183 136635338 831621912 34273004 512039491 485644655 835509963 971239622 980300782 598598091 734052765 420156916 615304418 470156783 895961411 50182265 766523119 728613374 970858195 753625183 835685442 264275318 641508727 95045093 354530930 356523966 455740038 727732296 947807926 127226785 515987708 108943282 651431439 895797599 976071573 389982950 625079152 766517592 823751312 426629858 642222308 621546613 751881195 908230558 965387035 42304379 195990049 249820481 797863076 64011841 614569815 769781312 992389799 625683329 748326095 773351396 905818862 525473573 686324456 85019526 303305189 990938095 999864767 669503943 893392489 413122466 535048542 209713881 299510537 771106292 999833055 319121513 692343652 947450564 968704848 279550425 709928855 872939883 966897148 591021738 968055669 252561244 597593796 639417134 930062965 680426935 751517363 379325741 714114281 545595963 826803664 625352154 676251234 735237586 992445013 532574258 588114011 609359172 732915116 392233152 655913992 915150105 963436086 514190399 651679469 424813771 606359508 278686919 754441892 654595325 846929971 953275392 960748562 230494253 891618256 688897595 756507273 334675056 803669844 565222938 698694184 585201813 799221349 199366629 711959247 685321300 701919075 214172266 314417557 782765390 849498968 517397026 909210645 727236144 738202821 80867043 234254186 511745756 937905230 963107018 996822838 342083406 627950813 301547526 511278211 350313213 866217750 868990375 899260815 466126830 821134485 537000346 763966040 679609127 880765625 740934197 762803967 599139576 756242264 323311255 771238570 659515433 744566257 192435135 407725921 475136786 990354890 735349612 912160636 683947207 768432987 679077136 998867033 177527634 708161510 603890618 958452997 959339861 982851391 246196432 726835311 555253736 600153095 373349376 451207000 142080712 810967812 352521896 454164187 647616975 687016471 197883098 622779772 755647687 829319046 598352021 939607722 290199286 459021575 19582534 102767567 412286331 759839043 428468221 711844248 645117144 993829437 183707395 451797659 541496447 716367774 514361891 779694276 237115729 241074583 908151401 918392943 297371815 741687798 510135500 885559410 337209867 961649115 458975471 516368933 570579384 802981059 876995373 894848602 934358879 957417210 652729730 847095772 128260179 795691748 133461978 279733914 253811307 918496698 949919294 974373243 440266128 885014574 484527916 833841898 286220607 981554579 428109853 450312392 545549559 659107232 612327615 989614006 274844954 790121266 992977858 993055245 607456981 737428400 987617818 993360323 896439403 942315578 699315914 808234096 463950908 991427799 262628890 343377549 220841440 473725807 501068537 679801811 864649429 994385421 350917970 747183064 692384900 952733339 629434538 759603558 358958140 715535857 800164090 919082842 864747019 992696856 231276499 747541710 549767412 780399539 758521521 863211840 738942322 964784922 972846945 995997991 188418563 521378352 810305060 823458683 841538119 892523403 935742895 973792411 233904965 877996191 869080063 928764359 952953552 978648613 104592864 282220649 430708890 890138298 403862273 693436477 433552112 622034980 470929130 674322229 442671357 733392133 224955124 591474765 5505228 72016301 838760904 978519394 205978145 309880424 242962181 762621089 918886276 955825770 413106898 568610043 599455049 602932172 608218363 922678444 962277623 982684279 527536855 724709374 639516740 692200154 748330228 920976354 120911103 526373443 134870615 762402236 855588519 901361846 980434314 991310529 131214486 842519626 108563115 553199391 474174664 835787359 244455299 327065084 3971948 43257302 751248735 916032442 65900960 193034701 701737845 834125016 553793705 953841721 707202014 820717978 737499896 975952116 90132843 232703426 191084912 400846375 76786848 916363251 45400042 614269115 882615096 956705564 939503905 986867604 222821564 354939063 656059892 701613559 893984244 913391861 566723079 677412525 730207349 976412524 42706808 192794697 688217809 736309929 155758281 876115688 967079502 976609367 268722674 552855975 402583975 604687584 627871719 842454758 657544809 872354010 342022690 435637648 174429636 267308094 235403829 415795531 625889474 680030450 369891819 790402097 225852321 496752390 554137760 764541758 327220931 908868365 584584546 942561473 709367007 778255897 374100626 694183772 261343432 740988259 424652017 882456991 847243982 901195109 215078344 466726899 48877830 869758702 360046861 727971134 509782103 555630815 784316879 862500714 931693208 958163058 584602640 900956676 778826947 779196751 323633606 739762472 596098504 904688358 387685818 527992725 551262698 732407886 40653559 804510731 799388742 970907630 176209958 856209180 137332101 366280890 911561166 996186003 258023334 352567447 878217927 950338960 61773352 80073882 339688084 349312042 587315202 890552729 43289109 346445860 628377246 700533623 570497321 796109582 326146908 761301578 621466820 641578546 437549057 585228729 5884256 236993551 112736132 803566313 432341986 989758236 892186304 976953076 673840992 807284677 152930025 194495255 626049092 866456045 767191016 993602985 379349206 839399322 886088074 895108056 614449152 986232157 829161004 909844412 939222177 947818040 962668272 977452107 53744173 726421762 40205920 558250556 776020241 983601862 106785736 133476705 821514539 979210909 496210573 589951999 76069057 763639036 643853786 645992933 246541123 566505192 611174296 996216797 629854507 635713341 141136442 528538604 14735824 170479188 285053084 650449875 468902698 744684082 721692108 820627143 549071845 666684680 214589592 985718380 538378649 655284875 13973605 110119652 921284555 941791720 135081421 504505503 843983085 999231156 401204600 814896341 9919323 959297422 638493488 848747429 29278845 788568360 696644466 919928378 968003174 991027496 290035343 475297659 481352862 502285223 79843793 669603496 725923740 880423152 686077144 899536190 13903185 944217833 91045684 142446227 927180732 958338393 708787285 794971810 121893555 657174007 508888582 614545519 646953146 760419918 693715079 999200516 889723863 899204392 506632301 621482806 899721138 959185424 329772745 555062705 774087945 858390715 996575613 998832298 248931176 511609057 780060250 862063861 585170542 674644880 54831969 904908376 496712448 945278232 856895574 992578901 455814353 958254863 529613429 962730253 419850923 457264275 147456033 409946502 638371526 932074571 795935404 967591323 933077619 981531632 850401181 872459507 21250368 92100750 255454789 528523774 258644213 497421376 914273472 915203492 749187852 930181227 815582153 846488063 390139992 865352431 48525529 880423320 537268089 971055843 867964101 934325821 970364397 974042199 391473467 539015038 550762211 983562283 740742477 798132654 865249087 949364085 657587599 762602858 914979377 959729621 294437486 478866687 209008695 438493182 379760711 462625518 839980447 912043804 879674209 982002288 977111610 997529853 181359137 727783105 799194160 821818900 135377074 727971299 383482785 870289723 83820565 496799090 154050219 970512240 927311754 956757427 684232942 991036290 530039869 892794572 751193333 774343554 564371820 580677340 422401700 611157218 66901173 814585834 361244542 471823090 817177735 926825329 586285260 926678252 791963175 803203286 967620172 994923704 520251182 833700915 255482636 961361788 637232930 663874371 833500328 900172905 444872619 958848824 919078034 979945156 675363035 730930584 551309030 907397052 824453346 901212074 236000310 767119631 785941439 886201174 835823183 836994347 8385617 302742427 585348891 716482760 17452702 102873179 829988370 895386631 866903256 991849428 737334453 983679738 561203118 786499760 893493157 978818576 981340257 984055462 483978253 847452303 339243669 784737528 737527525 858300008 938559059 961501487 12967738 265078820 296054066 685737828 992337952 995534428 281894452 440459460 110415450 496061723 772773955 843345998 464507213 721591053 881295157 939132240 123871073 954297488 903052010 999426709 334929106 821512718 709603683 753487450 845555502 888162563 393559883 736124779 450901272 679658262 863122905 948103739 217901810 646070896 472885821 858586026 893856866 958188161 68037246 129375179 202379745 428321415 904698203 984594674 292892953 332932004 258560455 646334597 49273668 849633206 12630697 135912331 263829800 315261439 749284053 932609985 1717998 418547471 662388457 928200566 816345976 974025417 721554538 743995365 145803560 291983501 993789658 995581934 900872399 980538600 403423813 466186243 974632625 980515349 963942783 970087919 104985427 480593069 371538252 591436131 651014393 754586313 195289753 537351610 455387394 811231084 974573062 994721967 244507243 349992326 362600398 743847537 825026928 962439578 296593815 976516799 557055196 915238914 162064117 770706434 611731026 830367016 324866297 631154249 487013205 856155154 206403541 439292186 391597833 960615631 307960288 945739976 697085561 710199609 337965903 371235794 201629644 230443115 679152241 684866074 537420160 983001488 352600559 634028476 438490614 798919063 131857094 816733378 286195074 921852854 22444806 361941018 734080633 778093502 170110636 531683574 316828750 774878891 513196974 955812320 60172080 998512851 704610866 877952942 480785331 860461211 960214440 979955971 652276180 960035101 501289734 694574128 866225060 867879537 548220417 552248217 703711994 997759102 710048218 939024441 991909341 992398701 371769290 808439861 7842821 247634932 131108415 471743944 105055811 414277322 539325578 998404672 100266665 251932545 593437160 806990361 766515252 835474942 661999201 965973624 276693535 301729975 534685133 948391263 232031322 926343776 649433051 944988014 555210385 839810161 68717323 230274629 273354562 516317646 494795996 497608493 208762787 593511137 427795087 646117784 873427125 937886438 313498971 787709635 970253972 990818917 213160783 643937543 947505134 994680936 620106181 812004487 553144643 674088849 342814803 361862029 338237406 777912607 465212199 750811154 461199043 906758663 846334993 983485987 655810742 773075747 636037545 790207880 437642644 599818178 881740208 951392387 360658936 735332274 184896074 663160879 417866955 538740598 190146237 714114343 678215216 831851617 32331121 374017403 513863563 993895176 735746893 891963892 90938350 653896389 530438095 788702495 800443097 953407013 822777576 961919555 774493495 873543074 294292892 420888817 291338718 375656249 284811088 600698869 926174987 958086397 349343149 737109983 320376373 766432708 783833052 972118074 831669705 990057640 171544563 728555881 412103420 871410924 120671471 648431612 1480527 318127066 577375049 644848558 347817831 694546155 663622480 677959358 928373295 938486950 288545168 635037355 468667744 648759914 913945411 966189262 880395542 927411890 728097998 827698824 724398736 853967027 621207357 665716161 284146328 593733473 818702971 912117764 616967269 641628012 250654650 891906595 746975477 803365945 308398553 499767443 445370371 780002194 416548749 628207167 895429577 906977981 781323000 897551978 531427803 820993998 9679199 844956668 477329913 842005880 581519782 594507147 902940249 996471849 330230023 522021698 298074222 728702968 593244223 989106013 529605619 753928412 637332876 996383856 588331327 964032593 567390497 855178146 397640523 882889100 611450647 688781687 756565876 981298208 960852510 992667545 688668245 701838180 500471422 792815935 415269410 763392946 895072429 974851530 48611804 221031704 270592771 808853520 938771779 997016677 269930536 567946282 231607762 601338157 671508384 891598251 720029957 913228969 176719659 651022690 978128430 994667978 599518185 794738241 218930206 777398462 611177262 851117172 41343648 779258052 784541100 922185528 983114197 986891133 834840373 913468429 558545591 700543249 880933303 958759305 137061513 973575005 667938832 861339824 647051805 876983964 671922096 728410176 233647830 574242762 416820826 488618411 518088438 967087718 868625452 886049864 225206377 579387757 492818494 566831733 306856411 993895398 29680475 806495265 888093547 983071944 53040762 99404221 561134909 758163003 214440665 500454581 50856714 406772338 392211625 779829550 100167930 725446782 454950332 836548697 880318539 933300374 853318227 977465012 919816741 941427825 236053578 623775213 884680080 968966809 322857835 460688386 235935967 449634945 791697047 942764637 908087574 936843818 10449276 414701610 497811333 760182141 196846592 905019753 245965288 626330795 205118647 978970875 397398511 726159161 861311114 887002264 680919713 752536557 791801525 931318215 90482975 825352997 268587932 506882983 501394081 722623696 244390331 706842606 316772225 461266909 831896175 877752408 226585686 991340556 124808381 664771050 701122615 925206035 51172833 659514235 151731950 194190794 675680032 891075679 549007753 975333388 902716011 968181337 174997949 757352198 468602268 942970816 840618992 857575429 97036830 507166345 342013709 354006203 611789589 844957406 34736196 920868957 692572028 760779474 878107453 980298571 400643574 792092619 481360792 800234958 721318915 755265068 816609760 931537522 369860808 831379260 156387240 615943148 973101921 998998393 356741951 678167949 967591221 989342204 6726227 146715898 959482111 971494404 210158839 565725576 688839098 940271949 762444859 923518810 803891254 817979210 128798312 195996659 728989746 920217574 876724067 885614763 205478214 353688271 726760901 857183580 824553020 899288471 571991572 842601484 450110943 566343410 761262496 970296043 168701637 595032608 682198220 728001826 887899304 934249824 40270543 498894905 503338747 801526263 420019134 888128618 696649175 939045632 959188519 992078988 679163470 720170744 588688998 631992676 269027089 772508284 587621953 853074176 52992246 641189938 711997482 726920789 700818173 996828886 324071268 933950980 285655714 576104153 397891667 779315519 701298821 879088695 791764425 800285222 271921965 760274543 933379679 940710200 817841939 915631122 794010272 964698571 619771853 674020972 314618018 558803005 170289145 620753634 235587158 593225735 403144869 887424650 247525078 349018149 90902408 875257948 929393955 937050838 642682519 934513580 613845168 814001100 82533657 485882406 262752683 746941184 166461507 471913221 614755887 867030147 2613309 261681006 336555520 771114413 556936680 612040310 390765670 734368752 772800829 830402099 68948406 576415153 503380255 734538051 872054700 954729143 811461159 844692017 776550058 787099441 942254074 949628618 906065136 984654895 807217345 884715088 253245701 613635679 482353039 519720013 296793686 555163219 967498316 998471154 777499264 955627800 93699105 149863734 72542949 613524674 398520147 576313897 157222310 838761540 101153517 171776566 779376162 965179624 71409231 168733865 933983996 978116732 387821402 866375979 504707991 998504316 521895167 625018022 422231903 573947603 559100142 597738128 570483482 603342442 926283958 927155963 987322561 993850831 440263650 457673890 453921472 775003760 392350541 813559323 141105691 692835527 588796039 797568448 950863875 991915250 127486534 655302138 452842701 722068855 788149224 899779178 590332711 734017632 698232424 750207878 872004656 921339357 168913413 877935614 720036314 914372922 997156719 999731894 840538629 880904763 424751829 645948703 678057020 840507125 212843452 448267812 611583142 904892646 552434215 980549684 16968411 404072454 790120040 806705221 117239355 150320963 918329771 943932651 305557257 701302754 256902404 490732646 875145986 892455633 648009036 802143596 868013957 941874764 646901904 698857492 562274733 818073920 565602643 995885825 692007048 909704885 860296889 923077051 964808994 999060874 198860141 849525025 305392493 529052845 935310822 988958937 662790694 821720293 201254630 586580630 458791075 991472625 938601014 965141215 877599287 974558296 470751650 960030052 899485968 950565215 535229782 879170726 883559460 925611669 455451188 517319491 893502669 968804884 952172228 973435737 736644841 815834468 43541211 401912173 89777927 833722166 296666956 305289328 416612381 541971331 646143967 704296603 787503881 868483778 248379727 373722616 513017859 968129630 835990967 846902852 234150704 992321321 550096412 719093067 977516342 981810739 46549110 586629789 322357969 784949088 359525405 592325592 816976210 889443920 900325245 966833105 220948377 417294262 353859324 515057879 362151367 510184709 419190378 478953311 289801388 932915392 641633274 656289175 772671368 928144396 503582042 539575270 729293105 939166371 950974216 974082750 641729630 888782797 975206552 995497959 67001436 635839379 731900161 822128514 676479405 694563436 524808732 858963146 877205087 879292787 801924981 954832990 202958297 365768780 151571598 568536991 991355596 993972710 331524631 510264042 128791112 298559973 455462882 785850010 182280750 562154141 941223830 954037105 6824328 194215053 769643365 777049297 642228973 767618216 972941144 998710446 975085131 993393802 237571799 908634404 524349302 760000879 297937084 544476598 668395669 713224994 111688701 272295247 786522920 994858836 620962672 637476727 454068271 727522035 490279651 754433664 405522413 557529124 118972447 663330953 142763042 860976636 149522859 204814279 513948098 621413281 459387174 861598568 208209115 358581225 869309203 882472261 211816002 377164430 325581827 771812978 956912167 967282023 824302811 857991191 313812969 448477401 180117537 950485904 273323758 621429753 990244474 993033513 289278090 806777107 883525574 959015852 372922911 807906690 285962551 372583852 766328858 924990499 493983598 984673118 160840386 561912853 405880580 442262163 95795761 134727890 405271041 660122365 4955019 945709267 679855891 914062743 939263654 947481479 639559980 751705759 380170069 647931672 927812662 977374214 514315367 936281334 574404681 804473887 945940779 978749077 555628780 827122989 28102010 175741802 715699112 816955857 352342905 412539604 787084743 840596592 689322833 972772467 492657857 607350615 807198600 862516167 569153402 611704473 86406423 811905856 643935857 827558461 103265266 249715467 240963430 767845614 279805182 559152117 601016076 658980137 452640989 978963018 82741550 790290336 852227219 940784785 829490325 937240749 774298615 869113222 153361555 883297249 824040517 887714535 723266671 934354246 517878124 739659964 920195707 937558422 268446527 331523299 855910474 886108266 442101266 996754523 592201794 825540120 158356840 588498533 914605644 988581039 135296842 467737297 935514628 953233589 688503964 799636218 870575319 970583882 349552827 827332460 28956359 458921387 286833040 905016100 683641877 686199212 964552324 967413173 510122064 641614177 499204060 847381619 202590994 500601391 258768768 904939311 610012303 989386661 35420686 458491843 32255482 904844242 992533037 999221894 544691234 900813634 637409147 829816394 89009723 920622976 613869434 637695789 844217698 911267873 910602473 912557528 547194752 717698603 587105844 959063824 673582066 780854404 605590451 805123793 692630122 768217580 654282800 896244975 759944375 949719324 202099349 365794066 665656543 991992759 85401120 184391887 747267550 752786372 933079625 992942061 93746256 995800876 527017532 656682907 990610828 997059293 420996608 686977743 566562509 642045028 805531282 823402091 470651290 543990538 804927733 992743484 416584327 982271453 21912196 336347946 943362230 970875348 407421478 663679345 340774365 837340554 677540442 751122489 305055742 677174967 525123560 935809001 288457912 488839738 544538533 954690007 530386764 927210334 509906609 992162352 756182325 969226188 863313700 986400838 475936974 882834794 611809826 891218881 580605620 896435544 823343614 844466298 82767877 863861055 252975698 542255035 717717949 718909707 782023444 913587008 459530651 472106052 385387016 950819950 629566072 816084140 312751449 665914832 608303227 866628309 135452316 154755375 329527780 938055181 431152395 828628830 446212783 687049661 70510945 793453419 585948315 698128866 869832744 923368067 849211813 867604311 248507603 974713275 848109008 852285027 254931361 373473288 951235382 957609484 810615037 923940109 866748556 934727440 860819156 952588029 836915391 851050818 444508376 642231822 827075506 910189627 53514820 841549407 331823569 918426649 42791185 409445202 285717203 580664465 165994740 286642007 627473421 703907308 988749434 994538834 425357103 893342173 946958053 975767294 809111609 834975643 103470256 879864224 330675695 796682117 80666381 817127876 36915846 323459151 258438482 840310197 440061007 921827871 383892407 600292502 425061622 477337498 795826144 991444736 112981804 221328876 749150743 843598987 250857281 882710381 772980438 928962582 894742780 955263523 70210543 170382471 301737460 927288377 974002861 994264671 649453332 712266067 781818989 982996304 934101462 987846752 573146888 799653610 501174983 908608151 232078178 705435356 5310446 113562046 506014227 785338432 213845718 571618933 918482234 955059621 978186066 981411225 907384661 923866543 581994999 604652074 890019015 972055908 882244423 882498119 631449535 684436692 28176171 102047450 84234200 958061617 418797892 569773712 887579576 958967756 106086798 902103951 345360780 365701360 919695572 986263889 11622570 597620699 48923427 985600334 92681871 189832747 745561507 906883635 25595897 163958072 57199264 516861784 342621292 760130776 103889407 237251619 490548452 663010108 89434816 822004757 41712844 475998349 248386704 391076362 740303519 934472022 940787614 989411067 25172736 344534473 701574878 786852436 134869554 153247651 658790655 704039458 612436963 984661208 155706268 820437733 152725949 835195377 952173868 967982755 892623307 905249580 208468512 420792909 400783220 753458247 714416505 715466190 522953799 929492143 510091723 936236246 17786172 23796723 705428864 833121649 343606593 848358009 962234982 965631018 845864930 993323405 557677537 665518628 117113163 719023161 933033319 998850388 900565166 918521040 650260456 858272411 357923626 685257292 438204339 664226817 614532353 770303713 23487543 499025069 505237618 651960080 494775779 854996929 207680102 352616407 987991071 993656108 472689909 742297891 871456674 976865322 383757134 921951965 571775282 648357465 221197092 487837484 244825706 306238905 959464045 960189304 375725236 907714008 392963087 965511527 817733378 835959106 470904865 685746594 149113045 338257571 825751206 898333070 35776564 965405114 95511459 339402049 806890591 970125225 501376536 597494562 307170213 436612286 17854212 418447994 715727673 969666555 873659638 998763822 188458053 308332438 994623094 997371951 667704034 876918286 870426805 939377906 404742139 824561965 219552826 416347179 715436893 918360329 19832740 960870698 561596263 959628940 662969270 895427383 26856330 389035486 17411990 789570427 593930408 601666704 266359121 803719477 729312900 809166388 740691915 849247130 383392065 642517705 370364583 470023600 70046111 344440149 790413655 975491311 815965532 895671514 151509094 246323012 281462045 417151488 652808442 671651993 345591952 418039675 173142194 435632495 730036786 988623707 926546525 986956953 567351457 757096772 881793054 932795110 858002255 869635937 525651349 567143089 738916085 964997259 442467161 603215880 55211114 344417951 167819670 200857191 971072090 974392909 12478201 292315333 365045767 402653993 69985241 131959562 540174211 702498475 182401641 526430151 891497539 899080290 813300295 897644465 780050036 867887006 465373260 491570290 564126960 832255034 4828939 289211155 667262619 864930197 168831079 584581613 845838642 987914454 783561977 834545294 691766162 943036186 730715485 957972727 141774838 738261862 221725962 281359052 267762980 644918422 448529254 754533171 949903614 958888908 772983554 882064469 600653578 974340265 285500325 794281063 612712798 668050411 608172209 991896833 63857950 451626313 237372538 408650651 63035483 919705369 716640312 983086192 724927806 735309367 31426265 778315183 49283066 599517745 392424817 702026281 650133461 996570158 275262518 558710483 464128503 659159902 485540829 498999532 32643017 686845570 557959805 634776624 28061048 473605933 573736798 839414035 142034487 351652373 134973843 193146491 704519782 892572451 632489468 803066746 710759885 970042095 612263932 780039270 999643006 999938175 541811716 831495865 9475951 137636559 709970417 800056660 587191785 941419654 106675356 735196833 258263768 943267799 214581607 346075309 104213454 642651126 261689258 372824118 438956532 916225213 169276287 912866414 614415974 986593196 439515758 954869484 687485586 859620757 531919809 735856389 718960029 871915883 685991430 858310772 231964587 632028841 661208756 934906318 411745183 468997818 301830456 402953223 375263687 407207190 666104501 881304628 906710885 938177735 190047706 379904305 748680088 914730601 494916438 512311603 563329799 571152266 220498254 968711296 376185921 973183045 806312552 964011974 311904660 942384289 665454013 685170019 692845906 967082063 31119306 856418202 268671927 567214389 501664887 795667531 144410714 541764177 313740921 518292842 529634204 835783954 471863157 517524362 534621058 701712625 104631215 738179698 159232954 344251860 507895506 660966567 244300230 392002342 620821380 800454188 912684615 977750695 895904758 950642105 95248953 212819043 168268671 236385546 994669545 999404441 15745593 143710939 80938659 845622261 954869535 990194519 770435619 912034986 108707288 928992568 152369632 872778144 731135836 831743254 683465664 686286671 546006322 861012489 355060043 707424432 743514301 984192473 929994011 945520164 605634844 641947502 884883529 960996245 688902856 998196936 924082149 960572542 845755437 877056604 162060638 547771972 69832993 289213590 625906517 643579304 320932049 391393353 22007157 57082094 573760173 926609508 53466969 811873221 461311835 577077060 885583157 956229782 636730317 903868907 694639172 952174619 292140749 368763797 647490067 895165100 609735701 638464247 250771116 319089750 313918389 682108107 109015697 423620074 836452474 966912025 805211432 812338342 254582029 649599316 879029023 912618333 791940902 814836419 861258332 910274315 948196124 986543869 202218809 533000888 93512459 313468220 402825245 877005435 835821446 880909227 214927368 529807560 177704331 614204719 888319761 954239473 731829232 969242146 342819123 847495886 88776354 264168109 247696397 337692895 940831442 942259801 453861026 938344193 53387543 464469486 24078275 246115335 924070264 940666375 563783006 785991806 7896789 161899894 517751151 634167454 648589031 973321465 837654933 919915022 591795388 673461923 822110477 845191785 580018939 723512669 801670417 918997190 982000170 994282492 792804012 981886045 349439300 531069192 116768290 773318372 942503061 970175301 696762950 961274691 388791227 513644978 880674939 904637454 210191107 309109145 556845270 725026817 734643642 842280566 165001234 422221814 42137929 241083580 567643305 833026908 488119259 969959673 5052993 105051963 471203671 944545510 604032052 989980919 377449352 954830494 734932278 885086241 506631165 886742933 246815568 929804840 649657856 827538980 401684096 801889376 223207188 548384438 773095991 857831555 609940099 702746700 507261259 925454727 356547035 495405505 477665424 548414249 887230031 928317271 576914808 852648524 463202744 905887816 542728822 834052047 924102413 969785673 441182616 824783263 35248092 261776625 835111444 907031835 426107238 998296910 157978620 997820025 679793824 774109528 441260416 845939232 516880449 826678974 311292961 953396611 330115777 598241986 955914681 999949213 625491769 840133848 430189724 848776208 745524493 967495865 225308028 948991723 685356434 738447440 52629029 294394052 195734797 753999589 465544998 939645910 797489316 889136715 565608449 986315173 276063993 921992631 26297145 193565452 537040520 815377951 467284319 618655514 441877668 903206758 562762274 630544704 811716873 871068291 75080582 852337999 578492745 726973456 31046429 800259964 949621461 953672251 783145537 912111539 427618290 567158815 155783173 861212346 56078618 518088358 67104762 332249562 467557657 701968414 257775872 898470306 817095703 874816291 584342713 791468823 680407524 881522759 343922085 903462442 924427526 995624873 568392607 851349570 952818702 993968480 934005612 956088111 771055156 788196529 946704968 997806767 603111417 891725121 76746874 795315763 388576200 869729475 304079910 942815149 911817528 983109315 55165031 870596853 118506718 146872936 493312465 785103795 15796873 687336222 642118463 912048465 649177462 984302483 147362461 267128528 312056965 384294885 321040442 840078121 191804755 303085028 348836608 690510564 525401174 665866455 870689018 899192484 257936113 806809524 328391552 546963793 103903480 723230672 374225666 671085876 149508639 188181823 227486750 606962433 452280724 552191801 660518231 981245164 546961941 989961018 13868416 145975201 165271063 677636391 301212679 543159074 445437525 997256679 296542094 621310253 235634064 308837144 288813055 650430796 919796797 954219985 381132559 537138416 485443265 905404170 496510569 828247105 468650970 605502983 118702254 999970481 364596450 631083795 202733252 593677008 425952127 843881400 449263705 806592508 835444014 939035990 265022151 678567350 247362042 910226602 970368460 986270797 979703796 997911765 688780787 991756302 162120587 418651387 11417250 386443124 747977162 776927737 626627623 825559748 812952151 838324719 931067814 968216219 146371979 650700382 922530950 927502957 879819035 920804962 461131827 511462429 642444421 699373134 905175593 982570135 554333762 633442255 862841881 999475447 492835946 974086913 217506554 371383237 18491162 791904212 880550071 896393087 102451153 132145931 76705962 581634232 761191253 862035522 156770139 689986512 397057575 482265289 426268438 959326504 891639475 938335563 313150568 663812019 641941495 801258089 232727554 357985815 713790563 752585595 846784063 993399507 209494264 447752000 113746254 615966589 49619233 664994630 248492198 922120368 682887580 721241894 390405491 902496225 31321815 956007678 410379635 591775362 576868502 761879855 204885500 339541551 873925776 886640650 240633930 360060677 176437948 829256647 5453622 123895400 834789019 939997710 605496152 668322885 888266486 925837035 171207607 985529643 968815617 981440965 209344446 854605647 535485067 842760884 104776990 539886442 58616529 507073369 527801243 647404609 118486572 944033623 584378834 810557762 722549209 761983989 643338038 972877769 791714790 966915436 295498457 503183754 152384190 311730696 519420329 521484623 936351573 996319995 94772576 384966149 240091606 549778895 566570263 686578336 289075819 381465177 520073690 817988155 73643430 705632378 632554727 933039202 16889671 533239194 804922454 950406757 469597063 960698718 654205584 684201757 922008718 961883936 854542044 899837710 569241926 999658512 523355576 815855134 299532435 887841776 497749290 653190118 620504276 711229700 705544150 988039837 389433510 869976843 326524373 922299452 764123457 946475210 191779196 290075918 91245517 565600377 307703520 796121577 521766307 598930600 905293652 923908113 576360177 579132036 514436652 817341511 380260673 694637712 160038316 582586755 65613192 692584243 206643155 356324701 599185713 887159545 5208617 881666239 476280515 746528060 899380411 987735275 802076353 802994189 361560819 987232752 804818910 938402765 562129817 775661113 452678148 678273000 722493963 915279390 18724689 366688446 392581011 644626311 836524202 987581676 710337733 901744000 146367097 670212677 46755723 127116185 941331944 942101473 823408481 879115295 699566715 984325500 45489461 334249242 163420979 378127988 728660925 834981905 374238047 928705639 14859905 46133279 180958751 998849166 999003450 999576303 378283532 657873156 866764258 943381035 162794935 818431654 2460902 644091505 106948917 176349617 717843002 748446272 869303548 881815526 339000471 579925980 357944886 616870088 993187192 995219104 425113638 630867790 820796424 975711538 988708693 995780997 955290844 959415926 82846295 744901805 536017323 905155353 124070728 805265921 343127095 614242162 26483877 786480542 858178724 990876058 705371325 939910475 751411657 925517268 216251002 764401205 937186266 947426154 255381908 859143015 535207502 948494863 43353692 255266321 225843539 584914005 253375688 296906476 305897046 865265015 462586435 493701329 389092824 652434550 583253247 974536314 762970993 823827109 234904170 788264787 497798942 805269638 294190194 925359163 283280294 287718818 855890890 882829389 105519532 472087756 243347086 660777188 472588890 899378386 184505526 425099583 603820040 910569627 752745967 834929387 647992983 795879818 947172802 956100440 719712304 929622597 410386268 586974772 975932647 999006242 600516926 856536475 825820638 967717308 208320817 674763827 256035832 738201888 903184519 989787120 314788295 369841486 349195929 888549797 379824679 509940164 734624805 987234355 780473467 893454479 306514843 922085076 635010202 749133714 750177062 796647172 598615006 896772931 862752298 928038945 79666529 236912057 45916797 762523146 557896220 712033678 134949491 208260491 806630505 873478678 791024520 793859008 849035735 979911777 983031662 999647096 313126167 602196859 740317002 832332920 237527681 525284599 61805552 322536252 903899736 937810699 859139762 898892159 977893306 980222630 955150710 985759049 907887675 924253458 689850658 818739610 159510364 541508181 252047655 567271616 664569544 903830807 762031766 816057966 377285577 741285037 744935558 911787424 682621298 971915525 324677270 677264929 362457677 857178737 629799593 667847220 749378169 950882180 112395101 341004432 441389805 740659460 792975321 987632732 413957094 907036081 452764511 572978269 759531938 944167644 907493809 936289726 798319964 869874038 183543057 809248765 560050229 886142803 484398973 652233101 584932709 806423553 360918457 373996613 122827550 934099448 236286618 694163643 471251204 757669002 233784799 825300749 936341307 975437743 188156988 582573874 233151691 805848581 873132637 950870536 771938613 926610323 439487946 455969127 112052893 847371979 5875490 926156956 105594231 180601611 374180480 788440601 476244012 906930422 809738894 904065001 584528053 702453596 497100576 692886476 808766139 877837686 848139108 914031257 277758326 607642474 779880609 840853421 469393182 932924922 616364061 676685575 241930 788680101 478012918 482381062 594320375 713961589 488670048 917516562 679261644 806442020 744515421 902018289 506047743 979805992 212502519 461434206 93679086 718629922 246811989 629338571 613824570 619340059 307309203 359698729 43308371 111935453 78297040 797705463 822918421 939930097 851677447 965628381 343932960 791265620 100428419 776916487 193562190 533464733 489413816 967260820 810372392 827434374 370079089 907224868 748278449 791877848 7266928 342847270 768851417 794088028 655251757 854632347 822839091 845298693 620401190 997892004 933721605 975116216 934492100 998046598 991808916 995001974 52977993 84031491 975776949 983498468 754420790 908236803 912250420 977510434 111287048 881884328 110525870 269474298 971394624 987346501 543611158 627987253 418975070 589292114 266303722 538661316 786482542 992293024 273184263 818507618 373882063 820958779 377089977 650466112 83008339 115279664 3959921 876447443 865936606 911174228 613866123 875951249 492404817 717099219 53073233 406394329 889255741 939684813 906400502 991428039 769597634 771510383 994802208 994926812 648098116 849259021 400891965 857335698 530590841 909849964 510456047 763576765 5051859 916363407 425430938 720779469 47242182 61150623 458238082 705640036 619743552 670276738 171640761 512495446 403801938 485293033 90314913 805203969 478177844 677525469 668973233 996070622 192705989 505371481 917889551 963946986 874895257 996358761 805757253 906047713 970250486 971276372 742726719 922317231 752767928 961353099 983142935 999723576 423680256 476256878 41585801 230111495 16250956 781410801 814398262 870048485 755666692 810133232 355646162 790563359 700106381 810782826 93465221 857856284 956693060 967850257 292093043 883293010 585018210 639912904 491362836 941993126 883129241 910449801 17004870 978173566 974630299 999072325 615701967 852217834 790951373 795627107 492530567 595663998 558110211 923922442 619722238 814679643 334774950 645370389 747623916 995524424 591405962 839185646 17800016 116652154 707755205 775882920 966134028 966392915 230058241 437549476 332389471 431245614 376920363 702939410 81281136 816378673 654549258 701779468 947489876 974600150 795107828 874195980 212290490 728534136 689336219 723834285 7613033 749111303 394633500 735801916 417540458 940830969 357155460 968964373 649240572 829763659 875485787 918560751 310400093 643523226 335208293 864821471 711075482 860692857 381784404 689220665 772048884 846671878 974353741 979587419 463569556 767853707 36258 489111861 752252709 970861848 9001932 964457905 155727076 819607842 916329148 996240812 779335269 863551171 496262541 527279802 455389283 542786740 55006658 460463541 224595355 742415211 616070606 654395573 203662282 930870425 489147499 489214155 643108183 959700722 744167540 776486625 155952704 504788961 745378923 932642802 270239639 846992581 637831135 956538157 566590096 742679966 971820562 978663483 787073385 976619035 691003600 993508550 995927337 997779585 830168039 861303256 296734525 518957026 197055888 732444940 983242824 993619172 631580541 640512497 194469029 371442445 105475702 627509530 283584004 899335692 132059282 215627296 168235951 434709576 425911100 678884166 939066517 965984860 413289295 791019147 930104511 978957008 761770419 812089810 289356240 763306756 987426216 992882378 905273873 977105884 619331868 982915558 113857098 304964986 671606261 677133841 553141691 640281694 428582800 891739763 768040194 783163253 842274123 882080449 230144077 316249114 58308428 350420135 463173299 809685191 499728971 894212544 55546026 393374600 603295802 844981330 416566151 668266632 55256921 510195612 904912240 927409544 979372526 998640000 460894573 777088461 802909752 826004239 168790402 991180747 3067051 245110709 138552253 364296046 723535453 993751253 332491671 864900863 891012833 964292303 967237218 970453608 887938895 894818636 323668870 978439750 9758966 980262833 269780702 530207097 92776014 596744701 987111471 991635820 249549987 684083266 740927747 817335613 413590856 966655078 865321082 884479459 969760653 981095756 188355927 994930051 336627964 403911458 219709115 229304690 314072885 895516373 68671016 451197878 226048156 849724154 418696581 529501168 494425123 512882484 893985810 940441964 370163049 612897679 386673100 556669196 42884129 231332688 577130148 807607404 649126058 866915627 720629788 916231897 273441233 919969859 479658326 749021446 811844608 839038778 709587026 891152917 396845485 874044206 107894529 645861326 954389996 991471716 652482518 792904687 572212938 606132628 219234954 858347503 998881249 999699854 803795456 839475806 721161775 935100402 961890837 998993978 841897041 978824622 89370460 640685716 1647172 28571537 836640487 965626925 886127898 954925092 7416785 306636853 988808284 989780630 948761203 964880332 135770154 549633365 509671038 626220083 276560437 464897557 438701550 939076775 270622724 817948290 289144261 814642515 42801516 331085899 680125238 713728490 886680697 950134564 963816786 992844517 939062003 999604976 503197995 926422633 797714523 993767250 536385769 574364423 537712125 820382858 498600392 849970636 16843871 852737712 24252507 663017145 18014695 37644414 978812120 995188547 798433735 860664668 327121065 443578423 241555896 459728136 398914318 737221510 169062518 950409725 802042893 859155382 837022328 985685032 801544140 939667119 148900565 327892421 589393769 763150045 431703682 723083707 386853622 730500139 588562446 813982695 134523382 784777302 327092424 478349580 510461940 761053199 366657213 627069533 335020336 361304066 381603739 732787150 865092116 912168150 4547236 979151122 147764098 717366349 206281875 386445006 151623201 619373330 876529279 878258283 737539952 856673328 505148672 928978312 471514924 862092762 170959299 252223617 240920896 516639041 373416780 611075616 966479480 992835708 253220912 385136671 210418429 644982882 605202393 830556017 576505476 915864533 644548009 986092269 20638194 485520725 151205044 304394405 95390857 532526628 854804122 920204405 565221811 946363060 824955182 965898103 799922872 804737069 519170699 825704300 890911999 990567860 274780711 300331648 792465096 988302552 244327011 471847071 880754779 930871967 97728705 667089332 762882364 827151343 415747043 891570746 378732107 423155474 156086336 632539027 395954997 904505437 560303308 833006853 262313324 330359510 233758530 697979027 854133766 910511513 211724741 418353526 37250417 54660395 209797899 326688361 370424263 568784854 345085648 596325148 892509884 901148479 674191340 745699047 212486176 699608088 195970823 588841324 698834321 942525751 24632704 263666840 949645926 988963518 828671661 962739701 784229048 922276507 893900043 964767756 192985509 928543819 727086482 820429322 988120766 991688331 493661095 663256456 727604918 795717441 308689917 424925387 557848023 940827032 727534592 944889068 158207660 966879742 22897774 623044066 908833447 985826594 407011676 657342809 845781557 922476516 769210874 860407609 571950159 789416810 668185328 812165042 127244113 907813405 500052586 934768350 783142011 990391581 155629753 903983896 122753024 531879601 473523578 674387292 352897133 845246643 878411958 916254837 769436858 957402553 193328963 597912306 596910419 755427789 910857897 983983714 577497255 961833483 254612813 398458098 771178091 978301689 944513062 946057001 941351905 952506686 176791676 352004588 57455438 219853928 943566185 971089845 920073919 955070389 231543537 275157798 191459052 910277935 169398098 890791424 316466501 723387402 34467433 160659319 590652161 673260958 306479996 599809738 496594533 523940054 416451342 696004385 606877243 613349762 166428971 891953853 519684179 649206001 996418026 998743580 588252580 966352719 86351491 963002644 248915243 429968202 944169301 977807131 107075982 148819261 812867311 899967492 548124373 754571548 654162445 894690121 981171030 983207069 573684298 783591696 766655445 835374441 553148889 570856181 889978887 979377851 30462370 752379136 248320108 536900231 636301302 945064955 95347354 837077473 101581880 530239429 135303361 583285310 903256462 991735810 792327455 844436026 43758052 507637428 804203801 825149311 734974299 849213168 923245070 986360654 319765646 750315489 905561376 929967620 195770010 842065038 486304636 790436817 292418513 691793079 69232552 946075469 90624728 449834926 904388419 913340083 375650757 402102943 752110043 773280091 244023044 276514520 121481026 520939196 854484899 908780311 63325612 938640838 959051468 994285028 493205005 785599777 822413444 834927637 404376274 574701481 856336236 940021928 327467599 543285599 918499557 938613369 309279120 452178507 150252476 743454475 812902958 867413264 594144969 873102220 63205909 354175966 603333442 931062154 856622364 926262854 318960850 684334033 151698143 976486518 817565134 998742124 495787446 827920354 283489141 500225943 734850799 771919925 84893805 200273648 834365193 878150909 256052011 873617815 563838650 814114484 171336235 692037919 227255234 760114441 512178857 703161907 890350636 919162587 258433220 756679307 434876113 579756719 178105167 759448157 208363858 974692966 406136491 789339918 814373512 992779851 201452166 764990887 528567972 538495767 94789479 898665912 25311334 885206873 128713807 279414478 52522607 418689194 533554657 675429071 572337434 689996060 538877340 708172733 278894626 847815036 205784000 281341971 127938906 293459142 620175260 718405000 710259347 813932778 186800159 386915920 560317712 717302140 381822910 765872815 855598517 911949036 117292981 331770235 918268858 925772047 384575686 869741096 768661602 851035413 73551971 859441384 86070989 522026687 274383391 708629685 555002702 819372799 128540474 270882005 433122668 460860124 464818179 683302029 597455714 757951237 588967777 672701030 213367259 790562136 361067606 561063718 903238614 985917551 581740327 976726907 171758287 218266921 36447601 817547573 384542813 620178958 114257653 875059583 265049919 862971961 531683562 691360053 74409584 216847704 426874721 747765466 964085554 988245582 835765188 941556021 979376166 996166194 976342624 998885237 653435700 985444877 434082496 981745155 292712199 905183276 77033131 99379639 641971658 713216999 116777623 668831606 866649810 872002121 619629055 836222686 652678186 972882536 989577879 990317747 515444892 973672146 491276910 649117893 80675454 625118875 518359458 574063481 843266912 915631694 25755373 487052461 528364764 553367612 274128154 879810506 295913207 712864807 972393970 997526557 673616321 804090214 117288451 427455978 583288864 592993082 669549368 845744706 224812028 360395395 381422103 788966430 492739632 640567098 176874902 284565236 633827039 694811201 467582366 967330728 1967901 262666847 634688907 811561773 791136595 978813720 295014441 728266095 844822356 897830097 406281592 589698972 737990198 749557867 40531963 559051882 258061760 768853447 904197988 987155319 248265816 304034011 847788165 985630571 290463063 890676306 695927611 840962560 603560105 792901645 65034128 591145932 768301104 987416951 926980960 972097157 105341393 723088274 334118628 939165561 409950461 954122148 658256984 822549280 834302143 997183948 917420753 922243869 903439366 961345827 314049688 976306835 703285120 770957652 719599212 959541336 569954714 981274655 425622870 432698141 934892465 991696076 936168154 969984286 447711363 701535073 969311305 979333060 567962929 588059067 445086039 897326280 307974102 545135226 547292134 707646234 733086802 907262356 579959167 679566758 28231097 43631332 594696923 639135081 88488798 727765719 26776686 831525752 877275690 886123775 662330261 831131772 221790771 226633547 270064090 509160929 156025584 178664858 9697517 616791023 592895339 856683560 455844600 577209536 231942631 480421311 594068629 806508014 342467465 675419804 845971803 869464042 375614968 683913916 938366162 940322844 726367426 857400775 328354659 899380277 947356705 993917862 470577507 991854237 743687455 956114057 77879247 653301375 231769396 846808689 350692374 595040304 392882198 716467762 68629080 359855321 469668373 836289234 304408707 390537099 421251760 726217074 665907434 929526681 150644628 805780862 578772603 893101808 543999637 816103300 830273230 930129269 340128987 993182393 646258826 646659934 841650761 862814152 701893925 975816618 516604534 606838149 23368836 65540694 265113629 386276916 568374177 960103995 199897213 911734714 785815574 820496682 166755433 695157307 237768643 362832916 646378150 736171690 460538532 638331721 943139626 997595453 502152882 898997471 300401443 609644066 672777785 752264069 842596114 859178633 538112429 896812422 383382297 533479109 26545024 393985330 198699331 602278938 485962966 900558831 812521541 968718557 494456771 728021415 462231343 582941507 11666511 836396585 955432800 986749729 134650592 653757050 75465147 176172891 34726984 685033827 726145796 828819586 756630780 953925641 509057194 776765270 427235147 654857263 374983324 907145962 861702493 975485758 949502082 951591706 3637416 160646188 25081598 308449117 173962413 526130625 642433175 664718252 666770895 824233077 25992301 848005103 32566505 141679269 116883590 753711772 252140941 531304748 852842093 968849341 451895411 934250314 944215598 973913435 67188696 637331110 60039222 690555600 394588219 846208319 366466650 748087053 522098786 991305775 384061874 893772109 150195273 439072046 461011630 841126059 45765734 149407280 241896504 464820775 862130719 884209143 722486491 956648319 62499135 448361721 849416805 879931113 94158873 878278552 614660596 848931569 824921183 943156314 160705368 557310756 323926987 834822860 396390031 768920444 577791049 702759691 562315948 957109236 818541235 996313542 995080545 997829363 54268894 718772950 482671595 611505589 502429816 504026612 410265880 799515189 838782276 997728132 950274946 972691224 590665029 867969496 642852859 971849819 956060999 958495125 332357210 919410169 834184120 902871145 159027738 459705987 483496076 837651024 41032691 261404232 684525260 867818652 704890016 796677887 509371331 774958522 503832092 524291869 408928262 946706117 104604788 450219046 304668828 981923767 39855902 707005077 517388905 740247035 199874236 784943924 815493104 868915227 509577784 757372224 37546910 315994923 277834830 980678094 481265687 701756873 152524607 731800226 410393503 788141196 932847475 953512444 758261239 933026499 279988611 719209612 906041554 923650674 914139054 961880508 792474363 963126505 121792165 470283476 78463873 349576173 617552449 988817455 760925916 893900215 656731907 698396423 803942070 929015496 267993316 419643596 110588389 594842022 719130392 890485463 334605504 988940989 955998140 964933444 528935693 927433070 219011478 883792372 485938063 578228413 148583380 322500883 217575974 884823639 902419132 955204057 311490424 767406772 925695286 980232520 921260634 970502186 441770600 991480576 601802777 647633281 970038400 975376214 813260286 833990484 952811032 962178017 851511734 912690940 945715149 963793579 71002636 969222197 23209551 375700147 956730601 976592374 359129228 371534699 683013648 991884302 55494776 619271884 259112391 772334257 334662588 939928135 908694461 926427405 474111578 912570439 452733129 712831346 466707596 853130366 330587810 867835800 503100171 545605878 2737383 441389910 973673934 992048255 841930155 939143582 637663642 807750471 557717307 912738503 94502816 164758546 765968050 998910660 6844078 44166685 506001597 565807163 149551151 416920784 652178677 865380874 248354774 364661978 766151125 813803432 424168510 663600999 36484432 544755103 989022573 997064832 826310936 860008045 507815737 915824009 612702996 855300599 823896069 830798289 672217862 725080683 302920774 845039078 938516329 991732395 302665079 642099871 268053006 693321325 884303297 997197889 349009637 765741497 27791810 942122901 617391441 670070645 153117681 870092867 304321010 530156191 867535632 973496972 814051555 878812083 411586853 985678408 915836168 994268103 226926289 803453531 317057947 783953711 903885921 944348951 233130940 456244429 67991489 865368508 308446398 421242839 842522534 940737205 514130456 866318818 684791226 730858012 923504508 956938732 395781337 643236085 854011661 916573124 395256583 456021258 383703531 962517451 226590856 481239894 710591206 933047483 628078438 717319727 542721522 580541154 238717069 876765672 494054671 630883897 541685858 993954090 992186171 996463267 458397336 729947574 786407407 830362197 577165910 691431474 650520709 707455431 798288996 974001268 44858279 105523634 381925716 754648674 558043410 659665093 698910469 964971842 735333683 917044540 315002616 377414891 318227433 408587190 390130974 529245950 614136094 767602679 190547614 379257462 38174016 529051743 657641654 789957515 708603177 976780843 414065753 724182235 207507442 733788571 994641286 998019804 310841779 545409560 770087619 914801306 509400788 580959131 102415269 226784629 605972076 937658507 75937115 943563078 846252065 884862725 553148001 710973927 817462815 849982665 912849290 919615804 435003553 946986827 793920795 848565590 121771527 394479168 888411616 891881131 326156386 486031241 582251629 828568992 337174499 422686869 687579136 906520047 918305173 997789676 162571755 646788236 847076005 903404235 394791453 842290165 584559490 764718274 344177948 711143605 328926130 912822469 624975656 917043637 87390603 862695658 293344897 942688040 380627534 671688633 665637417 684914597 930952127 982237912 747046253 841813084 758070151 950676127 706810462 812360527 353431537 995959545 593329061 726270245 180680337 675432365 969417001 971772299 914060781 933459338 910749401 946061283 837526559 913002670 424868945 542183952 978258016 997363379 880673000 999511188 276799908 613409922 367413257 657925986 200185836 747679773 36055461 828343523 872020482 922384722 565118046 854777478 597395079 928761712 885069071 973478117 194934318 598591028 523842323 891250296 898370315 941720012 45782157 747069356 363547625 646468385 431771367 723112315 291363652 495855787 15224527 678070244 669216826 903071922 688511612 941197448 936982311 991221683 934093216 953603943 965779139 976861175 635100651 875442590 931963732 970285527 20759688 357790769 496634320 587430942 898343311 984025055 673402216 739685796 691370580 890189270 564300393 577488803 996498916 997345141 812493161 975770731 35363461 737646751 420130841 601896192 584960155 739610091 424463645 478134059 79609476 166834111 942275229 975725469 359886720 802585854 30943196 206442780 207487921 749172449 839174683 902053805 346806740 806510686 132471778 187691978 274423628 589881568 345812824 780590628 717208153 881559095 869506690 979901948 654290130 777234848 666274514 868285014 159761893 507302985 631384983 899402478 829346298 940522936 809372059 846439040 358851099 540509980 410189764 877756870 908805969 952485658 165454435 895027269 152537815 928256167 499292468 575789022 113434965 390393399 383497231 838705302 201967685 810607062 814062701 910930243 20708949 350955276 154844686 546444107 961162439 966661547 378513220 514063881 783388085 896538312 46700792 343102296 283990022 625196524 9933657 451354041 601414270 755329080 634351538 997773289 576475234 962464344 515055510 964426609 734109552 825773509 927774797 929722444 834949134 837338869 233406408 564842538 258301012 477187204 522968646 635421369 62535442 166972127 810800873 860891009 943998569 970555547 940028281 952217791 995778763 996323521 78054538 942647656 681065908 990270629 446501756 988064216 564812418 615687305 58888992 92059352 172900961 651527108 260819982 716751181 461057618 878425784 199350922 639283128 570995533 753522630 892642248 944562346 617993396 681421986 351824186 939414935 689889401 825724659 135788329 307128030 445852471 826989580 729028294 744140482 532756793 739112887 723036773 895927519 6595380 916134077 633424948 992604178 10052290 924053327 529076236 635137681 184581943 769520081 469340689 747165978 716238301 741831227 85610616 189017886 378403586 504614068 902581647 934932080 824337559 844336403 270388567 584327330 748179245 808865397 599384038 883722372 464024689 909273642 250973894 679434443 968814353 974785097 271562463 598941765 747915011 758839066 778256368 878745398 78168643 928457108 843350207 949055480 484724612 673925566 294269053 746403988 951644936 985328164 158529662 547376977 904384359 971954395 294441955 362697760 808907106 982462346 533824989 832337038 327965540 676175256 107565151 456444185 469989157 981592396 143429837 565946794 810618986 883991947 512410399 850818978 266444985 437542608 716989326 855460533 817685646 865439461 939187434 998944889 739976718 769497788 500597444 922864733 971214786 989097122 72221866 576783714 145592570 295977321 461884016 612900221 91667683 554396786 277570116 735142368 454211686 623817534 901087408 955622662 423984870 774011047 305908605 730982565 192244063 243426004 787926877 835959425 68340351 237423590 685892536 694374608 923955315 928890899 189788457 890791390 482400355 702050710 762976356 962205297 821871791 893049576 752784778 868149119 647559914 774544865 389439243 492498295 969355903 977122307 776800710 813574770 918466156 994222038 940338202 988847720 247312618 448076644 927087212 995400756 695685213 708390292 658029087 940129330 972735239 988506524 648641464 879877561 769445492 831688644 226499219 732544535 634572780 743004662 874115715 930071034 967737547 990991260 174513287 645698755 27669759 882688178 998081122 998611887 838906996 884196850 994397448 996650889 603727469 861586162 352597842 632230259 906683122 910238229 623149321 679632901 654314314 764600443 157697924 861111623 964777285 999616193 683724277 776336744 82418180 889057417 574928308 965916531 921693354 985631243 556707784 579223607 978114039 983164218 138115807 909645324 278049061 523416662 284362149 297433390 790668490 843961283 181629879 380831481 132846447 921519691 434403943 710990768 163780405 591953739 660093335 862347824 259039843 507439013 846139184 930525415 743306941 870974018 326279058 621562210 44205330 237735485 169301324 709522606 260070837 920633456 869019391 952486927 669022270 866335985 746893853 766253263 453784641 506909470 974177397 982045077 26189473 674091411 381128732 721359452 240643053 362217495 430779113 945877184 418933210 877500463 504015526 913395630 146464816 638555354 775060132 889026057 380927868 920099873 759306314 987653917 664216298 713961736 699293557 858463783 685710231 994880691 105202498 362265405 145525410 578685431 482969927 623512386 303865482 625069152 443856675 851217486 526689762 957639589 511923056 741886467 571288544 958678680 595088384 601861208 366242334 468027217 554218228 921409619 376273938 788760800 81498283 126088852 983812420 986866386 747533941 864422656 934259315 990478662 851701356 854826871 117512406 793813216 968564888 994786022 257710664 611973998 769136679 772614089 623016446 837504791 615658038 617030998 252864609 505081487 471409218 728182255 471553563 594679112 125729477 467484962 835114397 906904765 777354847 935776634 688072570 700122987 271344549 404230240 872058961 998911027 698200066 914052365 921923916 951477150 880950646 996645692 267745570 749320471 918931988 946424565 446194372 735563892 12209478 603184651 162279418 968003527 187094276 458052571 237366947 420520719 330465959 394076143 89460894 605428764 209387769 243132549 930639015 946496925 924035374 954593547 998351638 998833950 289017936 719840994 533841788 710484138 979618577 996809594 664357295 825423685 139225785 847446292 380315601 571138098 748642124 891734595 989013476 997351302 450263514 846206242 135700690 370067777 434221899 850083288 94432442 798921750 438409686 907083843 389089187 831361971 664434196 689899093 551842113 817992754 677151454 686070794 951148262 987471963 296237559 894852588 536712988 854255785 918300886 997570714 749542312 874505438 759377133 815911610 250759213 863285741 63263710 396091588 372589595 972476455 789705286 817966189 59141821 151452487 515482385 834337935 341136074 487070003 17600040 954699655 740118704 770253049 330491672 828566632 618861580 805400683 144683476 286891623 78261748 600205030 739519466 821484256 230375615 326304255 176419766 572615768 707745021 897747816 395829984 898913907 74551668 376958577 571653759 864517285 292226846 633809345 221146941 759183414 718932394 783503211 147359890 649604687 213975977 569584523 971088109 978282149 87779363 859803880 436254019 521109942 850216897 858446594 119630951 649137662 689622544 944684996 443199710 917158940 418185094 511501207 868019412 970915090 838902384 992469700 614739419 938077242 510316513 912171975 130349512 147839473 641788977 749411547 995811439 997504076 285896763 973704855 120949059 965930857 843678117 859180005 923584807 986790793 369177677 827839575 210624281 425266590 798705472 805309161 711278141 876883996 413269774 853276371 705345967 742355012 731046829 751566109 342998458 511145730 214573739 389822214 518500904 970949798 556960829 819440360 533535098 666538789 363523234 482974379 681295606 835081096 114353402 889302474 413038842 936240069 356640028 952461692 544732850 596943024 248885031 387627293 754017656 847153920 703622458 735766830 167566656 504223525 790382415 866123446 685012160 933062307 766090587 801137701 877163384 908988934 61714475 503398095 989957527 991488041 31744449 460411301 779668687 882525516 494728375 737347890 623297243 811467672 955064506 998090272 551128993 696536729 885090277 932817246 895712279 991236768 205085651 233869891 718044931 756709207 122650789 425830378 272183317 341879364 697388223 993986153 440801494 717106263 131242400 281572034 747675086 889828245 740505716 958193723 189190825 340484672 447794454 502759956 652591748 813260241 329438858 518919977 738929413 854428890 648524197 756123993 295173078 295956711 74937260 129188499 183770126 510305668 149495935 408300253 274404087 785497282 407876849 506631482 858386148 892564523 499551979 913416283 458377884 683848995 810222091 850958870 318265772 523916193 890865822 892995878 956017034 963241852 841704672 913431884 119324969 687187221 826910021 912375784 611304253 618826995 531227559 996698735 648469690 685830209 513165708 632675147 842432852 915836530 729811895 782401322 654858633 957092168 915281919 917314947 174213442 656027297 780773104 907016445 616175488 798928899 149550131 831117934 630679332 718849219 820178835 903699059 781528116 910243372 464947422 781709333 483455439 818304369 947176251 992835472 573271172 866640561 762128699 931669572 534733011 743336485 724114500 941285234 758501172 849705305 118495476 576846428 555628436 880135479 446907973 874830528 817427401 843996963 393230263 646504514 560570823 818812566 723820742 736954398 342729930 451806363 295619628 426861190 814715167 956237393 436264627 567670346 55465892 256494613 963912459 972055016 795272505 934717348 988578631 995623381 14652007 877746101 732424405 978747242 185474254 273165228 798063274 950380546 110052905 404599022 941548412 957518409 247174673 269492328 382180876 737290296 592459224 807793293 609095973 932936525 885735407 923385517 839317406 979973036 81823384 346308305 503437124 792870346 314256850 375776972 673076423 779491590 869467266 956800255 882903139 935051802 813211041 943045336 244282697 480026180 328188980 413324985 23210312 66268883 26606443 434219730 558454815 686753830 180484481 506230920 364242511 395879030 780696239 934738429 349984052 906512242 194974165 541317388 482068624 742867391 467085398 672544749 940745711 991551877 357344184 571156713 970246683 972467728 784127718 945129918 890385079 971145538 763077458 866144068 464250890 762481473 16935418 731502444 403325969 814959720 46420366 915467149 926248279 947044932 79290069 407083127 960547959 992280258 839248234 902688968 351908984 718892403 165863492 739766753 799198855 867557602 853966128 984241059 442747824 443607774 401475726 867343235 701897678 960626746 383084020 945118664 467094661 751435137 249000575 611300632 556553757 730566462 368465882 820589735 26188638 84662676 97686678 565277609 509454188 579199490 538894632 894229135 51800050 347884945 990959488 995273207 877933846 976858320 624894920 710361418 46367876 874910063 108065551 530623697 377831239 670713310 867448906 933640152 195904033 390428344 11563922 275263190 803616552 839832096 840344108 851532395 56027243 405444710 622882663 979602037 194680139 340247639 335349547 352902078 224087850 443957207 944971437 950063978 651294019 909954276 419389237 922434127 204314539 689205285 122070691 918778265 155377201 568184845 863305629 963967639 125641186 704814343 296979052 300277254 460882713 597213890 809142161 968874964 56644328 850694785 918970570 977086575 204443689 826038084 223705333 861690976 760250372 917752693 714003919 734059548 45278077 149224291 293981732 300313474 444400752 496234060 158755568 205525109 108810715 413877227 955692963 961406796 725539550 883589988 720640845 727417408 803778665 925948509 545128347 889176641 770126061 780100361 926357605 945675620 798281228 840923983 306481406 643180054 531978615 763512355 247603164 771249330 768128791 871984645 70889715 973501910 385243787 871149811 405527422 756613542 268038453 555336212 617629632 650551160 335604480 533696295 485152368 806661698 792415523 950634134 317927221 471714202 162108622 431798414 496148456 588260577 252937338 626976430 986228720 986785812 651007328 994976574 152270833 207101913 440155204 450313678 44989371 504097128 359509040 777975867 363310328 811181253 226269480 849670145 368188466 788258265 370748829 803270848 739264337 801707849 975791259 998066213 26928295 461129038 421770682 882399267 843228967 968235831 750543978 830405467 562145459 657533093 887263881 915984402 868852677 930889898 443439 698903286 625462447 937482189 526281478 921073513 466971959 777773671 976091104 989654169 437601361 900639322 255609487 942436023 208931861 452444417 780211925 907430153 534159642 862299860 739736466 761518010 886474611 982856103 715203744 952234072 688347184 871194780 341335200 722409352 6527785 427072456 891230333 898430882 541205726 639219947 203940924 406910648 958193560 990640603 992506255 999460603 953774294 990486525 485106263 626844564 974305556 987972297 908454233 962424499 113672375 761045977 381985892 598926742 8261916 900324525 61415809 962875140 775650625 883402770 353093459 659310917 377365573 397207416 957133895 976186506 50499938 657181600 224932922 244984994 615402314 826895835 414494627 433901247 221248777 742651676 479137266 807250178 830862774 868104167 479266765 623961735 858592958 898923231 198215647 835266876 536660994 553896410 108231201 315107678 372274096 694341351 887055058 957345005 257569193 420634588 215243957 709305014 522709311 831328281 435607729 986355154 261663389 445934558 580625778 931583572 59535229 528218176 842544652 891626983 593201846 684358733 767285444 887107995 101305542 883180325 309170170 455029871 287738654 324642678 766824735 916723891 533055425 934793719 388126292 937045509 142227938 553118998 168253851 454255636 353742605 619611815 817998807 963454837 835522937 909788435 637086933 651569694 67326887 204263832 746893255 842947083 869533877 971808678 245664878 603965358 627942443 651913690 347253271 403962047 110114052 960076493 188943599 862237029 779289138 962746991 421321570 954029376 448778025 785229724 239572222 896179290 7365666 713326303 132579822 381085868 850678962 970159664 859704646 903983337 267152876 301922164 407786612 706763404 333162260 967237766 810702049 931230778 288418078 315817587 249827905 971614880 70694426 877304001 499587472 673349244 251023250 581977629 46544653 588129301 59227972 869148821 54380668 78257980 674156512 953226989 317746763 799164422 41079854 481408546 846137910 855270743 985665464 994993255 611075701 799308997 329627363 432203629 51903938 497221126 731294847 834721615 855812832 920557845 193837489 357559931 242914310 364508249 278871746 672970120 915248026 920543364 974288116 996967459 802465231 926219661 547566403 795569590 732236193 841289965 887261653 904487900 225592966 498024100 200983581 422664636 968922900 977734670 652207617 950787086 731541020 968480116 709498327 811200005 931604861 999232841 488169487 734291534 647906439 670897113 576888331 821943411 851304627 888088324 10445562 572572084 588067937 951932225 379703555 420919549 423750734 861830806 54739633 404629758 841651621 861589134 638019283 980059857 533836427 931701641 441260641 772323400 376043483 377700954 454144785 983056857 874911985 876793913 893700286 929112143 965883797 973481699 797523112 988092793 747138310 888447248 310610056 385147264 939151793 950797390 683224752 781762331 297325632 701898567 769723266 898069869 699659639 895420543 126087706 660755697 999238260 999773306 107264960 239481656 465087350 822496100 840808850 940877072 261765519 576124571 573260271 721742188 290264610 719344241 702777801 848360275 691975368 969746967 876428905 990943369 979921460 987506221 760615357 962540985 167685133 676976142 210508377 605124072 749302921 989921180 491962047 691869343 330589105 334935951 928435211 940509319 56681782 274252147 994630738 995785924 433640326 914246301 233246076 959919975 514344534 601685957 566812917 984284821 745344467 946467897 631224085 818194340 528877771 780241299 96767817 568890178 662682584 778213394 643193737 676938762 547094672 738725158 183834860 660785973 291012972 824075541 505253152 711369800 632346015 957703913 922772402 984538102 466718624 897602505 175585168 196546391 968090480 970428659 886033129 999855542 790839154 861975254 901288434 931601249 198078635 329002004 541455884 834192911 791147991 967097997 634489254 654714525 490178143 618135972 64451875 156339363 361700908 717965161 411475170 428744872 318632128 594252275 361193364 662813084 564864203 770855151 946717338 973895368 774090316 953593975 438885204 617884724 787688379 818929578 743048625 950383554 356095076 796329574 862590006 963080005 648888406 695587374 41646662 94042362 621407362 817475033 738449251 804903193 185538876 325667200 396641866 948445576 893997792 941202485 840289703 894196774 390171235 581899652 341467996 965211927 821743651 934577175 220561127 437983419 960194252 991390263 670822420 686310962 605155830 977186149 542028642 840048249 180557827 388563752 391316365 855900156 761275717 782500555 840713569 999086544 519343064 733866790 26257027 616222004 525033559 561833630 350986280 530286204 888570133 972326483 66665888 612403748 371931814 795053419 102621005 949621070 91007514 491898837 255954377 421735488 679413538 891654062 82728812 528174094 372030846 381771325 141075249 594674863 447793031 695506998 452933197 880191954 755135117 833134711 804655428 983842602 615438268 695139580 747327091 762023472 21585635 362115555 503085760 845888534 365089514 910881686 157880045 540951248 982805029 991650291 61725655 509757290 157216038 553989023 49428440 883664141 476270921 995839491 954679505 981620478 976959323 982607642 884561886 971620937 154803704 998869782 639345996 674613912 40752726 906083596 557588154 995276451 439224407 899594980 341411381 902489051 298520240 829312375 714210312 858369852 860408050 975722402 710920728 981761925 581859347 924002747 758931897 813974583 597374655 893010317 568818871 649071345 432543422 554207563 847187894 891135243 847617414 914020007 331745073 438430671 943796079 946411714 550784922 628354927 8687146 521427997 445183995 557813390 548036141 963104889 110397837 735044863 608961428 970372596 304335465 334303321 280622517 687651870 871189080 987208446 801071173 931960059 247246687 872454429 322363489 574219327 420693389 483666254 575126181 641633268 229021693 474690697 64365769 745183908 901050757 950584821 508199582 557903113 898345089 956681184 828148710 881958004 893848749 980755984 879312807 969351424 355919292 519451663 813505086 991702560 474691093 941049014 984423347 996108312 349947174 403799139 603967182 978366699 868051392 882239440 752461226 904669681 714498359 967539780 970173478 990623018 200227934 501974988 236747439 884944027 480385113 617409511 415927494 607371786 712325844 943076864 972929037 985975128 861304391 861686691 725378187 756058830 730199446 815309210 834314311 922339618 715903031 758369755 791367258 972357131 577746907 760375827 979551719 985201395 722689383 803700085 29593220 348094802 143165431 327695276 852787831 894675527 394125682 822720145 905960874 939638334 838817161 939640530 665038392 744090289 902361987 996135734 480958054 519092727 387890199 510256455 184318222 700733052 912449967 962859245 475344716 485942794 847822985 882881293 281309893 803796221 839160293 958440918 329447811 813464379 778778387 861565121 36172074 372076207 806341161 863826104 713534071 907352171 343358019 734551082 971743447 973210291 261000511 601879358 341540651 547181127 280537432 677356850 119955734 554371513 386370331 701626281 772524756 842513204 557198706 610885267 707354339 816451057 80457751 244175354 352722214 816744496 3316827 823478187 93740409 966459370 372873162 711117852 757888904 963796584 307433343 466211703 891841754 978682993 781537280 885960999 355183165 455281981 397972990 711048132 699241239 722701311 648126895 876219040 834294218 875377443 998645283 999614730 203141289 686346682 826806047 865994652 464251371 585063198 982316775 995965080 341829062 469125332 96018899 333067571 486172993 845237795 474687031 645342593 725563342 993441731 155281429 927682415 41825028 98386777 791310080 978270167 38132698 888691399 489780722 980390133 214948793 675257885 127810905 473943718 894806262 899833344 645594988 660886547 444767763 541497345 37245671 107368220 201644015 336289514 26899930 896311777 246498056 723170362 132600235 309294625 684546585 764591773 401821086 810503217 563330609 593526271 915273172 965012786 830104867 908714957 445247881 539004539 474568851 710280445 929443418 989214932 982177641 986732938 792385115 906245654 417440850 460211542 800507201 975139093 203322170 285261796 398865234 932095884 153810099 417716976 515917188 517347483 786859734 792012685 88410238 803721169 479094905 942463024 677535305 695893776 845494196 969822403 917633227 958077236 533855847 543975465 827040975 964877271 702719062 744219255 844616585 918432781 823363529 935342978 431407961 484078801 799721487 982543829 67093458 464323976 78490523 110453737 534498739 992765785 518084091 894113095 780003924 982623657 372076899 942675066 248088743 521638732 339260881 941253799 764967954 899292322 299874468 551105388 628126061 773070966 520752574 959018488 287011502 408528194 351340499 714198881 216258843 671815589 585642077 865558268 528862863 865223301 276217216 443116414 783164153 796156545 33284999 859640369 219552085 455104304 647744065 727269255 709037399 965465000 59367482 701159521 967777411 997193674 311493249 778428182 261223433 415924896 24121619 169371210 962529666 992981080 262528593 742988948 271553678 925569548 37116031 65621156 731170913 913481987 375419213 915443098 297791665 702720714 44016885 367678304 786044911 789946868 979325658 982720139 383900475 676292483 307711347 373081440 483651383 855767364 89037880 495947578 102636589 355962224 932386889 964237933 107218734 991654380 137813736 624367987 216912861 880995915 722495612 834845017 884566032 893251150 216190326 763331973 16482713 387282514 673225204 797286968 598321221 700913412 565581619 852828565 283415493 579386551 373155392 654910946 979141661 979227374 122369671 892972573 861243180 982650612 242036261 789729633 8709631 656068127 764841605 838691414 172884074 830754956 857204767 869795740 577995189 875352740 766916892 926863398 560959208 577198025 326288852 429488372 562153405 596528811 420239959 620953755 95494774 305866275 435462945 977315605 49463390 931582277 512218780 823057860 305253997 705219678 753215348 897503018 314281528 458950248 450468026 673884182 500514317 744490678 910489646 921722903 736701918 934955205 4672551 798756336 972292893 977924163 324663791 626734290 414005414 422385427 878159789 984244973 159628555 250851521 567565032 937443665 987597247 994737447 947209348 996914654 81529180 462508779 455159423 949538753 373938251 529016170 84871047 504510070 244021056 996742964 65396790 204896997 747120298 995429080 509454012 788756303 634674727 820349940 840580636 995624924 599167956 856953869 48666732 401552798 112307404 210678176 85275648 114991653 64836895 798552794 473825143 618847380 949398063 981794168 188500436 742250650 301455687 564435961 203340110 560177614 486840832 487277905 888865746 906579935 433783818 484186362 919640303 974297388 626102797 916562446 235677521 746169430 70275780 710029169 579113469 799514780 107496047 369635545 157881367 679277734 291606242 508835947 253305715 372275660 426336087 753120188 168463315 260172501 927757498 973374919 826645662 909053345 603495712 965502517 765813486 941301332 626008928 728230303 216176937 928451673 17261612 36381997 632674155 902778518 980517792 987615782 558818672 969668338 646848516 688142251 507164348 707809693 893753625 940715638 788685497 887864369 282917323 789119995 580135360 915345864 120457477 236688106 364062954 465544738 602066652 932385705 459723381 976439312 535227674 584669946 88920310 287816581 960123220 972407448 871286377 886647510 831299082 846933499 985461057 994081668 328936926 829019827 916250326 994110157 368435622 912221238 606493353 812815992 246510218 372538958 77601750 82141727 92984565 290179111 847554326 987105750 129350881 381682454 285054638 673454132 178447708 630719394 713662774 739213701 261309812 458873988 663847491 942658711 969851755 996149390 326919306 864043512 497112457 874645484 149351933 464500354 171116986 407504107 857845201 893910253 67840635 250463696 466282025 623851719 870494454 881844421 145176322 668731787 3293039 15001193 505630913 787871327 564480531 752019561 400705145 537876706 391304125 442676081 906732046 944249598 56927924 302994348 567506590 810360659 241439044 633697624 598778574 611236690 880282994 881815689 44525124 175764463 891820677 958862765 19035829 341738784 300541547 663884840 706523146 805832055 846752614 949840053 954769720 969841827 446287938 877320419 432209206 873128272 722053150 991247624 760480958 795973429 955429030 989385043 843658899 856004378 542115395 989958949 306656632 488006667 124120945 904056281 725484164 898917856 72811524 490705132 409407941 617410407 505863076 516157159 776283225 778092242 277125994 797188711 10882222 896562033 318906054 343568589 298566153 920538576 970366725 983369164 603460343 934844687 562202300 826508950 437342373 637054805 430293567 585019825 954788968 974596866 148840537 687480076 429008041 671971759 683123264 722749211 70605624 820750968 45103472 80302911 41783500 497301352 3838086 681535877 602658625 974523148 600738173 804411215 150256284 812849743 770845624 971248867 725735277 904973528 338562267 633857040 833353032 879488486 551717315 657846283 375981874 533431954 690629268 726830488 202375251 322664971 746646296 777076228 253228601 649168643 545377384 839501142 353304441 632174918 911935010 994752365 498753028 508283662 397583535 740922253 776051435 984792605 289303167 910378537 245176644 445379384 296163336 737681839 394322754 647872634 654222027 945999887 962450390 968454321 554434894 895926000 489194030 652329230 498599555 866312253 895339430 965215144 837959664 980309993 946393336 950469840 555197573 698276632 377010334 837488321 308332410 559039917 570049506 673058501 165244954 896028940 156517205 628838133 991919203 991983468 651418967 738485137 336208968 666514412 650187410 675572364 707806704 755852679 780729902 912527990 462651009 855635249 121069428 536215865 20970553 704817040 630066553 906175390 223850165 771615772 207899116 550405208 498774836 585191975 664921019 703951333 804480714 927642510 852135983 950763980 466709536 984427082 567620619 876457016 638951814 645715935 636844601 896374950 199625459 487539506 863473349 892237718 114635742 478763979 539253125 968685288 620323045 905755682 264332837 285797005 324882430 893905742 280968869 774192926 995139868 999727191 501950826 912165520 309451917 676909784 566499915 926162337 702017908 943570487 849195753 876870658 665717967 956153957 703633458 784095279 293969758 872844345 411314727 536265766 134932222 554381941 145079389 750504519 697527293 810587603 920711447 934736776 294146149 382133195 487571004 624225545 336188290 681783234 615990192 803164081 523675138 569626152 325439752 366849864 545884469 978763823 360903200 986207085 590568488 833464717 851036360 866621683 726826771 843824002 750265633 849518080 112720089 817947170 954927186 985734520 96698538 824529792 225540214 255221215 326508335 525495418 968274238 987194625 147747934 269762702 858077237 947994089 147081758 829782581 540889252 728332346 70873386 276836448 992632469 994981859 357455721 958462852 852188952 877324132 399358860 593558739 10153237 897041138 688641738 691570543 780171796 834766407 371053181 683677185 674157080 999508023 561834676 821843890 44950178 582163948 346566277 676068451 415540931 800843445 804629602 835580421 932402509 935634873 883674992 903454838 297996575 647620904 509051766 623894185 114435152 184903338 412762896 901073301 52439234 311284006 219164493 843993762 424948871 497386267 463123016 474164411 928040931 945304570 191603393 562314352 840284237 926093290 102405729 113188557 162477536 467778977 310002439 905787496 908783732 990818348 610431287 733148468 370922250 700997432 369307236 700195426 429186501 720230326 90720482 491607852 292873222 650222866 246438198 704264913 573725490 872407078 404370263 689471699 542887921 812521325 511009451 807490908 490007786 503967202 454478048 587891850 983979291 984668256 804369530 851387464 296109752 812843819 112071684 737023064 841061749 863593980 119499479 233988158 940585742 970345630 149985631 674261705 113621183 210330779 722964587 881734039 935792345 983612732 790772958 871037908 622264402 845902005 597943310 824871831 112952934 936457734 898218925 975840129 779249444 847597293 595715794 656376371 753634157 826880934 752701913 936352658 237782709 873028215 560030310 692011470 788424802 789891037 665777474 914310734 56364717 614940087 593169298 616475878 793027643 821680842 133648083 298803133 467438666 546521553 228037262 388310276 145919053 987145124 672315991 966023314 845403809 901595894 37603396 760421516 497863444 814172416 212178786 869619721 186197626 533442651 973074405 983151749 615387773 749074827 233845682 814212872 603996365 935443877 274103994 587246888 776952923 825441422 697434694 732103867 817000982 866411604 264887330 290348382 28602355 454999564 535863649 924730134 713046792 811005338 384111016 473091935 703799995 764748309 585261732 906664873 630286219 640534358 745539590 836948620 569244602 993691728 123640764 418294326 298722729 630556844 533257461 755444278 255926397 585265285 502354158 822538289 754514181 834213972 331975567 533640633 703516750 772611038 43538080 636951360 297812858 655101353 80121795 700234718 449166030 605552907 605373721 971841167 303013322 897121206 681342899 720179704 352052952 950007922 368534007 804577179 729771433 925588082 48190615 969860064 318510805 457151330 671800742 822889930 232425659 764182965 606390032 762276122 911198146 989624635 56360075 124953545 501228970 581816820 722078009 895137809 920101480 949147536 826306654 887198083 969943891 980095292 861392208 970738508 943676140 961569455 334897832 774042080 477965719 868659323 19357690 79428363 996869055 997698371 672134357 677655667 510169085 536620076 722762657 951113869 519276799 710411811 510479236 597981570 288798472 641648671 59950472 980160586 357298029 587596136 844169562 902176106 674772660 891619333 393241407 636031599 406055668 942294344 137261074 971163184 573829259 622777527 932706720 981317783 678429365 701330924 609890113 871479347 413205693 884320143 897712114 978778073 112571681 294309513 595459248 602058579 598611796 884083150 60635553 217297714 367746300 902214537 489396005 747313611 917634246 963197260 530802583 917617358 818916202 995457531 907898384 930298638 76673167 977667855 428244426 510581112 381979567 986678474 475128745 630434594 684270230 986861994 968077419 973428185 657887961 981374627 471820781 623017637 221491637 904978604 639435002 816068170 461313646 942540374 553139783 956336558 951827278 974696796 643465069 844874816 760043111 872912822 238032295 301989150 541276417 935592658 777282034 914126372 558182949 802541177 950193194 993967076 124561957 565226430 549409204 876997407 711048533 825885283 204406367 845700227 987297782 988458760 920766759 950957052 719935218 758198126 242625083 748065959 986754244 988063364 330926712 889209450 302794208 361762696 813767899 845719219 92547335 179984895 887529370 907126535 537502740 615127366 609998020 758105151 956205634 972924599 210659867 612914362 369536587 731196099 350287364 497965465 735624057 911767436 972460021 990162161 27062756 740191790 881112043 896574513 503700014 754242043 534226440 554108606 299666666 611001232 299282289 868185081 330991734 942301060 2904392 413534005 793816887 914317581 771746815 882941000 853506802 910421979 478433243 934945831 711316869 781457384 654207923 926510854 523957505 571752351 657107514 705678641 366695868 437465025 791529760 825850627 440982083 531079999 940701556 988655940 746843121 927990340 530413160 968919271 994666244 998458569 119991304 549011914 247164656 772907194 870274247 890402806 345105761 715990800 243245411 297282679 466458047 513628248 799764694 984834422 534278767 657346948 689509709 939465899 91669674 730418661 931103700 954757701 737129549 912697951 281588250 352690633 4923127 587264184 302992745 404993311 21075848 489887754 637892814 704030037 942031114 993042693 768480838 792502844 754318532 956116823 129350671 361206566 925162511 977979934 812650033 970898063 705194982 982266726 280378689 941814947 244013237 514893055 571590835 966807159 297954158 762819775 869010101 936420474 423419882 883530702 360092216 852933676 776940923 932294184 182044895 856634970 136930150 717075368 2119031 949241073 570828059 833532332 328515453 840483312 651457061 877847458 886537664 897590705 297532699 665691194 286324388 336678272 255516896 582561597 871984373 923988486 468229460 894102926 83026896 177102564 519848108 839506599 129766745 453493441 737114610 898724644 333430948 685623417 790743892 920261397 767948681 852017063 481995683 980571594 467515591 543799726 42571028 104658954 435759949 625053885 681611583 892838271 961934959 988115231 240873114 494061957 996246766 996924328 666263359 736068383 147371598 244062795 228685311 447274620 478632219 677096396 835052481 919746700 897857130 915994632 241898545 803111103 631407036 797681483 503233763 999771244 255748261 300858454 491912550 968578517 224731994 261266749 490161497 983286310 592464956 704838943 506300598 967142041 799634811 968141505 153091680 371483331 609225374 685319829 720767422 743711332 849010060 870003989 286203558 981741073 73656131 306129523 672156969 918646771 845240646 880169788 699406515 833257421 922136058 925285496 651919767 672544071 479024747 970831543 225901360 299947909 865005904 960342934 536834206 665117504 337200785 811211737 222552840 407195263 166412798 192372520 357556602 458318298 968033455 991946398 681787092 884274006 628888155 797776612 439248857 864578406 882067767 988609069 6579769 432144955 128883609 344328315 618674258 863883960 270405447 350698802 578249295 596683925 641793804 677672322 811080342 871204124 691159558 782427723 932215629 934916598 322946360 447500945 685241761 819619625 191343123 548640276 331709160 510203095 662319014 878507564 156372446 798692908 605670520 816360750 919723081 941630059 231983758 514376554 313462059 872860255 338329598 715719850 37520177 402128548 854891088 970192828 806378880 901879119 547934776 972397642 780768949 798237070 173187616 575483716 936338902 966683533 386087138 615450912 686142417 839341294 914437955 945685964 849813378 984600220 144059598 864715540 550532232 631577083 351001394 670644743 910055151 929437815 746443882 956097484 608308425 621738091 928983562 973493441 218312755 499195106 480376069 789288886 997414493 999289574 365853478 616889625 80277838 480957225 962707225 999327229 3245468 180025612 465299047 988963586 127682477 234874759 450665204 516237056 133046670 242812142 848852553 879644232 399512019 481638037 915535604 950903196 766842289 883987134 941142073 976090096 177333649 936430359 833294357 920521595 860241397 909855663 179130940 370956577 452693804 827495508 993104583 994965975 521871543 897750011 525928259 659995541 541902783 723824435 377988270 613460477 385045162 735802591 661534055 836373120 348914743 951761424 661105559 720856564 138168244 509881842 815761220 854109626 784875382 985199208 157277218 458660124 444927076 831390574 41372314 883187734 303812157 458620052 21322258 895891209 311711218 872642906 264877302 552630116 385479966 525704809 117087967 444229539 332979399 703407670 421588725 673548063 48811913 298014166 895418870 900942495 124694841 145590009 910690288 978552727 653863189 870281146 402390681 664984220 157591515 524313455 95689396 469563736 755325069 859706066 625767103 976264577 816417836 957196417 622812410 691654614 790505660 828688883 554573390 897567108 512634353 979397887 845718823 972824548 601493402 603879784 742709795 879530299 308845023 317221828 248211313 641166242 540736719 714676746 91144173 150264222 373705047 422625431 482212038 826873343 349522409 450913526 119869832 592643540 475420067 510823347 734486266 890749428 158038117 184511411 428533047 555670040 116135176 901610005 723088634 958958234 179859057 513522507 985470472 986200462 450917078 653410183 543588312 629046952 240222153 926416713 883162250 900896784 560128706 886702294 546025963 853126340 17920550 387249153 140456784 854291796 618007512 882069153 173229908 521452764 411400406 455074798 589389282 851086666 461823988 670333647 604803028 717561401 21009496 854009224 581651871 662716366 461209707 523713526 244180657 940348957 778599281 836050631 218008244 963092522 309637412 839360050 592600900 640458227 753717647 876861256 637033308 702400418 640796696 917874474 352456068 609711695 527565356 799509998 201369829 552018902 307521751 715044222 569555230 985847154 173114550 893019279 325972300 482814120 646736022 758129847 568641678 989763766 523663262 760700620 709939289 835330564 931692318 994065336 234896707 628514036 122430675 597489624 627804602 793643957 340344566 958436543 882813840 971463370 527357630 873848852 574594401 863567683 185165940 775832001 134731220 230499765 659883643 922465075 116205050 501526867 235142005 898576392 767113223 971262460 965179550 976343468 82039602 436506638 545300457 942540367 698422630 918163476 17288060 679081728 891308192 999577401 693201521 746254265 490488775 745506080 680116786 816216974 312458729 878327644 990010694 996894514 348406148 681436332 333688275 454899360 160906710 472105787 156839968 916681512 646121137 875165323 619083268 943914636 821627098 971000820 601999094 990010218 109570771 821216466 426374025 854598882 625345940 696025744 107890816 464769037 669036613 838215475 687804682 699401983 363069632 519973343 414150470 942511376 689536670 781158679 917283487 955480756 69239240 812579312 861218090 907147182 49228148 158405151 35652593 816097786 743301630 925342994 116378918 846796512 311979141 725336165 145945015 995171467 774093966 969471860 478374059 873244920 342778217 438141509 360804888 512768394 92175128 934502896 628953410 884919311 285919074 426123190 465110884 803840895 216615877 556340768 810093208 974066686 923742400 972132767 245892986 883700858 528801778 812286152 696624072 740659902 851434209 951739228 255211572 908081654 913003193 921739617 286117186 738389743 780097508 864956913 178825448 817610157 698332238 750197607 402083639 737708712 562334812 783398728 523158937 551017220 718995625 919980637 186920679 889043759 583774213 825821449 551699203 965301570 431679125 985215333 537619996 977478718 557346093 914782612 351970292 931581103 112970975 939659575 865753173 985772792 404354652 626343798 573098986 748815080 456510363 584388170 570391071 586042195 378096782 672261917 211116632 655303020 992762026 996294932 546447702 553524478 939772834 957357021 216638194 369541626 734182912 930570131 939166203 980179677 686014842 939702289 421004919 565058239 742125028 810109574 480315816 507055193 800128767 943621306 225040139 844711804 263743851 811300429 415548470 681849134 812517691 992317284 503285826 600972492 173828767 396858321 759646590 796457575 634285201 958678562 481107403 643049124 507792936 692741911 695934289 778987722 136312564 684381953 486838685 506827628 747749626 884035976 822607292 958793298 685467943 933393070 211917232 274932185 271438623 611006715 761886443 958049869 969952028 998118292 251120085 684093657 583921295 987018919 261840425 664488429 537347595 934345700 509852404 616726549 209346894 903854848 847608840 903558307 69174747 524737858 527066552 711323847 50810507 444328539 47803555 363607164 527702349 748592710 771085696 975315954 490500111 494900541 593257727 649478871 387917305 957390753 467034798 665551446 556404409 965979239 168472878 835039475 764312162 858821017 4646567 492370221 517287403 766589092 621892635 816549274 386900708 541054728 305033184 643545676 814831873 922626255 625223332 961684945 652736757 798728567 573862652 579823105 952164106 960829372 81125596 971923780 846647141 990556622 464230109 576624811 358291049 702421750 583017789 700396400 905724258 995514613 397938029 864101285 205587255 316071801 256083437 423815681 272451958 765951688 856861023 963575064 890556196 972013777 860592071 884858309 380810027 588217859 592887841 960007527 265630540 410471544 610261490 913391909 311957484 359592613 912098089 925316476 404586406 615694196 550404788 789882834 95600426 676841372 971881367 992039362 550955890 954089887 741247363 952389303 791237371 966743718 430492289 989121771 288948746 292340663 144786628 317007098 753550943 858214631 268350665 928895052 11650670 345462880 152464948 975350551 214897564 404774256 745178068 876882985 836616003 880057343 986876449 992236400 103068147 104020738 836683816 916903058 82920934 622161731 763701636 948164251 487027496 957401448 329008544 869769845 653906229 738385765 380668545 391256035 922524478 993747665 764932547 891661445 315854010 456186739 723198004 964231065 260717411 443259812 791696082 961810380 999146572 999237261 745740585 814936733 471268596 618731740 502875785 965710408 286983814 805354809 555158867 705122265 214854366 668753315 332383682 439683504 526200133 593048777 996915860 999357383 241315781 681402471 480413513 530565557 27501084 696680103 230381964 748269274 616563064 639891999 771784464 985825155 603834286 754086898 513163443 994123179 4691371 897766686 185846865 782953896 816101205 837727954 15510486 270035031 473200562 770354958 237803509 630009147 606242078 994937967 480473310 686114920 299201428 591912459 207373804 273481779 497621254 947670155 169281936 388161080 241185515 562721654 572562491 851941881 394505438 427026480 493444645 497804671 250579623 798878909 419695280 495526606 955383836 963418244 464265126 564086363 879429927 913457033 721155326 759731306 605200360 898702668 158743329 268994729 753729220 786784314 75133858 457891265 103825282 874583680 357540840 389079556 653885985 689421789 629172046 658240964 956688310 960053312 153822464 948378668 9635155 447632975 642348498 683900079 812686047 933747759 32902807 117647226 44610621 442456313 655016893 749645422 403236057 563253514 159526970 318463428 709995482 897783282 455306624 647717903 455277265 620680580 266563364 606992710 289748585 362104558 886731605 926035495 337880568 723948778 952996744 980670422 926328103 950236168 738594183 781596546 477375337 776196006 637851097 899806939 299949085 701096191 78038027 654403280 893436988 981627420 323321997 365047938 977488904 989162860 687299224 884113997 771432015 846436018 226092 683169016 664482070 927691432 575426676 844887362 55304089 161192496 434025887 495055601 254117112 604092089 57977776 682068543 300332448 800908681 407891407 808157405 598255118 788011559 603397410 723530645 325913305 800505108 930109007 972735722 92289240 780857736 808435933 923624665 909745372 955135528 429756310 550583145 525307487 764279830 80379192 811530050 848544956 877717129 813767766 949058003 999946468 999981839 519026200 672952962 141464717 827035202 472053062 818163298 748077908 917748081 740362797 765987973 34334446 666314647 125243376 337485531 874755546 929847835 67765727 512860077 20801426 243034124 254001354 709882229 711014829 781916517 526289466 648911643 464754672 490175828 617180536 832435406 943455258 950122671 32298491 627286036 538317225 726320420 141470615 568793091 795766197 979639751 73265968 701768228 793302499 981118827 189278611 588718328 266274306 543157559 939925442 956399944 270730337 694544626 295340437 571505560 299371694 691625842 481438580 926376403 236568855 392530650 28482598 710965844 874236885 991154181 94235756 462321724 508642861 765525293 888872980 923364890 481802036 860162728 181300368 807024544 270515205 552735698 463421355 837247938 209321281 940214510 914203815 919994387 509679340 938322369 874795498 878198025 132264966 451438383 78720107 420319653 915548931 916814663 517733944 986565169 332267507 478696878 827107343 890917771 427601020 463817504 351434935 468141261 911954245 952209108 296912195 724250187 308397622 376147495 563154554 861635719 816906957 874618271 99019781 211619646 151913356 493419750 257864155 956609879 965177911 985672801 957283549 998482166 659823725 786214955 734554734 939731874 780148240 887151411 729180847 823510885 309902745 749439563 688315427 784322800 225075376 593169228 289635542 633673443 230981313 836528572 971216966 978624612 887603750 897457336 79188911 601398487 245878526 456344140 941001259 990297166 851171112 893992809 834650643 845805020 745579028 995225606 205511988 858236540 230587657 583502198 840693752 888294225 722001272 732890323 546706133 985002118 128877251 471312447 447204039 606085390 280838997 706092585 557941587 892706783 638942172 984894118 481418716 678378768 781144547 817476990 144340703 330529645 527504153 671887587 417032542 902473711 648364217 975199799 3085059 229733116 961662155 992528381 773898404 924067321 881669009 924407958 188716116 433059578 783869317 805076047 319281149 338356680 563623906 859323568 648769307 971949737 550452747 651645195 882068432 925784174 463938363 464073751 671262417 811868711 251939785 765697807 820431096 963134408 976383909 980163052 514049905 727951362 115408461 658263311 756419795 944149828 510830539 694006581 475707936 537019274 977342325 993264888 118610000 126832930 295482592 550829521 594052700 726285098 789570 670843994 802620568 932677139 599856768 812102122 560829956 794958371 505279699 820220807 896160811 913267114 857170978 939232795 861214503 964055640 663105726 942913967 5888486 497873485 661997518 938390523 597687223 708322302 801018214 849811009 728702798 793692817 887435835 924725959 473077706 593112646 351984275 755773501 934389000 983441672 55469021 747280264 77490696 709779745 346900242 390298315 159507085 486079598 279261912 678232940 979549649 981097061 715689839 942203559 233869942 884742804 705299118 820581383 627490389 834989780 336931132 653329001 959979907 973547118 952676422 979347940 55435867 634616657 886122413 931189196 124423773 760257386 259555270 824899776 764817430 774868633 235858096 427819004 912453588 991799332 548916854 944049083 250993272 310671842 765669593 905447923 569090822 813069231 559884684 961565830 717681510 963420057 242180585 827883341 872684791 910019263 935446695 965005254 851420942 976799182 953531826 995433677 285671459 289057989 623002821 807054354 328440155 905438855 636461211 701398649 704478056 816043117 90088153 209437115 835788703 911165964 477945992 569732861 476313828 716146049 262477838 547514010 742425629 967171261 814481942 920401753 178245430 877384681 654354125 997980863 74847376 441027975 325465743 898439632 818295264 993777971 230919059 606452623 991130142 994291710 106528468 871439497 303862707 918644466 481134917 952903123 697656943 825180576 874522184 951847571 683881057 796130395 731316302 940218135 766072356 928602736 944337054 993119295 988176568 995227157 294389935 672988319 822522006 864965758 691476125 725173193 740073158 987915719 973447267 982087552 917139579 930055910 590257742 637895513 120803423 775945183 329915 600025315 247992236 921828723 727163288 797140803 542291572 875434352 806201098 942290250 832379997 929495923 203401596 947373838 752989651 862278235 717979527 862600138 140704856 178231275 742101526 955396160 197847056 753987596 1183155 467662443 593206414 826153403 656182735 743547640 475227283 739325872 687220104 816731115 990162346 991659818 883852411 925577384 604939893 666400602 446703932 782901521 414610333 897986419 741572377 943640014 196466048 638969784 756731446 959055552 37713989 246667320 838397416 896397770 828866342 927181520 389511837 443260078 840168048 947582216 703133685 802685941 715366599 992977779 558465514 826293319 650517214 792466513 468308035 893324560 87005607 929874319 188715561 759473327 134430616 425037374 565526933 974055486 176504449 446078915 417614977 992294230 627597339 709909325 649288894 954493968 267547486 413309194 870870808 911107891 501217022 790743189 388933697 739949242 929724019 984041202 827568763 847291226 182034164 329149196 436159847 487299898 780324709 918563377 20245738 289595145 898192797 903629524 715929336 756102466 842483758 895926738 423962793 964551674 483919190 610331952 776324659 990272395 329626627 732360892 194170750 701460115 214680113 951665163 8926960 401633080 155323044 877860215 399637282 977351821 436366150 821646264 23438538 820100314 666752236 969422246 146572710 157931911 669757052 948284761 383744360 811943672 732668606 787653899 226301618 789015995 270519414 432671544 28605734 693193287 636777487 841662360 195690178 589193599 363625667 578495007 407071818 892191708 853142685 864083096 872351091 964171275 405274985 524131664 111927939 818181608 591692439 842829608 642823021 860848302 886417765 953263820 517979019 945604193 360901915 421051566 686283941 749406695 261109854 798246731 157597676 878544737 88999632 572443502 551961677 735722657 868490977 913210679 332131807 623601707 157543798 505317837 519117871 648056254 943810838 986217218 429259844 813610447 816054899 916348817 571670733 718984676 576729807 749838311 559872172 791755440 19839375 978377571 973970085 977031804 610262382 724882884 534773624 652143989 835615525 866814813 745439478 993840111 111578641 712855517 799052972 806563665 414903596 506462037 107893180 284948299 319889797 348194085 945799520 983989938 716221260 969198873 598806330 695353429 961072789 982695492 851219877 913267462 373751770 734022835 66897747 581581283 135403591 490620103 365698906 976882302 50973975 301299194 750212833 867914376 967420816 999674480 212392799 803736315 983338720 987222553 558766336 742296931 237647815 640688771 241089570 923567695 362909082 627222129 638306715 669447237 357844210 978866100 643901516 824441870 516731883 850608943 200245486 886650344 805797624 837494870 745325752 835358782 429993069 947602918 212299915 368928791 195612192 252610466 114979747 846248078 1739979 889513565 11945567 166928608 755024979 814724545 546370367 957021084 988327246 998045176 915528425 928617349 708250868 783413989 798499636 909776423 857463889 988396412 436644409 528834707 388614297 640889495 892363759 895165372 921164982 936423749 790231494 869705308 562570678 599480749 764195464 884530398 926867635 966584442 988195182 996720798 278911274 317322925 779138242 841062220 159399778 572280164 785637002 797323685 884867929 962529477 196821330 672095418 366490319 551584191 399402216 880784029 432845873 714280274 745901899 888889943 969620825 985595122 929951912 986226106 922085001 924458712 889495564 928077323 315138107 911508889 739756433 788207296 552132758 732502066 260170767 406628025 972155627 987910324 511669505 929684186 392854117 978748991 611236115 739405242 650946072 883920126 812074245 998921625 585505314 902275294 266415801 381944184 379278744 619151683 238882306 857695550 673847949 778189255 278567458 807376741 527388540 967913776 257200128 405119870 455822469 954890064 337001858 720873223 255330490 925340770 743806877 851219723 677761063 967836736 691329902 861564218 691968817 711390879 795837189 831557055 146781427 495985427 646696789 648387068 273371384 871188249 441963807 833431835 152139367 829995651 383325215 795507045 701254832 877482780 722211276 923826495 850003525 966630871 310585101 896252946 694219175 803169267 564722724 752016582 244676838 393923021 838904931 854713111 509840737 657044603 43920205 240754587 105123964 282538717 675630702 901180382 575023908 750886344 428766281 976774084 91751518 561228496 831264105 887456878 13499768 479044232 223947442 336157484 679292316 886809005 802871451 828015316 962496155 983469147 962939188 990700842 426855442 439597495 900774593 971849004 442237935 771774555 706308539 785036652 193307657 418855932 111807406 879294068 229863448 239873161 279466144 885241036 699314891 974389696 756037064 937471445 169555843 183062867 213222653 523470254 879518748 896383422 793705542 868759971 597510119 744704361 32632765 111463202 96269804 579382703 358330665 751617472 801095251 856020193 872946109 923113279 679343887 704533664 807434233 912154970 717215720 768267353 777486884 987804807 757911802 800625225 975261177 991389776 126523751 787296632 427086990 874768873 477924649 981846998 162482190 398841050 896120272 941059759 144465876 739643879 219096238 295713489 646491967 771839952 427695337 755718989 806376380 883890920 702945203 932545543 59325972 391594345 335346825 761714192 373224290 911632542 72818971 211877950 674524784 969183141 749055532 842320079 701618084 739912371 200931022 257892933 842914320 936306142 604680687 949093853 974786721 979013054 448904877 805104313 545414980 624263959 592472163 680911258 947884309 988177026 78834183 429389208 994441489 999314110 388769193 757878162 157253646 645285083 527604339 850058502 612018734 816327358 898150065 923869979 826352919 833217935 337976427 872992584 866332877 953869696 422270479 701133920 727575576 879517793 826917928 834794591 708328448 797382511 74628841 667844438 173411663 228925962 943311900 966791028 488956926 649300349 400110878 677511454 361178639 569466219 784262979 985341391 390521035 480699366 102836089 950003647 728099100 776120866 692692624 996981510 826658398 924621240 555573540 637916780 896913606 930509459 231281087 624859905 139795783 931123589 202720282 926891455 810600473 926034109 461227926 819868885 221907599 444575216 653911714 733473988 724042014 765926954 76023313 411327578 15721863 369115568 450771571 993585523 466380603 883319139 294844639 482578553 979141623 994698159 368785685 704128999 339751548 867177670 191558128 578245492 183335522 466695106 937914332 987645607 369221244 773590188 425584657 931486643 371689783 908380159 476671027 516019827 214506361 329707456 398398432 769895943 297404273 309855474 446692528 458112467 221069947 395012104 3495171 575889054 726350729 923631049 910010791 971553148 891318193 950413094 409645557 993492200 479698701 544398600 517773409 998689109 154653019 851052185 766766710 906706961 638007378 876862331 469226758 569717175 232619418 832128546 650748041 784812509 675563157 887147005 10314335 802379456 39481354 489475825 29548318 451253756 290571097 712344420 193022322 505953658 409388035 619238982 146103520 346275141 531873039 567539839 897972079 966399986 71656227 274951089 848418245 934466441 270408657 839666637 101881351 433386944 409926397 706162975 994938548 997159325 728770996 970267563 351612214 830919205 571194870 684860917 236515740 356894263 547287621 671383961 525277892 762489845 487873256 814093732 889575059 968997025 655987586 678621933 767709885 926406348 526015753 751228872 111743104 577469185 806190719 857112572 744592446 917504630 244775126 841999724 889065859 906876497 851826426 918018007 347708338 997674551 338198478 860880394 683471272 923774228 515304706 592608178 772898054 946838151 745624527 760561462 562766420 595074598 266007238 553233012 806209575 946635253 569912062 986138197 670632703 752169899 761802703 964830963 678995754 767964876 907135865 961170227 33468177 479705907 399502981 619148059 181515770 695492465 117324708 867647130 921975648 973448913 2624309 387525120 327990300 936973109 437866772 512089207 870856608 934862626 897633451 985736851 415948697 938649504 378703661 643103110 372793083 751568514 300053074 632726550 426375067 592799889 487972527 610709766 329449451 682115499 940761433 989113496 277746395 935306021 835688366 840896181 956866677 989567167 895644092 905587954 803827050 865232916 483995317 498444630 424166485 870908777 598909869 998453617 407994686 781477113 550684575 884327541 353064403 834666892 547354057 717060363 789055399 821456097 22104137 343868921 32602483 254444628 20691751 354352295 483457943 661919844 172986155 987188391 900456225 912691298 680984015 756981371 653324360 794191920 246348252 506063158 929978282 994486130 74167614 922435664 531126268 546081599 816378090 856900018 323625044 804316649 744992029 846732577 916873392 996317034 923531747 961481070 168451024 303257342 593996961 674986294 758147975 992766114 494599604 983840925 459903493 778963086 342572412 542664345 216723520 606924395 950323554 957963805 175254650 180229396 340400242 410524499 590887834 774048461 602267339 887608733 91931249 757194017 384260530 722858090 834047206 871371446 847002981 865919854 193340298 717449314 313848655 953242335 294660871 731171506 961062196 971497248 219168481 420328528 329267958 460719618 213340961 536492145 955948659 993194052 503023943 631121856 715566570 769388697 113801214 898874600 396795536 995147446 18133244 300641884 821087785 855134409 40526832 131066372 811192786 921697886 225111730 348246678 63532650 848840765 186735260 429079994 508964933 616852578 915146498 930795865 799813187 824147808 170180029 614454148 773997789 960734756 915537512 959547313 623729547 690075822 994736705 995090680 259775928 630012434 672123566 824249083 459628682 964186892 134221090 281858801 458017159 602753630 675471588 855357679 422337949 459410980 790141274 836833156 756401183 950078409 152962414 854740456 784580671 949593255 648931798 952930749 794395520 843685413 338790607 923437307 653953920 722216266 676023354 919915806 8235216 482194900 36901879 311440029 475121231 657919990 59649332 842450220 568209910 705793912 91867868 889853215 326509087 869258086 737386729 834055324 859856130 908784007 302965287 734460935 323794041 633146872 249140161 660567342 484564108 562934960 55363923 321322438 645854794 849674753 822254428 903732714 48029663 203529339 532317482 996891939 390283994 442389017 649960662 915137090 35918286 701270947 107827854 305292711 765666669 997956717 491073542 904426154 71396672 188309961 764090516 927199685 992836535 996112718 896148444 904713789 104317700 475742513 467379594 993334304 967528365 976829904 296348262 547880072 977786003 979781410 923436021 946452069 873279979 945267296 219509355 548457868 53237256 136425446 429928564 902737700 585681957 623239336 801179092 849721271 926476572 987056502 113165448 205126251 60785027 379465225 21519927 550407486 192398072 742955299 213971536 688678600 393493164 518438775 831647998 944987408 659930108 909432631 981439276 997509452 263264406 753384096 987182133 996013925 627932820 645726146 357766258 616957311 992359085 999068822 636518306 968708686 692448299 744350810 244937109 383919652 474288247 686075230 875608259 927619652 3099219 250446160 941517318 978887095 918223775 980783768 459588590 627949939 170816483 881797582 301138647 445161916 675591124 847873770 151994670 698605677 828759443 917285037 785955288 891626369 291559280 545002914 279600043 598572958 798244595 932009165 404090308 875462569 207364381 580035841 623478991 934189264 84612439 493843210 535012886 968342633 111967839 590759092 489750200 501138592 400511636 792591882 144628209 922812294 600058078 979753043 891532123 974487151 913424018 944625003 817455887 937215977 69856614 783186876 621493473 901695252 217334731 528389480 92911394 208437340 10736531 227423556 964435198 977930871 436362728 607161903 893299419 933838075 398981677 532662786 729747187 885682405 855220542 879683930 789153961 855072630 623614614 669778666 245684853 597286877 82777567 720428974 821765875 962332171 219421820 571842430 505497819 696900000 147567085 398902508 142915710 860545751 202900871 969600059 856741357 889255755 352283201 776526874 925061090 997931746 174986352 872080298 109759403 314620119 795332723 810629569 510376579 960623387 649108799 694542389 484985689 652501419 284186442 838626706 839247229 843122022 161935435 655808657 333143256 725498215 190730993 927655169 858977356 862827779 432830437 654480961 723685184 984974353 104347239 331723811 559144947 610484230 211580827 825332659 666056874 870509411 256217102 282758554 611080945 989284326 207421696 360158869 182782124 729430986 769090836 889274406 170559470 176091973 2672414 72174934 87785320 152886049 639873310 799303396 943016011 994193403 844911809 846835253 744179370 840876626 276597570 805764995 719360997 805352047 396764762 554241800 797023421 833903889 768329733 800006882 109615338 667657634 722593393 739597725 402792197 578866810 518725790 799540644 304549338 478032844 250868223 263297931 615215719 652489769 317686473 505340523 264516735 634944232 246821784 553951348 784172644 938669634 245360143 886954247 34204932 823548420 984241118 989996360 337527913 577590038 631910047 927865703 673544268 938960561 386882330 604571885 764779990 858459047 640476977 832532057 653593099 777359864 478447142 953946586 517810849 569426940 399811731 981346552 935840683 967352110 744607911 795899194 253606536 767970379 870502565 933674738 339868941 509922191 975410613 989255882 910988581 947751083 557226652 958263205 971500187 998990818 171118261 768336799 974738381 991826119 520122855 842557878 709284179 919403795 869248713 948602839 736105297 917998584 235057541 924411297 178803396 921551805 312456981 546852059 32332597 187622725 453773298 898888015 332472103 780960271 649099595 947912033 458919711 886145213 401330943 735022965 194260352 557118993 712375598 918293724 495626316 719665259 265653961 833225611 739167694 829317585 848463862 901583010 285627871 911560251 107689032 777597124 541844564 983553066 583364866 839703409 218665411 419044138 61774047 472348325 953874850 998128353 351927972 575453006 962839902 996852897 256493154 417299561 314973583 365739234 574346582 962270694 267839016 663220393 634802979 811232313 380967140 846519337 564451231 648124744 14742377 132415888 707694690 741498543 504652527 529479590 224184334 875456645 393994772 442313626 215920989 775435347 765253077 961182844 378529597 867989238 775970262 809221310 483045981 995258235 954003607 965392974 995868029 996075602 740424607 886783125 850872802 949537693 300061050 821697514 127787664 168214204 673371508 696093178 378165374 445853147 838398968 848194934 802597110 939640899 91491772 748105864 188623455 665173533 309027970 477976094 413135649 608322813 881122697 901453248 674037420 704133204 926122078 956745516 320439614 639929270 583308223 968649687 512589025 525946654 992850154 998900004 263335063 345472550 60176261 814562252 622353475 623789893 281951440 337883756 56885880 280810741 334870266 366354387 532955932 543534142 183816825 259985925 63606666 601750472 870158927 973175546 512324458 833935263 122166383 216605914 379585108 747719110 43733797 531161012 431272627 736379795 901906445 935409148 233061184 371059797 886162488 997460555 129631831 995313579 89440428 195196554 301600426 500516406 150749816 836237725 524823966 748367708 663668860 898322272 107801196 670553113 900273867 964392595 857315777 881853583 363400150 683632492 931233534 969703304 418073733 608123096 817329591 877312731 914186278 969758275 755118464 890372789 724192193 866924848 795234681 858089336 405628573 696451444 50282154 799994460 851420891 856329106 577768214 816665311 435265597 826654158 242219307 493051698 708337329 781735286 483932319 717518786 974737489 992828633 111461433 860671060 728349124 810350336 800606007 975512368 303844200 594093321 244975075 672057607 747258607 950939782 581081363 582438554 654873567 952421442 311320652 405611104 95355817 517511205 900397319 916328475 922201676 997018992 740379717 907529611 613849685 882765113 49246685 424362937 296931019 733978245 293236684 611505772 78272260 746637731 934265970 967633499 815099839 828968457 609333767 773434181 822439470 936394593 986537540 992064691 229398666 621008456 196214786 895516423 749786692 869322413 727239151 929867825 896366735 914020495 710601937 868945987 983483819 984158488 158783371 894551474 382877321 952987539 85003108 262811451 188912683 630937879 4396831 753020704 501661875 785528966 271482035 948369105 272855103 994788757 589659390 912145917 706993475 779700668 49748183 849211610 924163566 932142694 636048567 762665970 360411840 941180528 792169706 840909800 146705078 393609132 496634616 665300342 660092938 833256336 711443073 922723026 899818940 961975479 617855969 868783620 994118704 995677656 223632050 900876700 640128428 699614522 784619377 819401935 878077392 928419070 760854924 898989019 107890676 630681803 992799413 999853404 489463572 710232845 761637279 886653829 414729664 453958138 901513191 990757925 718545314 906136131 236601001 771184856 194451749 570027680 474798942 726596211 142599455 962814305 987927670 999593039 96917559 941959249 886780491 997167551 449770643 952127228 868486414 919553544 482297194 522709676 232942575 470157821 579375018 942805884 572061633 698876847 831793593 939362146 228274699 669588425 127771957 668357386 172079788 915241689 711558715 859445874 876801629 980776624 410491375 640267600 993059626 999001291 339943853 875445824 755945869 932470668 23584248 936826318 259772150 855959391 263585272 925290771 834363532 945192208 38519896 367023496 529719016 584374243 148172361 237422094 864991493 876869133 624513546 992552971 897520488 919376119 979362270 986993473 569314586 874354671 337001036 462565747 675545564 994546004 855254443 870411725 104863890 300249000 473542726 722542244 475198778 873023371 8632497 542567726 937547967 997897573 5364092 26872713 794012692 993010306 891905301 962181284 914010942 924017150 62030026 899150794 62364158 71560988 866992227 908278086 558663384 923837468 688154528 734232726 417110885 491218195 526946567 557548404 510155840 539347358 224713232 551329199 269334196 949426216 13611614 906610523 90209100 121047756 219340660 305193451 697590049 998344054 426170105 925742629 819768051 924442606 817015371 965534249 771761957 900651071 762355623 822382676 272783801 672659561 517221028 687121765 730094652 989329137 80776970 845805952 135014166 188515025 678441424 732725318 872756225 884052896 635061478 661958768 711428445 956124624 852173007 902289340 119731003 978991495 43306403 531769195 562198639 618986534 826250453 826855292 534549877 692458035 129166361 434391205 943689337 977061002 339224754 682082986 556261900 718170977 872740794 875038029 685326933 998481993 963444921 989208527 344911546 659189069 264740575 628028617 955804777 977716893 144851908 834803957 163699317 459111332 165309670 533777748 14261810 257435015 348673771 422580422 595986836 990798488 892461540 994614854 174378560 780506532 337499375 653413452 645025980 878605437 380595652 555022830 462817205 584895118 938450382 999104936 813061259 882478057 329796669 488070093 675402821 894756433 67791702 986472568 38248427 164470440 989049453 995914488 545285153 944879853 208998984 788733368 473956912 944489805 992044081 997221438 171277349 469819725 830815984 846050918 598595691 934563331 143303787 599628479 354585173 806530826 160213115 240196693 221495048 248315772 404135355 883372424 309352827 721852322 531482178 582896070 611611133 827849983 875976665 923223478 497641290 726129914 602334103 615409573 29753401 933841415 19127295 244936892 268939151 279296313 567456544 813810708 515067159 577280508 255679985 476915171 532222297 589827420 674822258 961357183 785554547 909066989 635950570 896966228 444908420 662944873 390023243 769910031 436752825 657189980 970123325 976773818 308973090 332695046 727071437 941468621 943539872 976069496 164415343 275258166 951027128 991568426 953709687 993375888 777111203 980968754 166674812 506218641 271987242 825072981 64977077 260282977 650659975 913109652 410840696 743635383 392667184 996066580 599626494 900924550 307927999 842782840 59739508 672464363 844879668 985722276 325112766 372904965 433251903 524994351 176450227 257636100 640081551 653648459 926985737 954855316 437939353 508905942 978349044 990171575 82432417 754394533 644055519 915835672 567994314 576351549 328723553 335973245 942466479 952907054 688162567 710808609 392230791 878948865 313431392 677616810 882856021 985815481 261450116 441010474 918809535 987800003 951561149 999382660 241969011 839687519 456140026 911360409 845245125 864691838 353139591 593787051 427843979 861656104 204021184 537383511 736258688 995089496 10788699 548465667 834075930 892988156 47653006 949608260 773540731 994570943 157118846 248368950 807670899 808148331 792038897 958578836 282006596 488467918 820726221 997825840 641088899 867137240 517082223 660608304 654622390 911070769 460109582 518238488 50995821 595586094 121348275 893719493 914505841 980800092 581006420 736724663 511279642 532821889 344686314 825231293 289210809 742814486 284857142 808672540 651642672 856308407 597903401 609551233 535965617 704775354 502884140 711056160 439218438 767315299 100843352 298075291 942112334 983136343 778928804 867998394 347703453 485047454 169834449 374465186 321655560 428800267 973366499 992230395 541678223 938292926 912069677 942228579 61253343 515369878 988136291 990874917 973409881 976483459 472782483 824071958 397362418 689961925 112051347 729087310 919242843 952344854 298102780 370322841 558673807 816694501 929393978 985444699 522858250 829559846 27529521 678514128 344138370 931293804 154190565 929307188 671768795 708947468 600894292 626266000 444628519 834393279 104800559 905297561 698055874 699060876 48363347 660246922 95086281 296992782 832844859 920556910 395392696 665109156 879512738 889129298 730423568 743346030 125986038 641091145 507869526 935765951 77611841 932359339 54229169 240970637 243326900 644713939 895237076 915596671 306168222 933872006 694472587 874290920 562773163 756566111 473753262 928085838 228495044 531758552 307120434 321887313 773386523 858303085 9317119 315735512 865194090 888678308 231072576 757032500 550461420 564248246 347936968 916653501 772350443 775265058 368127424 904871571 514839798 752582191 189831865 536808613 517456753 668511766 512045377 890110748 771819702 987379738 174136959 391990773 521883724 594322223 231179053 658674646 117402503 420541005 884060337 949925961 755687742 757723546 304701175 965392111 240342410 450438864 117882918 309374550 808013950 957612253 443195756 918491667 143059680 380432129 12455428 80025174 197941785 978726748 222240656 346622224 809524000 951631528 810149446 836682024 132658270 973138397 208517131 463129504 548744292 753566614 61524556 152443615 439769192 673627013 741920809 952311029 590377939 640102845 250997786 513500717 642302712 816892426 829239113 895145277 577696279 905370860 855708350 984770262 147450589 905479507 551986026 830045161 310414785 877509619 463684269 478331111 672904690 958328701 461002832 845497597 429372490 688708813 428916328 608026156 941077003 977371168 368679409 581789784 618007206 631604282 736893276 954623474 661663320 901778029 598183586 719632984 644845214 731286920 122801033 325184362 223894466 231304004 751175686 814650614 622092079 801790541 280943290 513138319 946834007 974709817 801854098 892509385 323949341 934255935 945141332 990374577 701344988 855429403 548333392 748421097 744424547 941970508 862734752 940882745 959220766 983950202 761622478 957005745 80741383 409995489 172095231 333462084 228284770 575498939 760988437 935213675 378031536 958788285 385531561 718744860 541582002 712988652 374448408 675684609 417065919 582267498 404933431 531855019 630033825 747997776 900239192 950391143 154432696 194991333 623785106 667590051 959270961 967051709 448624825 867175227 207687775 981029876 591667783 682655235 274317818 928290058 945614823 999148216 257912573 905591782 730655071 742499537 51989830 521727755 327002275 824345171 251778419 277139049 374103361 834198854 685279372 858162050 185954801 233763833 55869934 760329628 473210394 622899465 819678672 897831204 328366315 688791593 630868071 988874119 978854850 987537834 148756557 950021610 906811682 965552876 235092557 372060259 151439462 238352368 858369300 964190008 353873275 553492800 574024503 728559389 935066326 998367756 915745740 967271052 287864847 874021797 22496517 57829446 486259780 536730416 972320994 989786496 470837307 936383521 903812739 984804708 168704730 178549476 539929810 556718598 389727718 704343082 632543475 712573079 668505264 813155318 242141572 792252548 386428636 896644052 177146122 269083325 66503646 350085070 959627597 987114530 195070489 282018554 893101653 900540747 520266958 908912723 444496995 561663328 64350769 543565007 931756611 963556896 887578682 941378521 91516330 926881760 474884886 522677325 487608440 844705603 283349692 930604968 593604746 883242015 274189585 528694406 771885433 821644610 60347337 819446562 394364885 648537061 552781769 633068347 964651410 968831868 26487173 101131775 957629503 967724507 829098902 940656012 702954657 985176674 480961843 710680462 358525657 847814258 787986030 987181199 230549061 416466321 891254993 956363944 575001827 979182436 39614362 313617084 994941201 996215075 640364668 853459644 813538695 904440119 186067848 398230210 510373821 641997550 873543602 972772039 373123889 601024963 747356097 767484637 209287467 521004210 269000179 902251480 730012331 930952989 792764056 859214126 989274925 991635558 946691860 973689420 145687140 624989052 111699175 137152401 431832651 631915635 100104554 658992777 921007373 940254131 918134376 967944758 613141013 916331104 7204761 163705582 844324328 910827074 929555061 947123439 227246217 625243244 56181822 516004893 324431056 947276572 229502945 436530185 360717787 569169141 180974014 330737885 493989155 898790643 564072338 739746338 983547421 993574303 652400378 970283851 31446848 734741787 33483258 729741015 564415769 829062301 537824517 631379128 735968872 776149922 110379063 138531810 409224539 863653750 920074159 936250645 374923642 469480636 38065473 765220405 96188819 791567585 869460836 911723075 229918588 428219215 219832595 651771540 500680295 813556309 362690623 744320505 962773385 985465763 899707161 979303125 336168122 399278333 964049775 993923866 139978471 232362895 954929489 970724875 282066002 777030650 907324584 923165167 846590950 869041276 720856774 871686085 190426396 276723717 1160604 105526202 453763274 591509316 52242424 661262382 722731269 951377717 743875616 839530047 87422542 631824119 258047566 802969928 655157792 895052146 110678075 849837982 969667878 974440295 601210608 640081999 983603161 984791833 554785541 885708351 54073270 881563882 959776052 987884738 249923564 310912272 66684225 414101223 319317147 714186039 999150720 999937374 869130527 911907810 134344214 442827570 395879639 814539429 933960929 966531253 49525291 313376918 684252611 999838709 704920866 954065047 735530106 839389858 833116699 974949410 51671525 647852971 765806580 931538105 371084513 488228561 146816672 438542977 25607802 87203983 303780088 397726195 954074212 964487946 547971941 716001534 485840958 799227930 479910179 815492991 746533053 976630811 259634789 444666677 979280479 999515725 929793693 969559237 770515168 999067327 16471141 758128121 643545368 671192313 512901530 811597393 839145530 843304475 62241856 390507317 459336097 742371995 138139340 692577321 22565142 172131438 177032972 813882768 258154895 884000788 246130625 638668677 784998438 922312387 833094322 906126166 42004618 499563767 934967759 935038981 517752920 809127019 751932830 968390394 441748258 758104971 743010772 988661655 965171133 995573844 679718214 768133162 710103617 723870160 367832698 529468896 61219062 746273063 123306513 228202222 500941862 680615038 764022669 781894831 841156487 843072672 777962816 853656564 388021872 737079898 940918746 974637179 442256185 793456148 68047660 343472901 891371125 919435754 995258925 997237291 359671911 635509086 816251469 823613569 230404994 401620492 383968308 895334823 523545174 856594054 529137275 765413393 27748721 280219382 999422107 999605474 751485353 898286130 489167489 674297051 746276349 908973580 991628013 998536445 619651490 674952390 61123205 636672265 368601844 607194167 301906986 776685146 544427656 638369511 47370693 410398272 287364062 909782544 365769195 809051680 471522293 997646928 169921913 242568413 452586582 779658139 818031131 898570665 676806810 693606170 159064396 597197607 567830601 969568177 562145616 692844360 179408483 313003645 69452584 592791516 967793497 984322557 339715724 356971344 880507733 954572097 872683 512064430 21431146 435863575 135994934 372155631 529806045 716354282 557987341 873147308 165483837 748724640 624979756 657395039 264504752 648107811 209395448 649380592 602937907 743646215 249460889 630450923 749487464 852228757 640261170 891435010 555961569 699504688 268449339 801674751 999128104 999524638 910611677 950631943 931912369 988592395 340431967 492853428 744536630 782025878 987180423 995608457 377357504 973771468 385992115 843951917 489638714 673347684 620468466 796637874 81001655 485018575 837724243 908527555 595830545 829122158 846957357 909396734 411453438 958718559 608361999 852345706 899200651 982107673 587497501 961589158 742868373 980893472 734599086 865347643 152467726 499239822 922394344 973237209 628000006 690245038 401678090 519085749 186209052 581164630 514515731 879878903 704876964 787065451 785422120 924269946 859784485 871133132 643991017 937368704 348431249 552763687 881988658 951054024 234752929 445010543 809349563 834466896 782841606 828161735 858157706 923092027 48170189 405935600 893746619 968384660 875936400 980701403 221644953 950593145 342913463 498051767 510181656 967323162 174810227 935477855 216798041 942822495 819561617 864813854 275424588 717435503 102375822 257338304 594389309 611963312 821723318 998531848 419071715 529582497 820046074 936220061 56767058 540761969 83882793 352109432 924157687 939176038 874004253 896823227 202857919 425505623 14655776 122521498 985220569 985708525 373667938 571352433 633109794 749533041 113341469 404032815 257667998 380990942 203648212 271581261 147729877 712728333 844709878 853467067 452417469 542636534 640933188 782038503 337034507 518429478 581670879 724830782 941832401 987487138 719195768 769225824 617036492 701656397 901000309 991261831 318942744 876551195 516593746 870582606 325408960 515602072 711157327 848949799 386103300 865218851 177624359 522830179 590104577 645418139 335294680 632244932 863714869 938007433 568498597 677486378 674556748 845477890 347778042 475504623 731703364 900390960 996996793 999973938 138339609 152732851 677682912 971404219 334381343 598972428 875665933 880464606 644001702 868840128 43443002 353305750 737354876 821600589 955061476 961746533 259758423 990038860 865481587 879731327 465801808 947648331 735471031 889876812 124010279 650309694 86718458 440894289 141841061 350297152 628118654 905382363 12673411 25986186 488700828 691570997 426858418 514612245 593211914 904169306 923431126 968298294 27007097 899335809 378983362 598405613 466014381 737934508 152466038 799011523 987954195 999302824 937258132 992454660 807877253 891116512 541389315 919221697 315151861 723794827 250061555 735540004 547311244 707272868 775850175 946915807 730817908 820344251 29213923 482638977 367394043 421796560 236264589 838709299 694961144 913914929 603982193 974226098 371471438 697526601 706003190 724663310 365347929 892903446 829676232 989208524 714478790 775138802 745241990 871573637 358866653 941376852 901218935 997245778 279397697 474050156 668860040 767320243 246078741 496467254 642212349 924504994 710113821 726098643 581550427 898165125 599904466 836240855 488664859 696573791 517041041 964999935 674196182 889140129 203759090 463270190 815243957 880279976 744431327 892821402 100365875 897309783 952101308 994098741 237010138 594901065 218481851 282007479 853323760 881255418 368804285 895003352 936061940 956226425 242319130 705840684 869275256 875175650 478604860 567459820 621781341 969005752 904516784 931332551 871405003 928804565 398690648 504102541 657131393 685025254 407518272 456170939 44243338 836727207 291400267 727210070 725116144 851033764 508143288 753991292 321824719 697897135 662455459 704470055 735799327 822530618 714829885 801170404 113717688 353217757 846537574 905709697 439535511 771135994 644265647 740200479 297033780 689753533 933244080 943432187 821950314 866391326 729633810 816663850 356004301 671595797 495358532 551255421 877218180 913309507 25416355 632285494 581226152 904482189 159058714 771442622 291855223 584940206 450983424 821595885 378286111 976191244 85409449 890419213 456046276 854521365 965339286 982784048 29821330 965080646 272406153 612460026 818300513 987790938 903742776 907848434 273617794 998824093 855339424 903606315 168634505 858591622 770776830 785456443 471205417 646248552 582164504 640453167 455792606 610156810 193806610 559337060 238177700 459645171 515246133 712742405 771126219 881683382 849472991 981273375 720485274 879798503 308570628 449233025 383572120 517753027 691200480 868433468 304539521 523716031 719280466 928264546 472691644 986167495 924324130 965335977 749345787 806622635 673493465 983443581 404057749 500653354 481035023 919472231 791920290 912154271 854378882 996689956 437722551 489789550 496439468 745762941 205999964 346428526 940023217 961867495 238795407 693981461 352571442 661155969 877414686 919088560 730722690 826518775 837008730 896381668 420633722 981416175 959431383 964844774 709018950 939190828 133626392 718694036 197826457 345349262 467804691 983714860 28757197 847635307 897740240 957416971 675136702 797888476 805480480 949454412 452972070 856048905 218441555 876575636 439908819 875999043 966119070 991395531 987596340 996225164 947267705 953269356 638407520 905677519 947029860 962212680 816052304 946885606 267235359 640624962 949863725 974533800 746565640 890983889 873675588 970722654 481470159 897147438 294557302 533709284 424186044 633110433 845075923 893089628 464250311 804053641 976916751 979917853 120881370 199295862 666539279 963599173 364169554 656737243 787159694 813433468 893414416 972079517 942870383 990519590 205649712 843576669 595715743 934334614 807759781 809349381 254734278 991771459 381796303 653021053 385676755 884665518 85710797 447821913 935501514 951218072 271715600 463504670 108290608 808996762 920037881 943641013 949616558 955046080 211623025 248924190 825075933 854629172 873126756 978189460 813294688 906244981 2707042 820537892 229778931 912038266 815898563 930965954 639817499 958267836 429187310 809384450 389603029 857619003 990494816 990845036 44292194 592262485 259035661 851426211 70833361 191180368 648812827 955203745 222760258 806811942 175701832 427591200 414835284 723070009 248630406 977748585 387645562 861977272 823659055 882128722 841399502 900722699 901950544 903845994 742186511 898178118 935511236 944392697 636462446 725059088 228558441 926942449 987955951 990219854 939488625 979018807 530479800 578119906 942219265 991559751 195554997 621570841 641369349 863206996 523486301 735343613 29479438 917948333 887036483 932836571 768765854 857279446 718896200 925030651 338865699 439614836 231212467 997131268 631016507 688254442 49621060 398677462 168840032 716773386 885773537 891237925 960874846 975029485 35150887 909765961 33990561 763108949 680096709 972274720 180194740 511319113 267443229 641125237 495664216 911712790 507990872 732455354 794499048 842354485 452399542 818407510 241405378 752068618 941437219 953523906 582305942 899377513 818922502 942289151 531719414 725244955 192590629 419778945 976177314 988793278 112225778 333484413 574060560 823347466 225161024 833522854 428590612 498586675 202229858 444984497 356573368 892282369 833659006 952536301 30132125 538782685 202750201 401409236 97132041 200242205 331997833 697982205 848113098 909150758 76159454 281196482 300824265 585535474 373942538 552662648 208374833 318726913 20741104 798405172 72985546 456514869 804332806 969218244 834573875 959235002 780943093 892321678 515569190 914443021 757116891 903692643 107200990 485530763 687358541 805280167 731993179 784139474 474947743 852595748 188837225 246511337 134095517 811311663 807568337 943201965 329716515 663335998 22729416 450780249 856373541 953569232 981641945 997236139 966007534 982033392 29385271 442038775 117073311 709198126 844335553 852120520 470051395 721752480 515136485 805990226 260097092 871474236 824836531 965655562 674592661 748286925 599339625 656115635 150976103 561569511 846998888 993066052 853216048 999650605 505021867 527896547 402945498 442966552 230929217 937356274 633898718 665031142 385444454 559421432 394467436 949957850 746113419 917234260 395088825 828615244 71544362 782372852 334165878 515938382 457149341 770275242 139906223 483048639 252897624 844395356 616119250 934744457 894015361 911485831 53716202 925397606 942524003 982223133 643764612 678358306 780955201 899033392 810831095 882980874 229870731 249529947 226539187 724850527 784675004 885769376 342538709 617851456 292463224 634345846 40840612 923734655 372484884 430400963 420672844 872377301 735657427 750032112 170793557 770347583 558950597 827132849 18739786 691778204 128332917 530086998 472247640 781914188 857152831 938224596 592596968 615578626 346564026 801790420 524361137 974453493 939641725 957005640 266327550 819350405 546053139 824324226 616854382 970773123 926841521 934774703 38022981 238928043 413176041 734358765 192240212 878885233 41113182 898296768 268870421 578346829 792317644 981035852 103507492 812172677 114146888 975898569 217976507 879169329 131485737 245987688 895228746 967537515 562637098 986759986 474667176 755047211 786859835 816489846 838648464 854317418 80985814 265733465 40600424 294041468 264567239 360878926 774313911 862964019 467187631 681710702 555411738 854143324 959319773 968247474 872713178 968467886 335266507 844318739 615803578 625449077 349965167 438485125 135129148 864341884 663658753 795971908 833371248 905717101 694946074 769593394 195135239 280979643 852086936 991742676 381419691 941665556 263489203 604584914 22421548 483947545 770265010 814518554 142204987 674398354 644623074 818211102 995415256 997557143 709049931 897818482 666335661 859458700 941940728 965712012 962254668 967194182 499036331 866526890 408841010 590564142 693600175 986296689 520128434 798297676 283158372 769245282 175210994 986249248 855091998 876112751 688016772 938061857 400855105 450654742 492021832 754618962 831454364 988986154 167074429 791004362 819460796 990424000 407453280 947780179 844511223 860695870 695532100 889607130 141833038 157216182 484778795 904891878 986260736 999785826 227497036 446432076 73143794 795641394 929529963 944353626 917522789 935329782 97528549 875052505 929196257 945758220 852323333 899219971 79515880 153891546 667307393 917102449 300302986 742535727 943301901 976845534 854941301 930139417 78705036 165911330 864923568 968848375 918533592 991510216 892205415 947725861 867347103 896774490 655494684 792105458 511927341 697720317 498363705 917831892 961580835 968593173 11109383 116722343 474394348 993043522 681630807 805064921 963627534 973216240 230196506 543233560 490268059 715355416 885735785 963724353 168656799 807142399 784066026 876075623 16963492 565467634 410886748 737364755 351996958 937777807 629070520 935111800 829642429 919962560 743352819 803934613 524710653 674985975 711545399 973714953 64404066 653516053 213916689 439026695 879637283 918180268 659683680 930544553 685867057 816665470 631524813 856760469 258742803 938164729 135332692 808756336 98051308 102348893 591565362 630393902 525090951 808919625 264071430 936360843 78137294 122826887 905678135 956389467 852405172 877451969 719268885 820695942 37528078 537115400 975366494 986577157 170088235 544491378 11558076 981564723 777354076 872514195 623286098 958416182 736848704 777859321 39104134 778460233 147767864 689444962 479671007 526984843 416509040 614254492 204251943 970882021 713742187 778157190 222883860 803682746 101236043 455100660 91895966 786689091 295116765 823457102 853256463 949609368 633037270 685083755 795089468 969726401 875901083 975333051 605340565 849390966 73919263 160669508 406790148 787062261 325529463 551272080 684871269 985286500 730727049 992583330 648392815 856210222 964972631 983995998 494905184 633764094 235911419 522338749 41734761 854313766 774598846 811773581 983600985 998039535 211509615 268962022 250784635 964658364 162405395 231436271 324708430 428112887 743038690 752779230 522247433 623972395 561236247 837136915 852238771 933286018 981753971 983512853 553654788 982725934 544750340 709347086 477378265 536253753 252208998 549269586 426100948 745469810 299751893 892353125 754447472 852364502 19658922 833872950 516314516 534146954 48592669 859823008 571689476 875395722 495492364 960211286 214195099 785366076 66902617 313114351 208386803 593593988 70441616 252819570 334939907 368509766 861866753 893804769 359313921 434100117 143848123 544865189 234491269 372189877 175479386 352791955 968560290 983612491 989637543 994925673 448287520 966039926 502378632 845485458 773417311 952626976 458558482 811104202 362758535 819400561 683179931 909220328 420802057 625688008 231182692 987248670 177354624 946089883 735995349 854173235 765683946 815930035 613630673 679396432 632453506 852898557 286259398 648951673 148772000 929805414 360879321 890186623 391100405 738997521 528362347 534376813 522347383 575758879 209700748 213339502 130155812 656260863 965290519 974407481 540923870 919462018 314412380 490348920 6585598 172068871 47852621 611599307 628559784 780100773 118850126 922864142 12968134 60333168 437730008 588761808 471067003 620769932 912089074 914007458 605735114 953591962 177637090 415090753 198220180 408576974 360448828 680113348 313824230 398528533 768311346 892669531 79692832 611390561 807959533 891438805 265237955 974116638 794733479 960406356 86597527 614553303 155121889 205898664 976163057 995719264 727240823 819530922 581663261 880812653 662750714 739795752 456696316 638079399 329571504 795566840 662634971 991548153 457621748 703621923 986804293 994867676 734861662 735032135 969016549 981233337 47594787 299894387 660830728 683773969 33953913 441469846 875082145 919684479 300149710 451778124 200274356 435839267 733666327 925568689 731312095 737373295 564520323 662718838 7175860 369047511 422071486 456174155 44082578 874307815 236769626 277953413 29349214 457438114 146973903 740779257 464067557 982876460 654733826 844622154 137765917 542146492 524894082 975153832 804330015 888872611 590438686 668231608 306092936 537653715 642920988 659843461 510861584 616545277 993093606 995212175 105917667 708061864 672926051 904649260 890132604 919559910 606307856 800963942 975878373 985922714 829476549 954243061 575217518 809518399 739888267 950934470 58579850 567983998 41165992 278115704 73055134 413032648 263739590 571292475 703883644 760754152 145656316 181113202 98542050 445979018 411302948 580055378 476601051 731988709 703846915 715107995 938638372 970374661 266111767 594791880 625856075 744810313 939185833 995036682 232023413 913636517 515843403 542625109 81543442 310131032 482382983 699926987 155264300 173524361 569714455 760306572 996383095 999226708 741875814 934634361 512797243 697344645 66229313 428596529 609166671 678133893 159080538 365791063 943359333 946909788 349719676 955609080 185022136 346289975 923120754 979025577 752452587 778196721 866072365 901537463 964807608 995417803 657923839 843901882 702991131 763268386 910516576 970731479 809077446 912348969 322477729 981383239 453876945 470989821 895629734 947702796 127928982 905010572 381799896 416676080 3568645 753106351 444974760 912333109 525483883 969790419 570175434 882703235 491721698 596890254 290601300 978857982 881470547 994755399 19816394 325245605 211652696 275280475 533524858 852112170 651763697 834451163 524629225 935963176 363109722 749281381 383373218 523917947 861908381 931581239 900283127 986261190 103392498 550223751 486271209 896121713 176775321 831195795 677442203 779210772 432154504 556294521 156376571 235819850 355762851 795751210 77625826 161426463 174755697 178585413 576748329 824098787 732687430 745611229 856431174 996604764 306661597 590271809 867318054 902435850 174632689 770279599 550293230 703391591 299726373 918520402 683532148 819734502 324703679 433203026 719302226 870118948 756840690 880671699 153115580 728052482 615010142 852011029 652128311 955086659 122493463 973582448 526192390 968110181 674784239 782548365 782382335 803666694 469718055 666661580 71871633 467461774 665056292 845508755 710731506 771990038 496963021 793552889 364645568 798814787 30372614 871363295 605321457 788037013 29732284 175545359 423303953 909649712 10444734 272015673 968416186 993197654 992760351 995684035 85011039 216916605 660945192 988532735 568450006 598705792 245695695 744989046 516038838 690377969 757857988 779674799 398548879 775296731 805600693 881533253 423836470 983116506 330704922 733641947 534090928 792422943 729386082 906462907 428301325 945330821 781753461 843442454 477020082 929264790 666095975 811236484 490332405 780437453 234449535 677763861 639299086 658097058 746009377 917402533 16568391 908444583 310628397 861051853 858383426 915302991 488977562 615254706 939307026 982081195 331588733 334990852 951904365 967526284 750350964 925122355 909163346 944963342 801650309 884769838 603848036 934213197 971366674 996610048 728861422 770688085 144776577 675231340 29997011 345343181 170495475 969503440 719514010 851704373 244266402 441997871 894842453 902635748 389665790 840224244 687930787 758115684 141014442 316994824 250056608 977802291 898519611 933241198 883225084 917335048 316611820 526960806 265552578 723815468 664685419 826994147 812639492 863514531 449958711 724989726 202448536 267948513 328651543 570219188 610335313 924165079 851469021 928301418 41342279 588605900 513934354 882236756 28650164 142644343 291109582 886883124 88692147 673717717 347839384 492600300 837531408 948214797 530341871 935572481 232554124 371187753 122225786 589732754 795886193 803553836 70898866 300196769 926812279 961356489 147039121 590062344 221325104 759982992 950168333 976566257 148427192 835216750 686166702 766726682 268458282 514330290 215830221 821257069 857583984 947745261 743098797 879775237 172429461 559940769 23819542 453369050 996371649 998937817 216473225 927736129 230815487 259891452 544412260 802925642 802798464 857766114 629144218 880696415 791721918 799242848 315473384 988965343 87106916 951699152 707043992 929360307 772549511 852283907 974664830 992005208 777008675 969244553 18716183 436831733 409287718 805785365 915823081 978866388 464353102 822318787 439899721 823811495 447976349 590060412 446853217 760566695 960619406 962386811 182622161 861626186 566200597 999773949 381176258 864157654 336147489 746402951 42516639 841921200 227784342 407373434 882896393 957644283 892800420 951670146 338003956 620061327 305116947 849748598 712329617 992403932 871885093 950253977 894330960 907024228 414735655 698123856 396402740 476908310 392816323 584816645 126001206 427998917 72848770 840050157 894213400 933379636 78426223 284336283 39258325 454980874 801678327 968506014 936450664 965009717 702462555 942350808 824502619 991839898 317078250 371693246 900187560 961513600 301793012 335695015 112687905 584980288 447105870 779031023 721485605 978474505 860836829 891549640 950626288 996460325 159231256 576037698 978752253 981412776 398082823 868750871 390188043 846585668 933231407 948058110 242837336 745411155 172776974 949830701 820648596 856200495 251565587 773537820 617689177 846859463 443367847 625747192 335836859 546494387 464714238 954143927 543483236 836135510 923418296 978576791 403281427 908713785 285848602 860280576 398502259 852691295 593650299 798672059 699286770 803727833 113248139 316571677 582715873 945924136 287568645 494730263 139090630 712517749 711763759 900252033 418277995 772114106 680685857 682029425 875881652 948237733 586829598 829849335 8554641 453107478 698766834 915721559 668396357 993048028 89190774 199472923 461275385 709971060 345797784 454320715 645566738 950510712 530358682 561197752 802775317 995434389 913277986 984529479 978610702 992893260 689161113 923858442 356281972 413897378 558018512 734875989 937526925 972603619 734095311 779264094 106422379 182576372 991505201 992987915 698314404 923255533 823919951 943445324 102767548 741509277 286381060 613355807 341670592 913921883 390993734 932800011 139589481 396200385 744291832 835839326 279891895 913775478 681053778 868877889 642332900 838380104 427429949 994968002 643242798 898009981 996365599 999563485 119428676 244064597 289920366 883091721 67262565 964481115 751878687 952632577 741471305 782164838 97376978 979989474 387516698 966027897 145063473 258354188 680043332 986067606 400146438 904170854 70216134 516581577 971113552 994467290 173993048 969542927 574689934 580280567 188111662 566695450 652329741 768866824 7650762 241049039 256340381 615066325 568272116 816557042 269198995 351656691 236118124 594150293 755192463 855748370 499370055 822648323 996236709 997138625 533158220 736311025 842076009 853426450 559761049 983154868 791447047 875329328 990743727 991112000 918198807 969161372 583597454 903107142 338201170 851700738 357160378 511586044 336283575 891470268 642087556 747050007 534797937 748377435 658223253 903497329 170392585 846431832 768854952 884001689 29731982 52020199 946646307 969526216 743605421 968631597 505145439 942166320 230445180 388245490 951818499 990757245 730858469 984409758 345883831 911964467 581570537 763447068 232855108 511742289 16670469 319141536 769169301 875911331 976992360 979997234 995686199 998853958 945201644 959843328 449978307 465238155 710030154 762812996 102911540 553176433 359380985 498028717 84463426 103604479 735336767 970855126 601337558 682819185 265228098 682413862 888724086 998608588 807887861 968160823 89099303 285965876 895834691 912720099 682410803 730318581 573860168 717906745 483129504 759559057 461311256 900474943 157041920 489573917 551825072 678364254 104053588 943540787 262713063 982587090 746059231 912201703 932656992 949196990 770332743 991373094 979940038 999985541 363431820 534779149 320682642 700415546 996734702 997769552 456992399 966077848 75616553 518094157 232095522 767605797 257865340 689751720 304446898 700202270 562320968 953095433 695982101 842994705 359500041 390962109 195264948 242077692 250736232 307023264 323104179 592889558 237426330 423493398 89578367 525637872 593893169 708555437 861256293 909328006 386577599 865045424 779520369 962109646 236333816 382816494 663051727 680803044 453966745 750522907 80345010 250564565 348423923 911767621 939325717 967944107 718204528 737162076 699236895 757433281 127024836 553022872 992145085 997164230 933607766 986076214 857427083 992806324 257920811 583574969 819492860 837456263 45499256 773958648 950581667 985772507 712962866 775808592 983904251 985605458 136472815 980533115 736067620 766250188 902390935 929772938 229568712 803843042 63431027 132631990 269558993 416072438 932582767 949434160 501374521 642929709 832015494 965317939 934773274 992860646 670652290 795169702 111577401 655416799 306352205 396352216 810952696 946583249 502906585 922697982 417018551 574895403 783396742 926710592 973682801 978706691 782503167 853129763 42010712 695697380 987274230 987662479 92917636 755600932 675193109 916768433 360877246 810236728 265050643 990560757 888385881 904036029 260317333 674563695 901195613 927694110 144179990 484444111 990076752 996745931 564861992 929544572 515568334 859192511 113889418 811996580 764293684 807792595 97152484 351649181 494601377 923668683 458434060 513981397 464550147 863225340 752674961 866407554 628346044 803438201 806674140 906692776 52376799 118435602 576395686 831701915 35788632 237442845 693037797 759754154 984689079 986419124 652439793 929780816 74422135 199760694 673808833 695508660 944361516 965138565 324180344 835172065 485225025 539680969 738339922 883021277 292833458 524627272 366726198 861900473 932477110 954690548 140515174 907689870 418392351 779310320 986512465 989533511 865777695 971611633 447649011 652831224 400964670 613523284 979311048 993924707 192146451 733665315 86383920 420171068 523360022 915892520 824133991 925707971 763984895 859095818 349425208 912848589 90900935 570363453 743468769 750569900 550840680 713435207 233572781 622926189 973766379 977201242 242642509 301878561 951391788 954351876 86047326 479380654 94441010 947156680 17607160 550436712 302461238 508572887 259016702 536832978 798407292 810643259 867941457 995161724 645060779 913753594 33744323 819481394 551941814 943542629 402785733 547233710 13041823 297981270 856346302 975558678 93950026 401596932 869970218 948249825 936879034 992821650 315151840 682233251 809374207 845197547 962324468 999308983 83940956 188598800 127079399 249235455 391474055 415230243 349465174 655632869 101791470 412900526 807033629 887586061 407540007 460485601 77467004 304386961 213753036 219439884 427978119 962259628 370309107 871632558 787183462 869833483 397494863 704535895 101050965 344571634 249868008 645355769 200166699 374311727 975990192 993045517 264648715 495014142 495835851 886975140 72440026 469579334 615701438 679543691 23120933 703892692 296339672 942173620 173290809 591551519 1340958 560650641 994417674 997924919 530328067 531893140 730455611 765058839 982127876 996990429 401132455 731677216 378483177 477152088 94648156 532555554 252970595 485282635 102944094 919895169 80018245 466013354 788173614 965052481 132657409 721365058 555270392 599437992 436427956 965497457 323021599 691631230 136359331 776559447 313991930 489197986 160325236 804074322 863967551 988324905 981028595 985716234 388977017 899864261 960251220 977207012 438959375 682141578 640783627 893155743 696435028 767392067 579491933 851859732 270965423 368013609 818122342 954434707 738718023 899354393 792688169 961113528 812161825 974739974 923230799 988882560 643854423 705985019 320425619 485945959 832852377 923562498 407713687 732927266 679245830 684192240 189992304 995037359 924820895 958027471 144568647 849557499 374670099 418001963 473557747 935470819 179038514 667651652 194985081 690342556 797703995 975183756 275230881 524972336 899474532 925100466 675597712 969674914 244430380 563381985 731775531 910364324 429938244 919156621 277544736 855452312 537793994 679703839 603329993 803253064 411204461 561797038 786067646 896376998 474219139 925046872 313782593 502181032 582451189 649486365 514249343 857815318 635541121 680173662 200654625 774362540 976271722 985025745 480002967 746403650 710505357 754581913 723625037 749700962 367644101 649553038 652282995 823796526 473616599 587398756 283017739 513184956 747557211 978547569 452386044 847890659 267661077 716349291 117077089 505344362 702602622 976571056 123041760 829446264 138407325 410797229 674738641 788823641 422936215 942231630 566090414 949159508 437351991 717399293 737670552 772765972 242953117 513411015 468647113 639287709 825448849 910362912 227943166 484336849 241897422 655763001 921548569 998234133 66969382 668282785 348404122 390347368 366181635 743622054 780273803 975347637 512128264 958105794 728917324 858703450 390256161 718825025 665381526 980432270 480199769 597780683 244984128 673458949 203875403 483633248 821043083 837344932 445195977 891837385 232515169 631644241 534437407 959304419 481777961 903461311 535225039 684898020 276783517 800044498 1361377 852769123 220379134 519679385 512126216 882130753 487840830 681308430 631588238 933811816 824212430 834175265 481086419 770827414 335924780 977064061 774965789 863104416 370245359 591403739 52643518 291476696 363353290 623623127 800711167 833516555 596062728 720767857 672306840 939476990 985976243 999344370 489431351 555495317 981901838 993639420 141603943 601868905 826154628 840396884 961071520 969855455 286398681 491583220 312686552 511717357 370316281 679013256 2503013 80035054 421613432 514570135 912314819 947707949 99925271 283988346 185446274 952304480 910279103 946904793 331880216 335177466 392875545 972096915 169086391 672736164 719838900 923852386 917812356 952627104 525715211 677788232 53047388 905512159 382851874 822356689 138415461 361244991 864326240 981098605 36933998 846274098 808571194 958977992 213882029 392745337 636537255 989693613 907010676 942646704 153065728 865904820 398067185 958375460 73892001 269645966 299475561 398670993 357599885 426342361 40006838 890086095 524442606 977956118 887741576 934313489 20390302 476357877 730845019 830854502 831277640 936114583 91587456 606918938 12688467 933465227 62617508 77972272 73510258 641826033 950376883 964352575 570244482 825088314 992533211 996390602 894343964 904766582 937855749 995639168 730716668 979172765 934839333 980625520 904295049 918561726 156487334 162731565 96263749 840284240 748790277 968238862 636506932 788889649 991749003 992720124 829830387 885991047 336152285 935204754 447021238 450428257 630526031 856115016 609991577 752895184 87460018 166537432 990491964 994918089 248153468 511207435 796971709 831216978 45656288 750456137 244311174 691440590 717664188 867375670 433106433 450364586 119884987 900197232 737147102 878633333 862912111 999150027 485266433 876863846 758397260 931432694 987614041 989162768 578627426 792670305 116541445 961842698 323603345 461754410 437226742 767737803 318505536 898473362 545499882 792488199 608460781 963190094 862474512 954159630 953899036 999955852 639327371 849122619 450657690 555153784 306278652 435717169 695727921 961608013 986011607 995144862 710002055 966480279 853821479 962284651 736404724 953473497 947124962 998277224 51468104 403644791 473813362 866422425 419602026 605266729 3588352 900967217 599577060 768054711 328110643 815096143 972455861 997135016 462483934 971235317 328689820 624895651 605350348 732696772 250187841 986057261 792903808 926243345 315035664 538120382 336458960 395175620 774744364 891335517 103940044 508665233 318667642 658913659 765001217 835194420 96888977 110876943 24252036 290237403 255562963 293164111 7367289 645128387 277277234 458980467 405868324 721801232 966795795 973928499 487713174 764804523 953009042 968161213 67182348 470852062 782532441 878695771 243276349 559666759 366417178 922213028 385010917 873934833 856957543 856980697 987464228 996754827 75980142 274887936 779123966 873978472 274729200 770820844 412692593 984369182 557803369 871333502 45208383 938849520 433733644 708184240 550720159 789287764 195747136 784462893 701045995 769020617 582613739 717390145 421521769 866285182 402099376 751245743 808860831 904595359 603551690 885912936 193961409 911767442 606170595 726796955 450121809 786108619 276658920 691209409 965823541 994246374 771952024 901795228 499452798 795688019 626626238 985887944 667901565 885363447 341268724 578025524 902433066 927667441 454378504 768165023 946374087 950299579 292276114 527145649 415241716 968364837 869888346 975846359 835027052 962743268 970155725 974489570 971952246 974818742 747254125 919126810 510994579 636033967 258059566 261665857 787999201 838056012 162807119 442027882 45696658 880738007 343274191 908999215 926562880 929042140 331669527 658742994 312897140 404957490 54293844 240261530 736358524 829584951 338100595 772002744 970355158 994007149 522233844 596564512 257447893 351909206 513770328 824558852 730666459 808832567 998358894 998737105 677023264 718799361 391855927 622102866 598418175 906526709 510934612 851038728 524001788 587396158 312568966 996603781 343955135 475831491 357476364 849783411 344602348 835517422 2872960 642832005 320248386 455363679 239848009 898955426 971716242 973268181 239573466 559975874 123273461 472953679 480048689 749848452 510067702 788211428 850483495 857607528 661712548 915552035 712781688 974592996 762328010 992818170 262747779 925867804 312890151 643331482 179462208 603995721 826619387 876923079 82469845 242844027 534166525 991859909 690646748 746233333 934929206 965053471 35408384 83632692 496226733 749713186 255851601 627046738 345126146 694311152 561457946 703028889 233471626 696347358 838122966 889129507 885264215 979320867 801177930 941870518 376837674 819949737 201343299 248285950 73426229 290904966 229157602 728400458 216568356 599274756 155462047 927808496 116687089 336541086 408300442 917305077 553776982 919383040 664007135 903847112 510182833 582787116 24767024 424800777 716847521 807000776 244209312 955964656 272511870 975713504 45628187 267648137 966064982 974928575 507324141 952913327 515799983 824877332 688148502 763917254 965040958 997524522 474918973 981261390 293235723 760540204 724317941 878510006 167390929 600144744 502976298 514559647 559219726 815809099 97641233 719488980 755895374 901091002 292719159 659939019 425835897 441630102 264984162 821009806 422005762 422737419 910031592 994651397 728139094 740754099 675235454 713783072 951596834 976311908 581579041 864351842 331776219 372839160 890281222 982924459 148797173 671484126 476838783 583263137 927944101 949581990 156631024 894149459 486479895 955373153 246578556 665888487 782573055 857136312 803744844 823335839 558117971 570440219 25390978 984203866 640254680 782875920 820545411 884132570 37122685 385081400 515017234 592486341 735694634 937070872 770453651 867445505 509274828 697382001 244395807 963280060 297716140 795259895 321868999 539160357 233802545 816915721 571930676 624541535 402693633 929144156 820325456 829646332 255424316 939694105 714795872 787830302 581984205 874747605 667435560 833798359 744688862 985407469 485098778 868354782 151066877 496159472 910818867 942917066 480522269 916876445 818745848 887986944 155219402 501137680 715968915 919857011 553180277 917953853 383392271 653406663 883217800 959827153 807399131 929642902 38985471 666199145 703362474 978433808 358091050 849897515 356905477 882905639 663521888 704791067 39293108 183152552 53690180 300319669 164879405 246129957 1621171 128859745 940676791 943174389 34789681 447063889 425438135 821055776 304187660 593674617 752373183 799094978 44790781 527133717 909556593 958043537 250970164 850826380 30752345 514474666 967356604 975762249 519377599 816532780 291970542 717667971 457569874 547410560 146084933 508529931 97408713 400630088 658339677 721593450 278351284 492471112 268188699 439510335 166336111 287109530 942953605 988613263 313015224 800553196 498283199 596000419 619731581 645776221 415681884 751852734 271938665 687188752 345857656 659635843 529131615 770652907 833509583 871812263 945879100 996594548 539072459 803238115 723779976 737298557 212220250 887669469 895992327 993909566 979131299 981497323 545179664 557972275 643084440 712768216 269271460 527111249 762848582 959094859 665893557 808305975 408001644 980485929 22147343 857869395 528338494 657781430 482370828 751637104 836014639 870555844 911925545 922096533 704562045 849219648 343887236 737613612 869852260 878126448 521785835 804603008 901494068 995604498 88169754 164754161 150011437 870929542 18479095 673648661 67520414 891307747 181184108 202163421 508146709 812559335 143179565 956479798 856483167 997853276 432911522 941380043 589028008 714652856 564777478 923655189 303243782 424666949 557385509 660049356 704229504 755217499 407941391 677569104 134986308 668654386 751347206 778876268 955769546 988620108 909047898 957859590 106888569 931349055 817220509 927177046 659932386 759338431 77488636 714057157 787531986 818594283 255660125 920275791 278251805 312043784 722742136 993343059 807640676 849596367 790404353 955309105 839685488 931004308 717233108 867604755 691661087 893479167 951632366 976563967 795553136 929242908 281601547 472547369 22322415 663102970 536358274 791784109 353110395 894365054 116967032 302182023 399244266 866341212 751818284 904809054 950993854 971437209 459581911 462525951 896989119 968235031 580764197 635280108 172087792 956494950 143311215 950346218 570642811 870153610 697299361 867930773 207392661 736078662 377648628 697741234 496573407 734724887 754067310 836628667 426882182 725393712 940046703 945546066 486572480 573301847 849404262 854490393 517591780 568888039 604494105 742134826 111815809 908285967 135202120 970649579 173480543 177159923 30544103 270801255 633745487 701211535 644710009 738697046 226511925 488986130 863676167 977169124 98728209 124546084 913932902 962850846 371254508 946197642 298126810 749500260 556319424 769270806 290798720 744625526 51033174 511500488 987001636 990788665 403025724 804101660 436768676 775436313 681436075 697158228 41526056 994656597 575440661 942155856 221623840 610525370 228022518 896946302 536575069 733619703 641200683 922666474 977671464 985418498 72342252 886231607 646447620 718411707 784201111 910875918 127820104 290176445 933626741 993660511 376327053 818382983 923260144 948972753 516364304 599883272 891000742 993957324 145420202 655077558 833592548 909862255 196653191 275438346 815576767 950105922 870688653 922053515 98793640 726314673 675567614 730232610 730170250 747072849 236791626 537482190 815982972 869104745 439567883 572111198 823595209 855001372 594603685 791771930 994946496 998941481 637911269 965348994 266127294 980458715 443085920 728140898 934768484 979984441 494904105 790389373 878281582 905195036 597775751 757424779 557777624 657288823 766680534 929941251 674565626 917386001 554038649 812671061 522454156 610169530 278076903 818134479 214968967 899808485 957553613 995044955 436586431 924989134 852337047 859345793 656402377 881468128 108165005 613166897 767469541 891343963 288988564 691335599 231701444 434252571 381185590 894616282 306898885 430049572 843269728 958778233 717899706 849909986 155313252 243278600 950559939 994281376 895284404 967860979 342483958 421267543 179509626 593188880 589183365 933169684 102658344 545759136 841958991 989256825 393551935 413761418 804133844 996291826 779829664 788555007 632187226 697517583 83411253 977858213 241166928 764966468 976736120 980666741 897441487 979000492 198194856 744887442 202950590 471971885 64252938 493027652 515168388 726512779 294207558 653950405 32559053 979179887 111992002 460174429 898222391 944936112 691947538 927605499 322339152 426438839 631255427 828785276 464417142 520508886 756286939 914336953 879525703 916577700 594976854 657595931 704680255 819666167 756480908 779029862 533276932 819180141 81430770 832615254 607824428 944221132 590590612 893910655 795239597 918522985 376378667 458550996 152347104 214997128 18743534 409494528 768045233 858219653 632576771 943102461 285562319 529978732 875491111 932163669 6459648 976921235 74914367 141312757 631319041 966006452 295463900 814262871 931314351 966331773 821072985 964315937 360210433 779075273 970030940 983097371 895315624 908250687 681205628 887583792 791859741 964143410 875020482 876808314 414327805 591057780 409804116 510080510 655713744 975982710 122914007 169463523 961293126 993851716 227889675 521852174 671763595 868968693 33038344 447003618 400258492 835731993 187340065 751182192 462493981 675604541 718783756 972299823 989605083 995486771 16958210 585604337 838531526 941347832 247667052 884844465 657635507 928095613 222890077 404029583 770824909 814075158 581904892 935031006 980462431 991181364 209941453 522574222 247329913 557538726 108379615 566918315 301049703 787611314 101303011 215739282 773053979 925991663 752854705 798513388 244455217 576964401 10521921 199149650 709356291 832949917 52891325 156601972 384303809 874541353 139227761 472060524 179849549 600361636 267038597 689079590 618960215 977066123 975551126 987721489 155630650 681881142 363489872 656715906 515785998 748805770 290078116 454036245 832499418 911539328 995627967 998884127 400177315 519681408 963313006 963359152 654900813 814447086 415132655 571341538 298883491 435378864 916147943 983698551 778824219 962599757 595524393 843044045 239073707 308577938 175747208 311121132 135871199 394317815 819058442 909662661 850694162 865859545 371477899 853511463 189581986 262560478 462245088 508964750 957665727 990494556 428216648 696832628 47692512 203850440 358752807 933742035 103991253 588434184 45576407 679042018 949605413 950567404 269685515 400003452 73828259 112059664 431948357 516852323 864689426 913314643 720859114 775750208 351787929 987316415 286896513 685315597 280070223 331328371 552892522 581344879 494540546 775717823 691248720 953041711 276578907 844959798 556795483 866272111 368709984 501662204 683155948 889883874 142978097 461831798 482713082 759633644 557411369 676038368 856766427 890643447 592679273 846959292 207414256 781976213 20984540 660060068 829227809 997735659 591058811 926020033 815643377 931938634 327594632 846904184 995806609 997324784 40580036 518001737 449657325 500529129 734468543 765316862 763463177 904391995 896240676 979578222 652190764 778536348 308676178 407562008 180551923 928414518 981188938 994396118 644180268 847131971 367740169 965349360 276291368 326902984 532850499 981211397 455309186 598731690 998608802 999914179 292632789 372342546 514707019 762510640 514904353 675054495 812262129 987660302 216345397 924772670 661356970 942190574 378013979 581267130 13385681 396384214 300223352 422228584 432666162 810129269 702112414 857270565 587148078 864084323 950290029 999847526 408377057 455588714 978975177 983547103 990107999 991754046 422790084 523684957 343782179 457058355 392162542 884241376 400235179 479990167 905215566 953817207 246996603 944212989 278155038 947249671 158579939 241775785 463850199 814848238 189837551 899130474 589130280 819527659 500884418 748186369 31617150 596566943 956744503 982701444 956012926 969413492 17616188 643906738 619813918 979138919 189956164 462399895 806243155 954771463 201073911 261798173 574387725 715529550 215358910 660550495 845700553 936627341 291566471 518774297 637288093 849293391 587309881 891640311 438424531 807414129 124930189 792499499 417911108 773916224 479120421 484390775 83632173 765238888 168835421 729028134 951920760 982862325 109308688 201569782 722534713 859919413 177948309 718003654 377214977 681198900 30358611 982817033 75869053 648111536 768279631 978697464 438549476 839885579 697057442 833554352 418276039 623867114 363983569 382507378 481047215 727575495 970477676 990796790 326078797 407842443 5161072 78378552 932355936 984572728 714442260 854198030 233600529 929298581 677800829 954337658 60360769 415496907 955910321 978620904 343130399 427394447 705987723 974487829 619000664 780000571 204111 696064851 465685374 581691558 349626099 751606824 307698617 537585269 102335759 769777197 421429889 538349077 322602992 494656161 174195751 619648492 563491483 828526099 116400560 497785420 318074828 423837179 240276009 497544744 548989757 565467566 442604114 887854789 605188748 708271840 68724394 95415279 301877006 481992330 432570598 953297749 263798970 929553718 579399416 855572528 698625824 944548592 922874845 952197410 172910815 331189733 802264878 915763765 643793775 745631566 489636986 779639313 50293558 609142360 777827515 815791702 492289811 544782155 25888942 728661663 541861454 893060432 593052566 630438907 794340544 857444039 58619634 678863273 497505154 894365866 471610258 481329958 187279421 857473704 884224521 903177861 134841483 480330075 218247036 701427984 572538710 726357661 71062634 81674496 167719271 320403872 317663881 816354435 421287484 703531706 986405194 999319093 163936550 602219319 323156843 848343283 502761147 703690550 173447416 373446112 512014851 904427433 329872969 724093487 333352428 524014716 912768091 977090523 275777576 820743956 858570267 965468532 502273479 874967164 912001547 918145881 706527931 760251195 132590938 256019661 377043797 708287663 290141160 973276923 964623002 986215506 413239430 980669098 353821176 821734516 104981109 179575155 636769419 671562865 729718876 912868146 553033755 628114255 8118462 959344927 28746779 475757133 146887775 956477309 667830544 752086861 216643261 758508199 11295126 270650218 377611987 778080345 424019905 960162871 634363704 668474641 939282671 940593492 572320333 891912320 796729454 932513840 79156434 942884520 735238049 878021160 346596911 480445718 825668927 910343664 970382526 980203114 599991654 965711271 515376674 831900376 895859985 912527310 570006382 985473303 530235094 976388289 846966538 909212305 411476446 600189902 109136489 773692606 504651630 680668981 250239721 959310383 684792754 931540916 114833037 933215570 201890370 374769565 713472717 906794244 159191181 926652566 930871041 989271912 866918045 872516374 173770276 555027974 655001106 952734031 770879194 898164763 552977495 988729912 482428940 628001239 480430521 481554176 418581546 949794137 536710095 662962823 458027812 467608417 189407470 924348327 231249335 935697342 376433448 934555750 43513422 121894242 24159816 851760782 445255913 945595325 422882170 435994415 918113422 943716490 558249007 705888960 323085670 604379460 330076876 829651813 835628850 959333154 216874022 555178700 405816397 701060821 878977228 989500786 397740194 433970812 713645076 908958815 17457820 191996637 179042949 991324012 990011903 998413681 439259676 738639970 39395464 944373350 700763435 913083966 729882535 979290384 516425317 908734911 895075092 932141702 326066294 446857047 85959735 275703737 862840560 938699093 16391195 677253318 783558219 945559366 501035054 687568981 112551690 393112241 84688661 611475735 241939552 582956644 944391865 965609159 284957003 384236217 686746836 704250323 729545393 889617982 746358612 951580152 355878297 747183931 374958814 989350290 715758105 968013870 617349484 992034136 999621805 999735957 535273128 547268509 116835822 122776683 720906917 827061185 509411573 939620036 348474053 730566378 749556920 965340949 24191572 846126700 946495152 970290912 816206461 916451242 97340592 632125327 904334965 985187219 181624848 721277065 634423307 700193263 778592315 912321195 290306192 615316325 924886878 957986064 32899392 414361897 599289378 712143973 959289740 974157130 285540567 348790182 520458394 602298877 928571677 996905834 52833882 615622300 614424099 721353811 945895248 976070908 651205716 998059298 222722046 228465037 482096312 828343851 403581720 496260602 41952370 590137488 537262567 697536882 587914646 901967693 145471611 264821283 924531567 971345941 585264593 831289010 181804756 497019380 160128174 843869060 957319391 986653896 970994218 981234353 174830361 783457424 425581396 544396535 260340217 554798283 717214299 793720393 771466733 921463215 691147351 711196637 965710027 995110968 328582410 916265672 880464651 960186141 311561711 479008120 435198568 767158834 674273143 709599248 529438264 845360389 423767984 762730659 135803350 562691931 981713198 985803148 576577999 649147576 813070201 878621447 468133874 645940528 121435275 472163528 881669569 978481128 319730042 982018936 647537772 798031680 584431404 646516494 32322562 300667675 341906781 355136132 369477948 532998158 675523623 742636791 834745893 953098249 830794497 978270043 254953293 830265967 602305582 870239326 907495607 940680959 294492678 387658442 814440165 885580002 786685560 802336904 879127355 946989261 435055957 988747744 337267043 475937045 602676479 688338122 511835166 631282228 70953347 451641039 758589506 879057700 310887413 889427671 502828947 886282972 439226060 528071399 847352787 973245840 61610472 485897072 548389112 740236898 450993846 756343195 94652148 401974904 721919268 842146774 324553766 326800636 103764602 816692780 689576312 738863025 446520140 530053967 843927618 985756013 841723373 987455282 695284335 860242044 538789305 642499150 986013929 997005244 465375299 593309802 529181787 663947878 755291852 962453858 902784759 994080828 312140856 810366711 5118574 621030905 513767911 642034906 927324897 936222027 121769022 704423566 200325960 389509755 690873932 833576902 842174479 954161371 728206404 942071140 648951018 860900184 789925994 805112752 14925538 187618688 13963180 905071096 981018411 981179030 770169579 877463092 286956184 543903372 953182098 987401669 264477774 655423088 44642553 808334149 240851002 596880232 185086066 773436856 252745893 323231153 982501750 997951796 50124489 477502934 156607273 387247285 78426218 594546211 20166166 966370829 541011509 842341966 721245616 812543622 29077949 995048667 600191030 627226030 123638596 902398010 89431449 573755166 914505620 965313329 88043989 338316430 984603415 992709759 153907870 312301122 810596635 988444471 822071301 839982440 290830611 783924181 891499218 958355722 57618839 229107054 547197525 973513352 326399894 766157865 602332236 922243975 595181456 866567788 554224815 605522960 64991808 989331960 35968516 638707886 116798998 704500978 488194572 608867291 432213285 953038903 741413032 791238327 433830777 843707019 280699297 984287951 41657581 841988152 594527201 915452275 960589874 980588023 903106495 934892780 935685121 954149164 930995217 974371205 812900862 983039157 493224812 519618589 235144508 454086016 285389678 406182780 248581461 383129991 692803575 975262454 582474080 625760508 928965943 960872131 918879428 966210821 742375313 876431891 543170397 627611555 920662455 947175027 213933935 372990737 868587867 967021671 946331497 964504495 748185554 897866405 640588230 661253476 387591400 646303255 905803209 998884045 989988469 995980815 849558828 850342300 757976847 765296014 594641137 995531507 152630888 810002264 364184457 493275013 332862564 413277895 396348092 591608086 586598098 670754831 705245277 924882666 963272554 988536978 301514701 706474547 528446015 970797888 933437299 956057776 574847930 577387318 294180009 386698711 383848116 704887573 92661312 407872847 62171402 530075587 740302975 905532846 153967368 255659831 378310923 389632228 578517613 599660846 76569727 573974015 526632875 812883547 155541025 812683152 175597006 275448796 798066791 872771250 630514501 897485455 395580744 947575482 900480243 996081566 560139298 860041723 446197126 674096595 436944271 656734769 126612121 423926856 472196795 872555652 582747803 673441142 666014075 998639677 574194146 600176509 880714749 948489346 647306296 726574292 821125243 857401299 279482087 733945418 473780688 775413216 552274511 834262498 32327462 359040952 8804625 703443443 595248216 977853597 393619745 511078298 959736592 989099426 982506303 989515500 728142084 842187304 967301998 989298605 982051839 994757531 762134494 807888258 599925283 715301600 633872152 817517737 726761804 912738850 549910027 789852146 658230058 975930558 984273882 995242814 942693898 969154818 660898793 812642753 842408011 912801853 728168557 904693919 267073074 587299017 94572270 108243499 6106733 930515511 995692212 998231436 892998379 946454381 924786065 954315999 637491378 824602095 425335877 701865135 780258725 830470168 398692501 787794537 614207970 935797807 228927473 848483990 507626446 610974437 185438977 707193652 843389457 853560643 59303977 646665311 837999177 868017534 384938166 552615120 257211771 804917347 457953070 992573448 66204762 777334606 652664710 752226828 358236829 622005621 983349407 996517289 918397255 937286071 921143539 967695816 240197708 886512551 584026839 636201897 280541021 561987374 625612746 695211772 279971186 899289713 179712835 359661124 526076373 851598591 177263588 388695577 945739705 956619512 121422884 556238470 616671497 978456189 3846288 101743982 748290414 996337438 313119136 900687457 29099358 689715163 346708554 539304689 477961353 746593329 466279104 972479941 265615237 577632381 598142052 953273690 719123231 832269026 806476347 990745138 397257054 733762297 154031127 754734607 676358509 912383637 992702167 994940635 529967322 908117928 538878142 576811913 182877644 745471255 642644664 802161716 85548533 313425164 590313637 912950439 72027666 854020314 607190024 778498477 188809179 560102063 421451655 984266134 263982815 292667823 17124404 211002056 64157262 680205593 842223972 938072602 259895877 586492337 297759836 377925900 273441474 853749531 78426937 579556181 552316648 700436599 837524880 930403248 539079645 758206511 905272680 976211630 450208946 457641945 598508458 674310863 823889354 957792434 366348220 593267852 858754466 970182390 60285269 112245414 855578378 944413518 805068656 876623004 396191766 949583782 892981006 952340235 910310438 985697749 534453830 546531260 230729866 953128771 46293330 446262016 431430099 546373491 356978935 602910738 326103815 955673941 219124861 811162224 556197055 935431671 836338584 917148242 948909727 969139494 209724559 902562697 94329898 886692633 647880156 824117013 540601049 954523609 171030680 704137485 225514890 537708236 800542790 800882729 296673218 686749021 907709533 919339084 657859028 721860397 172827752 808011388 374085183 827849830 958989880 999418192 910459671 935991677 287207249 654427489 40938546 466804929 373094512 546247258 548034012 758806337 350255558 464508007 663173410 984169052 865895716 914992627 805269654 839483946 779595477 900999942 160961513 979849853 276385842 628492123 724898393 910673188 634116431 863723809 550210744 833197060 947563441 964376772 460228352 936023071 242252136 424312256 384569317 810803163 119711253 224461360 264306838 694753773 361891858 720775672 678649267 780832915 617673261 933082420 695556766 770652753 135625550 176883941 41746116 342414365 285988724 498256812 917702961 940732107 149012578 611690380 130322518 511613441 212827872 621073289 80105462 627511643 199364380 635790027 768400765 826143297 65356116 608534274 143461986 369302265 777637065 897484992 901102894 974967267 525160743 909619672 516436110 620589691 7631888 51220509 583570620 602230411 241268412 407414842 118402237 497790654 721278025 785396558 381112830 741525211 958196244 970937452 294919544 905847820 290159493 991501008 397115577 492647023 587091797 956617807 522719344 866694762 279254662 594123645 29672983 211300656 424333905 954796135 214017527 811112455 90600102 175875432 727160615 884780195 540548203 802631106 107210036 860090591 730296880 908260731 487906059 921290764 703988980 804301185 927654966 963061085 981413620 987141448 177751444 421020637 308782905 530687041 751627781 810029460 790071069 965060953 878038966 894650137 487775821 634627427 309160706 859962090 656294782 711464379 86947657 845054632 104532463 124522537 479496985 596286343 684646582 704737429 936708948 984216876 896475158 909091212 171416225 464079635 941464791 948993958 354721367 634772576 869802226 954128504 152890591 633782286 114033390 529775876 107153569 168623918 125672567 276204226 777227096 865874392 283182892 541976591 659807067 767526675 685425064 943103979 72928504 717590634 480402125 696181078 377622244 561410299 871112968 984804547 483174495 769527559 73160307 565749866 646174223 705590467 188455990 651348071 370941416 415165536 498616145 630068174 290223384 351753849 266723549 940256315 805907173 979990461 984761453 991337417 773079742 986296286 32911044 475077110 771874694 805020930 426881341 591686029 445322416 501442790 112196120 443750562 387137620 911313844 957278823 965840552 792407236 825266036 414335927 479949100 394659047 935677503 8659185 463810124 325208226 415531164 325284875 775394254 71871936 469555323 631008771 967536644 896071352 979819252 807404548 956550659 60678478 650480785 197732341 996861993 874697940 902474856 386129225 759960114 146730067 543050440 571765534 910180165 12029134 144435851 394797499 426938486 838294515 973073310 278690716 887131706 438105073 978941012 489738998 516917795 972938950 986957547 269721558 559018800 84571638 580140534 284057608 914178675 571594183 975625463 45713006 854700806 142995709 930968957 708821975 762736082 908948320 910619647 456747812 558156852 732752942 971844051 296705744 894774110 666599874 868617602 318210404 534899487 851793357 854251804 571773924 938600324 917308344 982323434 75993052 498160740 875974457 893675900 393274594 563454594 819576167 857264175 705713287 860098630 947012285 992780013 595235608 683607609 67314097 164295966 435628702 513153082 152887447 704906034 327567389 357132941 623786004 936568186 416620456 765089157 543316306 839106465 867747049 928262450 361264919 400109211 15747877 604348237 349077548 454500361 484190316 523269107 32853266 123214049 598937376 716639557 247337429 519168105 870567745 965103898 229834818 350695922 999939009 999951122 261170855 435790720 4046371 71522736 410264349 696029254 831838003 967990515 453830727 836220112 819189584 970814756 660248916 733276771 841799310 857117521 200035413 842946793 797521847 963712421 504360796 601250892 186344435 931154037 858598184 906810910 38153648 509591450 504350886 546840290 543161200 867457992 496777693 626946468 332114591 416016027 700142371 794830666 826865767 899864376 40963449 130284367 683026389 833714071 742501311 998883275 315683015 428073112 65619173 963928477 223586252 599309823 275853502 399593695 218714013 728041528 638150059 810786395 785170687 787022666 870762403 992748689 907976959 975018668 921281794 934101011 279505963 518755181 692834755 915384452 426882698 637256159 608419344 764458802 263034748 655076357 783577846 955201922 638380379 714618792 580519444 877364123 85022549 929757577 563838538 680383483 671346617 940741549 851457591 997676139 925453272 953319644 61764599 505341852 960539870 980608809 434286943 832145350 369019568 726966548 886352617 998850843 203591010 428423277 543721986 755771894 725325684 902946554 488867117 747854716 320981389 995986213 715059673 812291681 130172072 853226621 986629747 988333240 427321122 587665651 534452407 702040900 401281234 625550255 625426611 719716024 962213136 988311311 649690612 946326665 381684862 410438160 167234734 379788669 478294945 907074748 74637749 794995825 183908250 326903410 467543700 850048218 922259780 958577731 51682700 739252797 707849099 805840099 142706667 308840195 783094669 850426562 93551552 509588805 691760539 815318855 233017123 949889077 749637344 836314562 230911623 320715515 963892660 982316581 930702032 968328626 499976187 915441949 696989663 960834653 56005155 927062250 528560950 857617906 655367391 859067247 893488722 980901879 537929291 649625931 264473510 879759446 700262274 922677485 744620020 920694873 385450359 890287927 395657600 705193695 165372690 905021962 608360243 980637679 17751053 954159466 268258389 912821679 153410720 169903636 496298515 636122261 98099657 618731012 171366469 683393176 708712451 974756008 449340909 898688983 439608103 761413294 231316124 760310095 3101878 814630162 269809632 962064623 653581419 757168895 243529503 611307658 624358904 971285360 879565770 977344999 449881566 814797517 818011771 965145461 752990138 958451807 569021000 797811965 946730142 963987922 569269298 765187103 222838871 818753545 47031435 239052976 943411903 951723195 764184367 935814983 475311669 602397490 941768837 988264258 555707950 711831064 852248762 945280046 638883713 720385752 919451123 998773580 939132478 982592135 514332629 747724535 830265534 896470641 987100811 987876372 597142894 967404002 465245007 552396252 521061009 633983562 493131000 874164074 783357590 982000074 150465698 931968745 878095032 896198476 674470619 903629756 276508037 280654951 765659664 828816188 285756035 840981697 435647684 553627814 902532448 969273141 994715683 995839692 165060817 835845639 182697551 226035092 562995236 940164323 871696854 943598354 659525251 812453081 567127886 703267966 31159963 877635840 384830586 811468153 10273137 533808198 422757920 554335288 780173927 867530875 427749486 737019256 756468505 793909003 911736713 936221666 432714572 519473223 341339392 425241658 334410837 677820418 996581628 998878300 573202342 754078844 639988567 899555914 858298416 913341053 354488403 658508480 136951497 670484644 663190355 916936011 940555607 971524227 397653522 637238099 769244672 971278074 214929276 299794565 601619852 813528594 778705604 861540919 330352012 932823170 207058831 288227018 491986421 913721058 273212787 937596457 766644712 912077804 812507649 943266187 913689675 928550576 966200509 968434649 10955579 271288386 970888831 995037549 814601003 841060505 940928075 981228325 833803638 927814669 718917987 916900635 873055452 880843274 370205013 995749849 983925911 992091406 544069298 754587916 296478999 934279864 627943768 666835113 316732287 659570851 168898334 830898594 933098200 946552603 814004667 862271628 517649812 851384246 621986907 872745671 610406488 679753254 182816212 666742090 469162497 642414598 562553800 921737172 926315117 986774242 702065170 942183956 520388409 910470919 852849219 987028295 342382995 356677559 643737096 664619993 616916388 992305935 662156135 684557348 633555578 870164264 495372950 763582797 136125027 864120118 52980187 87637834 330384749 536994165 848488074 975053285 928723763 937389847 902379498 937956182 480508970 521248214 641702839 990568469 746298151 916871033 974683977 992505832 839836392 848848743 115084294 830087189 743520343 933631202 110236539 344317916 771235196 888240186 801588791 884104681 283168142 752015443 482115742 836206632 997568327 998063853 168855045 303644670 757441338 894349254 330620238 665695004 20755292 188744654 417434651 854232235 158449066 955022488 225624532 653807558 819453394 914641151 103543223 487700272 78605705 100004956 885721375 908034863 438646812 934918400 566711638 855155450 797804105 804621287 174165108 959207273 410867550 802879238 999657095 999847099 250428687 623558234 585691539 913716128 862073418 876026918 204496437 987718378 648111419 986732724 271358961 713275034 822788415 875764093 81563398 268779229 446616816 575119379 787678872 958912175 360721768 921593589 73199442 948285266 595910887 672362913 571921748 883446835 179895883 501390731 607570145 893729656 63046316 228351066 957182265 959953276 121556721 786180705 704667820 990353198 194048443 934003490 738311974 885639212 466990807 525059621 230319006 560600110 102412419 690548037 177033011 639461825 67347863 91588768 968518847 974919767 769418374 843694681 332723191 452798848 410768069 469521058 167974928 444352217 783874094 924195817 461264324 653212595 316384476 866943407 513906259 637410726 125349557 567227856 841194213 932307670 603218341 678570637 22658316 218330492 78572219 841048278 139587375 657741768 736258727 892539946 549474304 817740523 462549883 837174123 556919764 559908535 774483390 784551115 346163404 368353551 623570397 644471848 531327032 602211898 798764042 907557727 100002067 891618987 802992925 959347802 221693035 507496499 33632083 305846991 941291603 942657409 830944514 835620216 904357713 918136265 232806141 476395971 123018926 901290840 793122273 933453826 292564975 656671419 304857631 513945954 783860969 821359327 906540022 913120871 41813084 230125555 200686465 728927156 187058741 745276455 324804926 504803593 581871852 664354940 686909306 753128446 481592957 899936029 484305355 862689633 32869610 448970829 551810919 759566385 757169551 784684292 125905562 711628290 222007491 681129437 680926683 788022709 853839474 925492220 951094972 966419276 123362842 713670361 3954797 932170147 146603060 204961195 540985467 839984109 339049918 601449029 255626527 571035570 699460090 749571664 374699953 693490262 578926487 925676543 614742799 966214460 569511043 705172939 27960354 150669374 616809982 766817487 844371335 905447460 911464449 953884638 872032189 899295343 688942649 850802213 205282447 610065813 577071163 610710388 373460229 825819224 974519890 977864644 91205411 252286244 709190446 786083866 980167191 986616721 528116024 809827506 647401244 989139921 804552926 995215060 57676590 381160921 887920191 890638847 255807154 488907366 198245076 700150463 134649772 586855386 757981160 769694086 304117101 762286685 242786786 343539735 643014789 830959502 493422142 547899128 672421907 927155404 177809492 375797638 58219191 300403852 117491610 506623162 536281844 961936490 191158190 584654842 327500259 783526811 124730100 187148073 658037411 823609151 380692303 662531186 570909113 793293707 586645957 698213003 957599675 985371115 281522005 293662498 932639632 977846558 173082445 254114490 7137059 528693412 53052005 426901319 930114224 974291433 475729420 625793550 711416583 756671933 382924362 737106751 500549075 643202954 9389341 246735480 274347095 704393321 534167084 795622152 29787261 978865733 237393444 527613251 795474412 908906304 845589022 975462753 500501276 601800785 162552149 813713309 410125310 471467656 575463881 908154123 892535506 999273470 328308055 821902833 349468648 810655505 751525132 794584731 776871972 836969501 533643462 726075352 363458793 902852121 608558347 834688993 880150971 963171484 97940253 177744885 39766721 963091725 450182531 988276430 915058280 925278509 934297327 977366510 343253545 739372277 519637799 582960130 234821670 495331595 364573244 840612419 305149572 441716841 918773681 986303845 561201603 767740314 975530117 995720359 46989759 266284147 887825649 904102238 947176509 969833609 759770547 829926984 576257185 928898125 772307765 953024815 287852346 856850497 29873754 677615572 783994628 906567990 231842465 738017283 94680663 479787393 467652240 597914901 469845816 819310857 626099809 794793778 584946467 939054460 159041401 195658806 711952551 726902069 488979747 758972881 760735562 881767496 389557720 918960544 996476942 999051123 494807646 604342660 895335192 905074039 871636862 997186318 136086494 213511957 784377181 995393242 68028562 343210027 613333916 862498549 642620648 729158492 155804001 261028934 757331841 990258950 966254132 979089912 842564634 935273928 567844529 927745553 706350659 912582067 993732958 999122471 372698294 384579238 766522773 977316403 98621660 739141294 999765175 999869192 962014750 974955205 713426865 907093535 52643997 541095033 815695105 867920912 497347000 503975798 176631419 462773655 41175636 537478335 415580535 548866698 722096063 969406391 744953778 857110892 276700863 841881081 954499933 992857656 402249186 596777442 300199147 546999972 245122748 985937246 326426597 470167799 443486801 490221200 978954684 980338248 343308748 346552859 439703155 557772112 306335067 376337705 413477500 573551358 920932645 926129059 838859500 844037518 54468754 500110556 881196782 902058813 115096793 666025141 296506237 882131589 243379001 795337013 624734547 930560813 553053523 610144310 765050335 958076788 654343619 738338419 328607001 380570149 99159553 879609826 413818835 554041986 969881483 983743799 918886728 996519140 433634453 786152282 800043430 920285439 812868959 854854375 754096403 867667114 729057047 798890864 72166190 267701400 308414418 525417436 229001042 543889542 924893980 992487719 187534569 391563086 700179232 866399771 293866429 372923150 212588851 750971186 839586536 905663641 799340856 819533767 900525216 960110348 767437359 903949981 653740086 977989434 120704629 569199236 446191318 939298605 337441919 571927608 106700212 461432989 875234068 879005717 388910760 754654474 848037199 878741725 76032649 412699661 155609536 867477673 62492624 528943699 838743745 914655252 25378566 725773624 513837793 774788534 743641373 794787281 590547814 708374768 474416475 792436783 993918426 995299181 617713711 707246465 457050679 681594140 861154949 985324451 987020507 992385423 576888166 709209704 184201852 414039076 26513753 621647094 744079203 899661765 475402686 481845410 349109342 473738238 415309891 763850437 24001384 507572910 74335563 787330269 614982933 906158818 863750697 882952029 239881408 974427581 869013489 938091881 740401629 809276089 213742228 941183138 431418538 843519441 14289221 432480044 476081583 648281774 334332230 561343826 299221537 810759297 489766860 914006273 226363419 341098412 351640925 411232431 69853278 930412259 800086173 854454348 686667220 962214455 41541507 901310366 73106839 914191964 262852342 893301862 921594616 921848441 208864831 729256602 384760477 903481579 126983685 450535373 164339591 954696418 165706313 601396316 67662475 138346868 274287686 897891102 478388941 888293345 349321511 754709370 169471798 911223399 916005555 996578771 893008261 945264452 149029411 297747780 381395572 638437199 14881909 441414408 249268164 900371115 146371985 541722200 466163344 919628299 139781124 616261318 354259238 367332006 303173746 598503728 217938117 957655596 495546990 592906576 360645168 726111876 119674110 455978363 550650597 702433385 503397954 570577160 636773934 742636650 238025299 244572676 594530082 849844074 168134056 328302500 868306616 870890980 731271901 749510480 905244887 926297244 2279950 718451157 636925345 950252078 519282457 562266044 467664782 938342279 406420118 546357442 430482915 910895600 126135701 316740144 712857363 866478956 905183914 940964442 539074166 922079992 276597090 845650070 722641577 789231844 558975431 919411034 269913406 582627455 479934790 930553040 27831046 846605483 950687810 995609494 472117627 494253867 202022379 812785469 63522498 534679058 471216930 954029186 108897018 197615310 500613628 822671286 807072342 938416048 44504986 958893143 548986615 604453450 859473544 955582190 457799951 655551398 456683703 694117109 67002140 570479937 641256183 694189845 969799488 971479701 526879537 598483274 287536583 673820518 907646775 990560470 943769648 968773849 104424319 837020091 722879265 819349592 686235772 865433977 153550236 521750867 160698206 182043263 1159364 851656993 763265039 988476842 697769053 954579963 942063884 994957816 693045077 974429143 57493104 582563392 827513887 998548436 885139229 976920774 952124838 958820079 917128698 992365221 107619380 329148133 262818070 457290064 448768722 634697509 57925594 329469886 425689391 913517178 755412047 864943862 932288424 977555188 32435473 543528039 936007969 948461096 489887333 670602404 844978497 984740213 958703947 989371931 134540330 626801659 338333870 376656867 165668549 712218107 716958876 733683107 612174601 625399824 444658777 844471011 7482102 364858738 925790471 930237004 340390124 473246101 462878275 888363783 36489850 107790300 138491095 882140797 230375037 841611319 491718641 657751056 135127640 857039315 669465140 778716481 438572383 613455695 265371740 841844877 400936120 775309784 390395214 566378764 302184391 613725185 755408115 828383601 76798359 206612833 67538281 533316369 637367179 671169238 333496339 675669385 453459208 658612057 422534703 738977345 340190699 985500449 171113702 915410854 627310835 737613440 220083542 969099570 396712608 830776949 733531616 733921037 461143692 563827240 389379692 847789694 359339342 569629962 867989114 892479848 45565625 152840913 902628735 909719093 434156081 891214156 87968351 303739936 962114656 987919005 496904847 549774283 499378966 643429822 732943206 790256361 813028858 914666809 809700934 956749462 41589517 973615568 46710525 521214581 47499384 432074402 476785826 790461613 18480906 391354949 671203828 761322441 978413279 998505557 309556918 632687207 560926733 642024420 68567190 580051589 862241621 980554055 74772537 129083385 960312411 989903609 259913840 610877166 326856557 613664627 674569131 768499262 350559713 816914440 372847206 893953991 866188441 905683361 943593333 967356813 299921533 452773344 458216194 984786005 562863222 623844827 454286034 530132406 447496337 853385535 468657819 620899408 611367420 826047202 52510203 456575320 727441677 830603831 752849161 993150163 84842555 487802717 94275558 95456152 595169650 994708374 851588894 956866765 605317438 831168250 463826422 814884265 141921572 780104911 768312707 803005128 98700567 234557985 494077208 970427627 756781565 842373035 65641197 197355532 19168416 942837016 639512742 706616379 774050883 935806094 451470192 571961362 686178976 915832569 391959729 714561441 391742324 485566686 543261467 892498826 470296105 780937331 673238059 912147633 140290579 663805021 704974011 931349825 465475500 686305506 208499717 660758372 476277897 939685029 574340612 779022091 156087974 304895460 260115256 731654665 929230905 982301565 95122154 377941865 484531290 881681834 2643340 815701523 397117345 943495539 331178037 454785668 23258473 464630502 229601247 830747937 875506646 895393672 431944485 856244816 485639190 850113759 74626817 323446362 913815855 956072281 88480848 458821406 848386376 974966728 325741158 936705947 938353384 958375758 894142791 973365506 519563541 942111311 512699503 833973724 398101953 825239736 449559732 581815511 632475446 797593817 392491754 846804127 768924119 879792531 761890748 996475715 800192535 802369180 497247776 919405968 137768506 772093060 961301156 962786794 270055015 999587500 824713048 964033967 196001909 659201827 28240160 42291216 543444048 814368544 545199863 842130237 882013007 937455624 290439179 746349439 221097484 907906130 231499899 710985071 210298135 445490139 573224553 976011725 519183046 639887334 286175555 425083932 490389143 626537069 960738550 978322909 597028370 792425376 90562818 891886142 920244777 998347306 497769496 919314948 153394106 795678471 743485624 862787040 947159842 991134900 980710606 995982393 128614614 823917001 623943265 841134865 104688362 242528387 588250539 861100704 905946075 988352934 987935116 991400982 758119680 794804060 390823101 618880771 403958052 495183797 555925145 775033135 286977663 932863634 804032088 989930095 22265865 664806670 431498609 985795507 676075853 691910400 876554559 966638873 431166922 473343065 149887029 838137498 696972034 940889229 87668928 516019321 745290763 995516765 479436738 710584550 925628105 940679734 634661129 877336098 953284784 990149030 976811544 977939549 827471453 855020427 217652282 655299696 513583227 735969951 317698841 762693564 324327179 821964310 923863804 972050948 650675324 980011509 6977374 742659640 737219424 756678325 398817932 636051587 749632471 859304599 471085289 520185989 901478349 929608905 75947034 421487895 584106931 829498435 600310294 609552039 653543347 951076542 155584805 466924516 488782665 829868887 995561942 999903305 799028091 811967364 134062237 311071682 426545701 849016277 660627109 928106067 23864306 553374602 925871213 973817348 441368739 518370674 200640832 402287186 705345255 884335110 409988106 606583832 544119303 990505580 25558722 435929248 554931356 825331670 105828409 173619069 191409859 385497471 476945496 833909247 323734195 769623971 656630834 734436999 807602525 978634385 365687696 892228445 390415829 471873034 295135414 792700609 211396007 382281669 839771779 935001334 107717642 310557500 36282535 72095020 30120351 44061472 857686409 863144621 759373858 886714474 753495748 782869283 379469109 690419852 418518543 801176121 943917794 969824293 914876845 997124644 916477688 920622607 249531436 739113990 507676432 930921771 787131382 843949906 38465754 642559399 7357372 337882878 952928792 992723819 233342421 400158527 264709785 667573069 582034033 752949857 415531220 467971443 210936877 916384340 717764454 857861439 78828623 778225502 182101854 816288502 600161456 694006935 907887197 911746360 112903515 148141591 312742927 995639313 811448917 988047821 403252214 642024907 914293309 948330752 377192772 980810375 326868082 402780655 24630299 120256405 877164930 919863045 583774098 865287491 349112230 579119118 588592961 608748819 861153028 872072099 410462112 892438927 773841769 857807338 487203878 706902087 804486423 981461263 615402144 757028783 159551214 225609621 932520959 974832598 582732572 663925278 237670935 298661760 701802272 847182431 7148525 133133920 112844543 291139177 931701887 963284405 888648903 953062119 615147669 964384439 669534991 819118783 163235958 904762077 838400658 975898456 726237881 913200322 796393194 931679868 745305813 792779927 890630069 960800481 49321410 705685993 924629400 964335738 654216638 662482021 112298583 148451116 57688642 518996829 365004578 596471055 190012443 771981175 638833398 703132042 765546675 932527888 396166668 950421103 263384196 779405213 436031948 860334714 315103080 583498739 19248824 101348390 777518498 917392456 390106719 460631357 771647506 939988151 416729990 742805634 848419084 926356983 739737647 861882133 629871833 999452678 130550513 281230119 387429928 614662696 596783334 829770106 949813679 989482147 349228575 871656095 463495879 871558887 386487732 618877966 462341447 947293595 813771139 885936777 749798907 787273842 559259226 656100693 36039439 472107240 373659035 701554356 664866776 960331981 218666943 943739131 869793326 984423435 339520628 424319204 161438583 440033973 917203811 988037390 76232969 488124728 562083166 628130384 618582072 986429221 889768870 996885216 660625222 745553245 207292017 326920110 11345191 609486206 227694479 750705109 582466697 747903108 752120631 895951895 160512648 697902454 904725723 965002645 198074502 518483305 160804053 934063045 66107486 576786251 63382286 153765423 680343228 763476769 90718767 175847089 854400303 947167331 252716993 696365400 689290514 937536950 365965448 538876977 965492990 988807289 515606081 550818797 873873277 881024262 131699403 651892779 215053177 422523476 554493779 613339286 956739291 965690319 679755573 881492453 916310823 932435510 375828538 920959018 486719602 982906873 615227844 860334126 187837243 789670277 341758382 564851144 66234548 409557712 493559662 848248442 79965580 951824762 731871213 935609418 966879927 997032431 794639885 946153604 718066424 722824029 146594029 861666442 533189916 851164922 387117421 717155692 761073674 989464119 426759216 853937329 202337464 649492978 797979674 874496955 565436181 935347969 957524635 991949378 918252578 955413574 227011530 684457691 827187800 945740916 89906423 420645161 258043408 736316041 218029438 332273135 668198717 984345983 809038760 813833654 454356885 866247423 26522665 923369712 629507356 979702182 506582142 656733508 73999898 415166736 158668168 240639350 799392608 838340729 536859107 617178831 165846806 513705761 805742715 924142522 97781765 833667701 611539485 836309517 936054861 964924807 466618802 703900954 341913995 788085437 949522686 998961688 861362422 906551435 9323814 741557304 978979373 986474868 225547614 924303227 613953560 760569114 875991798 883497652 902423627 945704562 74199033 692672860 232390257 387994001 999980757 999998007 404399919 958334617 316643496 451764701 871661179 930057207 549770073 965790218 525784730 697365948 234930902 303315792 814446776 980577824 118674215 910527516 489880105 928577718 661825042 682844594 380782967 991592310 616690529 772172917 320098610 986470291 328366269 484408021 733562309 928320309 890770445 967167576 464417388 786515198 73968663 375652241 101057301 379877610 354722476 371300045 529084041 644050207 163680874 477567096 464903161 918448661 680847600 766386917 125677798 392044400 116506479 352253066 812729882 977081840 110592303 857505026 31766668 203215928 149213365 305715616 545968146 677188091 664224633 970987491 881791059 891540463 962895117 987566197 808337576 950890681 19853206 719243540 427312422 635637269 213660659 316512024 119684090 322853096 11154985 612587588 94127829 861306710 42889564 748038592 948313077 958197901 223796711 891594484 35292937 102228836 832637588 971749282 405902433 482080301 909608785 964200680 967826670 996865529 998703109 999681986 457135817 553852629 429575817 809599850 750425792 967204029 199429212 487220602 597587237 988798071 618360090 894263520 522182337 900184029 53909821 55669625 241204868 727443324 54607767 860823503 585538064 624852829 968168442 988361329 167545150 696676975 134616573 608814506 242184399 697905284 706936195 929960403 367480856 652517410 286761411 803748703 166518495 687405022 929630508 955598855 486434131 625283438 755428578 958789366 1944238 968815995 250762279 882330129 204150383 539384223 405940360 476794137 286387282 611983662 309863530 770889975 710361321 928561942 621415846 625518321 177522964 858129765 303231054 816491958 618397417 894524503 881941142 903496898 541080621 658759303 882243167 885892682 438386918 718088489 470281405 744246683 42492945 258713751 569644777 942253166 502004641 524196641 901290166 911203893 328794651 968342969 880892655 980857851 115390966 762994166 901652015 924042195 476634341 492013362 721792803 936989494 158761308 494137522 571602586 980512270 872711984 996189457 183327470 759816438 405119717 606776777 768129132 849664404 659747547 757939329 379336307 456760305 536905846 661702201 837674647 901967973 878285517 895755286 679669390 985455943 752822191 999901347 455177154 455832493 895555338 972708482 223674761 493990347 401832358 457934418 755536893 978310656 173769081 381003235 58541078 642989402 163000095 404306967 83992678 458349777 571455272 807160490 178323554 351408775 742032977 761640351 694580659 775354578 640661370 684346310 334326583 631615954 56665443 672083221 900409737 999226790 795039672 901162860 423274336 818947038 665507921 786608247 23843317 425740305 147537355 518646041 448783655 808757349 131401516 275024908 271698630 889000667 842492725 919977083 724809945 734696708 561222944 953958174 599106598 741101984 558982917 977454865 625694201 864544256 265770360 544689062 697534918 855441218 954318046 983185462 563486625 906353430 500533792 841402549 391602112 746680875 819697356 926107313 131685466 356582336 619893985 875150559 954881457 961878860 217099104 792602208 219824492 944787511 517683861 924948260 128736162 355437911 930620389 963763340 988152470 994289349 359335075 929505169 196293896 993705851 509364369 927319883 635340285 711038369 428623160 730666995 765449739 981356969 852415599 935269965 750937175 771530759 66216196 653960971 255396289 421121009 671153074 718557188 573932604 720657591 349424813 640059413 599541785 968363706 131016988 573804711 893508364 953143485 425647756 885332246 641943126 827654030 657528607 942487552 801395070 842612023 596260766 605021810 129980437 510969408 872039540 955063285 476157965 891518264 589337405 798931818 381804509 535905291 989015110 990062864 847119215 983765200 749432707 783239115 751197466 847604295 390369399 579038122 291599482 670189747 456006136 511665227 177756020 797027147 546791814 823881038 513069642 811645805 617609102 835213983 953427709 963429715 942786500 985745382 661912739 955483019 189377335 733698357 721663056 934848104 781202581 866890811 546231195 705625615 363611904 820099374 991747900 992828600 214763004 354242886 201657744 508271155 305784391 866225100 876477356 998052165 899289145 901136536 701952759 795158520 281499688 705613969 2441874 161181710 7826795 202687038 118540316 411288722 287682486 597971765 972915358 999984269 292680067 714598880 280015223 432135783 589537918 999845408 479569084 934517790 107243886 459124697 405165863 464728898 177544141 892250476 156892445 283379228 920468214 996531882 866484829 875287686 395469389 411615103 835994255 940249293 148500321 327163006 101468172 716219190 895856361 922884759 926224622 943118297 317775616 348214401 654260018 751975410 284506154 902946360 122875534 346006818 796379397 983770039 39313077 617393912 377862902 445263349 78666098 154925436 708516989 725847784 737875429 997761202 287996472 430921100 77493194 274870607 399590557 790314647 491838958 693698790 743434373 780641754 816577222 923743701 360486588 414865789 451270474 601440353 319627238 370822721 390202580 738328823 31691549 563411991 154325673 227243092 776197035 815357645 743513162 756681081 331547122 753661889 24037940 387188687 399257725 985611836 358151716 871629575 512495782 931607782 722652917 807703637 498734847 643278239 1258759 801359068 825890962 961752077 651229059 806727820 467456670 695805392 187537578 855801904 74999611 152766761 743818925 782238793 340960745 908296685 239455619 423094053 183477825 246004755 426825517 522030505 99501484 224530815 779635126 840682701 840215608 931926097 795471695 818674942 443336943 746551339 22011850 285997527 683697834 853252769 665328256 726550357 550831167 777112161 998335410 998536357 914829395 994941102 255622660 938333643 752288459 876972850 674405235 975906495 930065745 970620972 435873914 600525497 132854385 404039352 733882305 772862406 137645231 208475034 403967047 413748248 616202347 803049896 138333216 817052822 838428045 947959059 409616877 833984041 382395971 565845784 872496209 933864431 627918115 733164447 871994090 935164363 625516870 639985259 988378944 999049586 214941893 620660205 900182484 929858357 196429779 781781436 21223914 163958725 919078810 926833512 68983009 226706362 43724315 706124618 107701900 913469027 13291289 766015450 905982367 972546001 606134332 729995874 722989159 995230996 320055817 822559030 445542772 743424451 267491200 658085436 95048556 423138148 118841544 135902112 275499900 712954063 871555503 982950560 595447394 932315360 973572021 987650422 260992691 704564655 144408782 905523971 999253911 999607899 87170301 973135485 231331003 699900542 208525473 495927259 268486987 692220528 138805787 321399482 619136245 957348154 179510951 427728290 227748248 590287641 156626820 158541319 138710832 213511617 49223736 782744727 401926063 978273080 100550510 188840211 44814696 135997898 855213340 990251780 506396250 510063943 958422783 991562250 819788815 911360261 778892882 798822628 592246664 952609073 563837604 962329218 490113376 981898280 613361402 669110828 114896300 421841339 728420401 835896548 11322551 477232239 657935224 674939889 587612769 604470972 783097305 800225573 514289210 659216610 918863864 997358140 430419869 528895125 453407754 930731244 4765964 149184912 125821953 700564707 227243237 956145377 18067264 632097820 406700583 590890389 154130191 218220028 544736636 572371472 90696713 796839997 768449061 847929709 467672961 936136447 586273273 860908022 844684424 923421857 241590716 771258464 787674938 790783359 685635735 791317840 754602377 822543208 873842365 924176465 125449094 869066175 207867608 691082592 812153563 888258111 405577007 836484289 249430353 557071404 465568547 755968945 886933366 895752066 758947787 953915611 598878612 714941580 362402200 613721250 424821900 907036870 970238860 992382079 699850606 867997898 689892129 716239476 133527815 527888678 181419580 548169044 38601570 695033966 825109213 906225653 886533612 923584576 299822191 688304651 457766237 853456242 528083336 663806414 119539008 206575732 746165065 873613513 96196852 377332262 193514789 816240360 103745610 810532260 90108827 937880292 981132321 981230501 794198463 935430516 862845331 875402473 102669134 268785218 424168626 711408435 749937525 914959082 682908124 791266838 812954017 870101219 517443943 857702883 660108032 881587277 163733162 506693007 152000710 261481547 126686379 304862300 785827791 849553920 190308447 749244530 691150050 862918883 207064670 821055358 446038685 449696667 231430567 776621798 884421345 988817914 138345024 645499315 629530285 868373631 653523992 881732678 310024791 512657304 237787050 933370558 639777564 965855448 747224208 795695334 993308110 998947928 195200865 557375090 913844512 947147657 431211298 712310639 130221206 432154881 172947333 289445788 420731800 482489961 400836729 565864649 471894997 502481345 252122334 957047308 710084157 733542250 50526512 559105023 878674048 959147722 592664453 960111914 430180777 797520102 555797554 908452143 69148946 586723215 337602313 896760290 184235887 739422286 368386901 913406566 178479341 380221692 838893525 972374811 515827797 747893692 412995232 755853407 949325892 999359275 101440100 345866081 10526135 983548858 936597913 965431539 370161757 820952183 62626015 760274131 744153789 997954326 546020191 960717266 593437654 726320301 977838668 997702616 327592670 683828625 35160982 405816379 204687477 266583733 63668835 652506802 890850677 999941771 277973177 383515858 753131592 883708428 793651861 836759300 143830626 482850549 734465127 936718417 807284790 830485156 118978116 933977503 353655807 552666602 198110512 735965911 945595885 973453258 460824481 602101638 204827374 738574874 604341711 876771686 236972114 676181505 713385402 803500222 737571306 760937917 493277158 637313762 45521549 543826961 631358889 734638563 331932738 581268452 100521159 411436275 412231830 899770286 833482069 861344151 144997086 531571567 741309528 979742469 143021861 480198269 341473777 824050633 34648605 239023972 730837292 868375775 844568273 975418859 136033308 217313492 355872257 862731850 590321867 835255775 761770488 765974000 63207876 539676920 193020653 437242383 238504005 711682507 161309283 788994682 336573446 977113506 666094571 844026765 337790774 887332205 545619529 774647943 478413983 545512683 691691523 746324701 64199112 958668866 744721809 872698974 140455112 503019632 973064375 987934026 948534715 978759111 359128023 447877197 700148106 835511176 772608959 784258204 914068701 924633101 576816004 821115483 319924220 514073158 176834144 335109942 725029483 804329439 297188954 357129117 651362655 750147109 384929861 547418879 477387011 610100076 430334322 680683521 872095910 986242143 384345754 783764933 518115453 740000277 863854322 948045695 469382744 670543234 445968061 484543618 671569663 996231537 635738036 850376034 489050601 839610287 469590656 820519585 594666292 974562206 818657915 885108143 43971317 562693422 956670124 997328684 746349957 876895930 280672776 696292920 518346109 556334668 412576049 827142612 679054245 968896117 315998969 607591101 149328183 804602355 461674462 757443165 994748897 995337249 620507357 889756392 381699084 640752147 465644300 784059061 803479672 938368154 175163749 519158605 835502860 949507952 29867161 130660430 782977381 878885724 922162539 933519261 210979138 576415779 918324508 982436934 497511993 936936189 747392856 820911050 237810193 252807636 746653953 870973168 174730320 818346683 199933234 490403127 37370826 936642224 569334305 679773193 774263995 832150013 237881611 803085010 138179813 887805128 693362735 965439092 499544034 845150458 726227786 941189911 662693980 951312504 3848569 578106042 140925075 588883322 474728378 552753507 894014779 924272376 410554220 949144847 275771370 758621480 813848701 816600337 720392661 903013851 572898804 720991885 971629358 993495305 843058567 912853375 231815883 698379604 280193414 655030498 232201382 636523973 645789428 758926628 895525315 948581099 901042436 962671744 232076600 343015794 915976676 965901946 572088201 779321629 557835207 577052930 612443078 893975439 256196302 828627516 977633119 990271756 333254911 441675435 173557803 611997372 110151809 595358723 7055295 358094882 566505949 584082964 66116631 831808183 38358283 165477075 763006148 972907982 387150463 389624244 567608789 961864070 451291537 911665256 152578754 931177970 936090526 976657275 659408717 881634396 636000180 960483583 975180699 989185929 383180300 934484426 76320679 731764710 92401543 448986491 996103426 997190224 164720255 338105147 600756209 918430806 420279024 579735062 911168482 963342365 678754713 945810313 942037975 990413556 855941765 976927595 138566728 522838120 768529958 980755988 820164618 924690273 875229372 980093053 126834633 216418669 977266848 980038929 370729022 929358930 631174037 791477773 737288805 880541498 852237000 956572678 464574158 955784423 236873616 993676928 891818349 955949253 581414909 902759869 657825937 659826081 128772365 798067613 731863898 743862057 898097039 950835480 394562461 611192376 779184547 972294147 144818554 991301232 755741389 968083415 443132399 945111165 70913615 699998438 784238741 914295341 559995192 570016317 755606603 763973675 913885220 955412352 405256936 978665817 445334069 735683792 886309662 950654558 797406297 975757644 674042700 972562777 873563339 883047641 900768698 901106031 482961013 798423557 808987300 909494342 641043202 958535893 4280508 554798728 400602592 655815375 82346549 508351659 213507580 642024544 589736709 728279051 635454780 691080162 148534092 172830770 32450017 524472450 266553416 740489263 141186762 389124612 52915046 250480750 768754113 881565506 240546509 945448534 918495623 997486963 332632392 799590151 969678175 997038956 681309327 851919345 668659945 839737094 318567237 782925296 752670032 827915619 857358574 863513646 343827877 792237939 561636772 812310778 351636164 555319813 538315684 543627205 566834781 866500485 922086771 952663712 940311787 946513723 570505068 795707277 424245101 457663647 492310074 969814987 202716316 696249788 34543526 834806283 118464574 341985693 510160567 713773646 500144559 756105946 867649363 883959603 783490913 787988306 477554391 943753596 915883610 993054809 554938577 666828632 351717269 738333002 893995041 987826847 663351854 707039211 467788867 601829823 752112205 940213597 330606109 710981085 286706209 450537735 342490963 772631459 237616188 515256759 681279945 968697098 542060057 586128730 345420193 663921578 483466054 949401511 446728345 914366272 562516059 660895060 227824947 957846294 197052966 571281177 785903435 885637434 921332034 940615467 286625581 916495609 322090325 499205629 69574733 334343244 171890387 862298273 41826549 308707004 896858857 954339242 663970158 905455117 398504184 503807048 972666759 985420924 816505821 835212299 335353903 634801997 478737659 521759238 914965313 975298369 404155316 461292971 993666598 997468684 827377509 876651154 309484114 533186657 294857075 679627434 881285701 926474595 303168048 801049922 974740933 984551967 345109483 778218143 194800799 257834702 458959642 506568206 304448098 589328662 237796196 470747386 218920237 325343928 498494691 871138927 877978185 922982988 398122047 926685199 305228274 835580892 795921199 969989177 389203953 473190060 759827409 813731733 711997530 871658752 209521106 833109616 320309981 964227364 322020822 569059652 19048790 719548609 637053788 753331223 950921416 960948780 133482123 333172077 507983512 772588557 125973109 410186109 122434611 437800615 340905057 498381808 387498764 856022538 864478531 949307747 53936598 704344685 532835655 995280634 339001065 899200584 614379513 817958173 87095981 893906176 552998482 727389394 22645191 224935380 823244494 886385889 306248011 746324397 433446083 493811744 308976387 625175787 4836658 781331908 241318264 398534856 769134059 885509797 21506542 86917292 664452004 908464678 205535185 750260166 416038342 829652771 898984714 963812925 206267175 647362113 497571335 718192234 276555677 348485674 442374791 816494427 138416556 770581189 809906896 987119733 247743027 989601541 860308919 967132269 363008379 554875992 651281972 874592983 553781216 689349051 172348381 319593681 270108771 551661945 95914445 281140343 125666689 860375290 574075506 612571323 463616801 976636574 534032984 622615298 964978565 976782728 723677523 971523462 454277988 539283819 657754075 826550390 333615618 882698629 973579330 986184807 517453136 549010157 90282421 387499909 785150891 950155256 417923610 769178012 784437512 899926485 266163070 467752079 645301476 771797912 591506834 740585145 321518989 555164237 505731612 875069725 338400694 767400830 201744333 682961516 643676414 950041772 876224660 922601699 519341624 591343975 312649014 488915132 113998601 231291807 373202252 802771744 391257733 819476822 600949813 914620090 192345656 842700434 31991071 330425554 85660333 503886868 824617196 983624451 19014019 647205180 167146704 834500649 112776709 810466398 715117389 927101031 307859554 617273499 812659818 879834087 553484773 815633524 315484570 783120853 463280195 946489821 344984883 593124046 249291649 821627325 998397801 998438836 761847151 909588144 260614899 453532360 948318552 974023857 505977700 641721388 182275927 681648137 53190150 104018268 386186698 473753707 817527898 974100204 652216020 730992319 918903041 982209226 762963245 818179831 856955255 933153696 34577810 145356378 267983199 942463483 36732954 474668460 751083920 989913565 310608639 984870890 181853429 548352402 941226156 966992158 708676350 751471315 810445740 825326673 908282390 951500188 982856648 991754890 79655008 791851267 32569795 445965725 94202205 347758605 528968225 641112642 692356952 933128817 370383460 655171755 466625600 927042057 365053203 493948756 431977597 750733972 566536681 789723151 936493941 955065103 778566402 933961092 465529157 770748111 310138182 465239796 334102307 620521854 164112451 303456204 753723434 878992439 257554488 325753520 572918906 958787746 511887572 557268255 734596241 869008768 520386590 799943091 20074153 394649785 399167288 559178513 578354650 956597828 47684097 803385123 182784989 433080098 266993251 381740110 793191228 829234312 321163375 751263276 490883137 876394119 63925707 483036886 814743328 956511795 893648564 945696797 608763658 741242842 591503279 776769461 741291894 846417034 354176592 498333540 711984706 903669320 704102281 814206335 322365064 700003620 987338833 992391022 133591423 467007786 106026530 673796082 944568135 952497440 623667628 945448455 771260212 799922113 536728025 738570408 821601057 823914894 301853259 593651875 189603641 681124938 689335073 782118148 763044046 832981941 9103253 121741573 939583614 989072640 830801756 958476080 837045087 861209603 496394194 679568490 935938614 965394417 620759889 792344457 161368242 749009384 897894780 958540391 398354125 940208962 695789963 908559395 875529407 932445207 405000582 527034198 219102749 335681652 464482425 879295083 45470471 894390598 250851282 770308249 285334427 920890870 593979030 804343320 865520486 933248831 674673653 777404800 998634362 999894381 827268579 994782582 864498034 978385949 906478669 944643948 783163140 824913848 402402928 440702598 11116373 987524012 539174724 590217941 369991581 584397192 18996387 615521109 955646915 966575819 859826608 911875299 86645385 708781652 622966308 696457605 197682638 297521158 757025078 899906455 467510555 809568289 217699065 742847742 973187313 983278759 509004007 813558303 896896815 907992970 163188124 265763380 739878973 771508264 980938301 988242131 731487877 915560372 320033664 845681579 252199734 447324479 103311626 201953060 343454285 978372009 16262730 161099625 184861776 982704786 758378402 900122004 770073400 803193929 5407549 702351612 644245923 811891437 540747173 662599698 357789456 868697932 394308138 821263000 575855984 893730334 172890700 842599582 314051124 829108989 983184991 990094187 180267550 337424930 38733643 467404862 707648655 930006245 957128645 976339996 22838367 593719891 624188736 643566652 287234117 524970454 853219362 891449804 951799969 991945698 942396660 998975217 704087082 983205677 705262424 707693668 479608457 927990327 647285238 898018923 275215130 625938482 598055091 871448794 950031426 984297556 483820802 655158575 251089111 353456772 6835749 187987479 229350610 254142375 898557671 956322548 855225288 859686415 481656781 666069407 293723843 796890255 12688098 704919908 919423198 968029085 138070808 542391563 319922330 531769419 416289977 621947812 1062909 298872438 424417032 699438129 641223528 690841684 714903773 950013769 63080623 665252754 447211008 788738726 674199815 932524472 402190905 931415045 305470707 965874207 107964020 260631771 857733177 955227210 826258226 950352699 271151130 787639327 201180221 408625964 670189855 776220765 400932613 568207673 209007202 595721675 947424441 948695153 776139698 822206417 752603134 897152816 305217736 654740783 926624972 936577792 293234125 403160304 66387666 910617789 702650152 797960058 555914746 979014323 553615140 560157910 475173553 827788231 604220876 927397015 224647943 858574487 551604712 715885178 708100594 983814031 420333126 817895300 182497397 629236730 749022566 936836262 375296697 755967375 358985216 695716627 649366211 977657430 469485996 506372208 484843129 712286915 824184196 877967082 348240619 794731830 857480783 951017757 155925403 913564384 375491071 612765103 781869553 928423049 139659440 771700086 771094249 855704372 802131142 987695940 94878608 462101180 648871583 997747259 211304899 761363091 324598522 448582892 980614597 995410052 256062872 793333355 950784127 957493437 56698598 934791178 459257713 760994415 928438397 935059764 5504403 749600423 461840908 642119871 262320539 418326543 43677190 674584678 112176619 563021384 191014604 330808876 949833517 962463206 559825453 829466698 882893157 999950752 684660115 870679896 780810046 849670100 714401320 942789145 584732503 885784466 347295496 802370103 284140833 955228888 426366303 545466588 731231146 877722098 354298894 843784696 332523000 979766999 210704004 611616521 302619147 598934179 817830959 907741816 247336936 929810546 548767561 730081372 729449562 986927086 413493722 480264149 785476927 919345138 93339953 344665655 76255416 141912887 563734162 675819477 324629900 833750217 260378590 559362445 189471276 456582843 141175688 802645928 858362570 959901903 234792957 469741162 259018266 867472029 221790000 961625324 615733375 681860056 68803333 698587121 907543849 992250774 487787199 718121786 135569846 719477083 984682965 992839885 47526463 98362781 855203953 916289669 14340314 546154610 160698793 352177084 902366619 903189099 462937797 732755941 497754761 780506125 970220242 981634045 232290727 712270459 484293351 711628106 493002186 626002556 955683487 955915498 475347983 877341276 931646725 986205156 83643300 712838876 878654298 921286380 815327382 908091594 216507942 772967573 172516308 325212264 541396137 610928238 170907132 852009082 741114216 919205460 803982169 857327585 421861140 868416322 867239334 991910943 506448983 828953124 251051251 604588758 799289582 821787594 80366623 911090345 584060779 925498365 207879448 588034137 635123247 704144787 985288716 990147226 418083609 948572704 891505951 947048127 581871071 814031794 344961581 596132782 982164024 995086963 189005410 907808397 349403134 524390070 834591840 883844390 549831442 902914015 336689746 932321173 305529545 699445999 890536508 987711031 326347903 516680880 998732655 999642172 55678225 242977517 517485387 707084840 442940929 614226146 831372305 989698722 129223617 747377060 68891845 392705338 604323451 894835143 466295636 759116861 196199156 639865078 387668233 505451664 237004453 664331307 755310472 777161454 931481451 987876564 171625363 325629307 606542730 773269472 695403427 846548969 284512917 436430858 653623268 865637583 383296452 854354909 274673776 287197391 326940003 946826667 612998711 883791244 646698389 677597852 972622435 974101784 467470465 891961670 440540749 544000298 999625711 999800441 200696130 567763899 753570113 789198062 55557359 67668701 310081133 823842028 519154774 958070193 383814015 909644014 943977540 945238021 740769094 970884615 171375240 478409129 429824719 939418531 943064937 962377423 259667942 665357308 871769192 954942785 838996890 859452082 290394909 747768301 538569834 544072651 950866045 979845144 754784935 786185288 446807701 667719123 577924089 990638591 6822036 775003815 857118763 936662684 889261487 915621934 402635759 746602697 532065474 923569824 539625040 689504883 413445829 643925045 695441724 765832416 513171885 883607038 755432469 881881534 51289748 70640555 420565073 424094366 960133870 965396897 734404153 949969270 52258147 825810939 426552810 492510318 490980511 908329107 12504857 372371956 830575758 852973918 838532179 982922424 642536861 843281337 613583190 957952563 691356527 736926964 21901072 754348283 451290426 596863091 240974341 422819603 317709808 409111140 646601179 713441338 355097630 595710708 205320851 503649026 926154098 970124464 977794278 984141880 723169768 929029029 876878800 892924989 90502654 174741651 97670436 957762880 657349958 964588379 415795374 529535760 183623051 398632519 71005071 485500469 539860108 707190305 766932322 823080362 607698267 888455068 308446943 418928738 772939830 853627390 38497647 198181619 795543290 974124642 680237317 984594623 846588675 952890886 537771418 747112955 209474042 810321918 586596856 958417462 720492724 792144894 627565243 677894083 315492173 509061823 560815279 956646605 659742284 903155297 902563379 972555130 688974101 773105779 437330709 831471142 841671136 923933825 862563777 958841873 671845933 852341901 986990951 986991627 938526279 939773255 412037381 847730248 385418753 488260382 620606957 714981401 114327455 534957396 671675343 775660843 332311552 355840025 911584996 967209944 943570794 999762321 917615614 933142087 104844390 890968280 622551379 751321241 764391598 815827090 453804962 936986842 950182694 985434002 21302654 694072322 11607550 528384002 731487989 836218452 318836104 982349698 817862209 833165069 673942669 767162022 601662891 684442809 743796067 789953406 758193384 959510050 68749986 205321624 258869729 995492687 370066857 464290170 584607993 619144071 181945106 408038800 145228092 953574872 648488071 890493831 87349818 779709019 814677921 819948266 849328569 897070919 209167971 909443225 850633459 890554436 238976110 474516516 42950011 806265800 302055337 715659893 634743275 817584843 133499518 528260663 422427131 592656544 735608727 831129139 97975528 446230505 917236402 922663050 8145259 896530144 888679214 903197257 873314283 941757934 825266036 865314732 836167441 837947679 845098423 874661624 88175254 232129161 288210621 485712801 648198693 784021000 615632522 992495799 561995317 915357686 674443902 678660487 905579865 983965807 324069659 853100033 10462937 387691999 781728521 845370934 966279232 966875094 109613136 204422622 65948482 379776607 96277076 721824673 670758786 860122599 889319224 946339829 336513232 825498037 857124046 908949128 219965357 884715464 429199982 930626575 344599268 569711603 846694188 962920784 359462933 934985623 385670485 626724235 809876356 973672537 295998325 579313430 963617990 971099581 264881695 773675375 972330632 998995401 890488112 910889534 303414905 664446305 135693044 526596066 445535582 497201406 503836778 642661632 531854343 972175346 466834261 800676947 310108219 990766683 504742938 531362391 120146291 838443007 534748520 667214718 824968579 947130305 537101375 857261815 313509916 809172241 140050651 797902363 508870656 790326732 702529582 937928606 521853731 713536100 627975617 690313981 101161 348545935 588937532 963270295 397870658 969085212 921422550 957916476 890684613 997864970 230703264 850345958 225522894 378316775 28578644 802106791 944159044 994488792 395447911 718117605 559244604 823343527 571643881 694077250 312840071 795441356 356701147 946625062 252846404 305038868 812121075 966398617 416244562 760248044 512789383 592485392 802912216 882419861 344402631 640156918 699616124 948056112 540652347 981581582 982415070 996676294 669327291 700694544 142105935 249514024 579335049 616695773 943460864 998932640 597921753 919691057 577433296 774863571 718204987 784193524 262702016 426176541 880065546 920447962 318993030 989897380 867890150 939309158 23732250 676106536 714833581 898403371 599839810 675955418 475544743 968201000 436007301 896707792 344053217 659387563 303987004 966163296 20142274 142712724 635540394 720827969 673276369 819668718 485571986 540574513 7532458 215942725 40601218 679399054 946981416 961025581 625112274 710513760 466210312 499080923 881824893 951664161 25794901 755639574 43341403 507340310 925172013 961441567 26479944 747385327 410622228 893394256 284816316 991242152 570890060 773939133 448817658 821334618 976949879 992033135 206247423 640495219 511284478 888751526 653846629 880624123 870546424 973038517 731455547 795875449 253729182 334257675 369742266 666629993 527530694 550598238 658381196 732998303 694514378 698225386 639535449 653305246 896840545 928267554 855097598 998347897 743871572 762442856 925079761 979709198 890581341 920237244 253376641 730099989 461243649 886194242 424682022 881256782 280381361 515269466 475996733 615190583 126422850 549537375 488982686 655300970 824956558 868589171 449197253 573586678 439819829 679220672 983961550 997829970 109873285 628587750 612043021 756675517 870674060 970833597 632763191 689914228 155100608 314686522 621792508 944252371 203905965 812631337 6736878 875443606 915986682 926170056 392814657 862345728 525819180 979953492 557660127 836138524 41568320 978581811 278369341 353150226 641584881 932131760 466597161 576984414 705187801 808776696 865854951 989332938 1063264 142734515 87874868 670570095 357225856 654454685 120359363 875753348 922968902 960328608 288734292 487167266 271389448 796845681 308439920 888573026 956464857 984395500 741135519 838557575 189569740 920292749 484701347 554769262 33347199 234952677 672733497 722290603 436423195 823164769 243411185 381671686 116467689 482369633 524644021 798420029 785525253 857415265 950020888 989600867 524287242 599958509 713440381 797992674 736255010 939144420 800302845 940658574 473908606 745315845 637449232 859232639 545936135 858291862 479159914 562953386 86478229 267683068 518972226 893895060 179706071 591321895 733079394 863281999 314326529 346848710 947701197 995668685 364952647 677482746 635138020 881139694 958482878 976121716 274431154 615756525 206341690 358010987 775684317 797298115 180322343 645472462 14436737 358807298 414365284 753739914 731624998 817669316 566119399 633629848 497072400 835830783 24159969 281249324 56870449 834305422 613054894 982885274 596650186 634216349 336895292 512161377 221512302 763969327 747581894 776700880 739069485 779244193 197893574 688634128 536895310 676740791 518809234 756362105 377124810 538818420 534419644 618700312 121422809 523124750 351252267 658122402 34850943 519052418 581304907 928050138 443311061 916847925 849618810 915293258 957512283 966121600 733675606 898634180 233690973 309446413 833164515 888766313 978460452 994074651 143713882 264102972 889205775 924555391 397221154 533755079 818395765 933882571 713983744 869102565 235108209 837196025 658240495 930332213 452919523 852780008 397317784 502127007 360720883 459751735 954388703 987748122 586731507 646088157 805472892 911756415 868600119 945625611 520518046 610224924 959474386 959762444 88014365 254022260 873932577 909171262 715470708 784747364 133250636 973912550 292279039 952596092 788463156 843926887 766220113 873503985 696557479 862580943 871266224 998621396 190386325 706316089 421163982 768706215 263090861 668255265 948262809 996320489 197939451 673571299 986708363 997657463 711432726 872861873 984050454 990919331 581542976 732695606 851074489 922374909 53096648 510609999 86533444 157929375 951895665 952694599 253701790 785363791 497851957 523763150 6390295 156123073 139847804 144178405 541061648 568377185 891890756 965664199 587457604 601148115 38101994 567912020 156150159 520254372 336812923 722413007 51656435 995546044 983855044 988211751 506335486 659672243 718160388 866438270 271503927 610560173 265217819 851731015 784408548 999063204 379167558 662584737 515968072 577933600 165895702 938994235 748237157 994547381 413874608 752424130 658154417 902216673 377339778 834169342 730663132 810900545 345330543 704971994 370635600 972107081 156852094 201816679 477454978 513777649 601236624 887430654 125595268 860875485 833685359 909776142 109931378 768126991 501268059 751582357 43569682 637825809 900054409 988345884 733538162 963195231 392372814 935245347 656165939 832130314 244656144 898101258 638526079 688487009 789047338 949061273 481188313 804112202 990097216 995375291 402879309 513194597 225425490 626023509 892485262 925635800 988575209 991279864 658560235 898799204 681248871 839363635 421735567 615611171 632470595 795506891 404627621 907471774 888494214 902093492 315358819 843237579 739865910 882871819 179058483 206796146 19643193 931136825 54240636 504465906 909889886 964828937 729306811 907672806 469339965 510689873 313350806 616855660 658413352 744900030 507101860 980701842 452667884 817958242 796193650 953407590 205401633 231807383 441083333 914468840 843927551 918278405 252467242 764339417 289229697 615472030 925564483 961639453 220995098 307865017 434953797 899313134 825777199 966298224 724044252 737942729 58327061 593481581 137678280 200707315 55207318 594371879 88805749 486114702 644836389 662158838 111401037 774636939 716965916 970223895 4759137 108534968 900325671 932220878 904588173 915183239 178393267 824661687 710942616 756464257 183315836 441763931 470882261 958399258 414411124 763696244 11690819 265693237 433833404 462147217 777381665 903360413 983984108 989228068 763762459 884456550 124384202 804491236 34438012 547877510 124803664 506621400 243583798 287048610 497684189 653002157 791691915 943120696 60829758 923962062 247170297 339083411 25640180 653352934 65035970 289710696 522347081 877228569 690950697 694447545 936905635 963559671 364086779 971504971 28710910 963693228 689225140 988801035 622528145 756245457 868180731 943284715 596610142 795867606 506397732 677012744 316367995 325363613 603605351 778422634 27510525 982850638 192638608 773645200 63809140 891340937 944091362 999713729 583186579 789661633 128403089 822203789 577190886 579809262 273716700 625189121 225718095 773519714 128785031 535974177 781125338 826028245 56722390 418703103 20081144 891239522 126481647 983595997 4974581 507507832 367418038 381350715 266151208 303457942 908819418 930580195 692624604 795084448 729356723 794017658 183872324 373989557 234057934 490645267 832150364 887694157 676274125 758008372 217053882 269078029 793471566 826415179 223576263 407770772 43014522 222663451 428985239 570578157 914145038 977169439 50658539 435217531 908994555 913675342 836976740 897677817 593194654 994445539 907920374 912359418 490217223 798845533 279715463 817603274 286316631 579439056 914716581 991959091 831102927 967756810 481288878 944755975 410677589 768202080 680723219 812607471 846243693 877195110 792567235 960167576 246104847 457524316 893805005 895597379 917370532 953807158 159380922 398150923 428662653 439383988 916403930 972456390 455472609 471184126 7421348 910707491 356354151 730142320 656043238 753686327 889579391 956329677 755867795 951574447 632501230 869584326 989917523 992589732 849778785 853361844 330193744 899395879 139253397 178192561 47409047 958150840 109002560 917564777 756212094 867743986 723461442 959169342 99576210 370202276 181989825 357407933 594478654 926768536 902969826 949165861 415219211 522908145 342939072 781231209 927473356 928086965 922962369 994183365 759183083 839757181 480934461 627411786 739144467 819680784 614002832 718807352 442016304 969951871 389465866 508616130 357726359 461074074 58206752 401224190 242714334 244859656 67495676 589831584 80054009 458330597 835259959 845823611 858899074 978121692 217744179 843412947 544964031 550661883 90517020 970107020 742201910 861080810 275878095 427657073 54773285 794185620 879921548 987482083 359848062 488789023 617881006 716399961 328345840 363229468 94967836 861263613 831235987 946566487 778026739 832730903 224226655 660136958 741165327 952981439 295172779 359552273 621362789 645907298 695780627 781903990 915702558 971210179 735787304 786378067 387248180 893193216 639256297 766901397 788279661 968101482 72320005 688298676 956886004 995883562 500001743 684827291 144823151 549007762 785099437 998499781 949433828 954027321 55731543 757385714 912494180 945939362 926852803 969312368 140835146 153793098 284536128 748288741 352296753 878339213 289450541 638005777 343518156 952264659 320356105 731465722 624530051 865119885 351586613 853960787 51181561 321442526 607389079 642059635 464239470 587316715 585613380 586951013 458499494 609480586 969246516 970891269 564195923 598253637 346272746 964184337 462145298 561000773 62538576 121305400 856764642 908082954 369746725 880194786 137235433 597119913 456279159 744771263 49015689 52192971 225856043 979222222 877464855 883373776 131566797 478103770 165301924 983148239 364605447 604734732 658343422 914516889 691556982 936676810 612313735 615784829 604795336 719778114 775237474 849035452 539265907 670376900 71563883 508308954 781612329 971077280 339536305 477576816 321941209 356371444 157857034 283893855 110378995 201000176 846644176 986204387 748554067 850441770 370941794 924167580 166994934 888697203 606021109 863248140 201695787 860879803 400274429 960926824 55871643 194254777 215000329 267720721 662322028 673055865 311861608 947647187 467913643 497957726 548499309 592696482 300479128 462320077 508429334 907426211 653488576 827499477 550921065 595968827 416375224 709849920 208784336 373055694 606138736 869152306 248212489 740786725 217267544 273305705 914422029 966246590 871580175 882865055 580108811 648566381 205425778 951348955 923483152 995745394 11307033 266842843 678129520 745195024 114028939 660347907 370768863 646461286 318888885 561776544 803548820 946889280 158224682 875059125 403503161 960728598 697434454 880487423 370664863 789131473 512098481 979365658 814239120 973124570 316939034 643914933 63538925 455556580 938261896 965229495 699819767 945551183 399803599 493779551 378930203 895426856 561340047 600020879 39322493 385358280 790616763 909129705 735824414 855944206 353142904 657958343 55694087 802324351 764719862 865753195 203223402 909344400 668979704 676044212 390593669 584915566 66600656 161621376 544829753 789803050 549452113 768414941 764465463 840102295 203287338 434921276 605173494 995200245 426587562 658043831 555171183 656986867 674524154 931139637 828986909 885524891 282240751 392274618 39088075 664144317 554813848 761446329 766728668 766927506 996782662 998110357 313155707 634182295 739871561 868068362 410768845 810109340 50923142 951254363 953733175 971681430 171867923 337454296 562235297 940396750 440960887 526741731 264170841 569678557 250704813 652275141 207761006 668571899 241147704 824685977 957644283 965789196 799665130 873007144 536664061 975318028 402098398 567610242 422787515 660890118 19547410 33577168 496910246 740566551 543580137 961500090 883084353 955735426 527711203 905434605 143981213 915734554 293944566 570374985 719739157 902238140 770954796 904110148 643722844 817765579 266111621 939669501 443722806 663622905 300299223 846306281 549158044 743584835 592562129 996735003 87431021 994584381 944147398 951636367 357005649 595868049 920597641 923105576 335220610 800192162 788413468 923792317 519873151 867674941 211975825 739665920 330792973 897639334 751199843 786364809 222772077 961515109 524081266 847029742 48552833 54296791 719933177 761800266 593799399 722779057 48694175 257313110 743924253 827262924 401869429 838395579 934921165 958275893 100868608 328282882 181412751 600780788 922438849 982113195 273943924 922980076 546800326 630306265 469743422 981129259 619470419 641346275 112012738 943302428 456745471 639397554 241712168 468561509 477165295 728449008 493532351 609025220 849289040 949443602 232116415 383614213 860541841 950651011 246449466 433691655 92967533 601580249 828729731 944506049 320452901 802820768 309095447 864645130 444611372 842626834 422573492 856929571 238336035 722819410 903736069 949366604 955658803 983674932 333738679 391203681 14604519 530918005 894363678 917065820 424134842 604577388 493108837 700557128 837148461 911252245 98841518 760852100 655513371 830386691 986161326 995536019 324034889 751988017 839879876 903271385 113774440 824795552 333574711 803273619 56355663 72707273 568682650 671836175 521936396 661844557 163266812 838265293 536987002 549403492 494907206 642381442 371526639 797860597 372495403 909043810 381296040 578457379 927210496 957794688 334398542 425328805 773058147 933786108 166588152 813657344 44870157 294803819 304109071 887247475 902115849 972795342 939429990 991166897 921704234 972630849 893742656 974931442 632095921 748870132 114216818 969696883 497175110 651985677 843276288 938716027 988549537 996271052 520631677 601196569 213473128 817541466 687102461 892443549 659729393 907615113 762545701 816725640 584615856 631237011 436341568 462896461 300107376 505543716 956524778 992170484 703503701 980457335 617408976 900076936 717361728 778355038 309515956 415160893 998888632 999338219 990706326 994721650 950440217 952328244 887942120 937928628 25328280 116179752 313010629 626865660 777952625 803842238 779030299 933106503 78349041 219887777 634225097 937994985 696944689 868088788 787747903 926851702 742385113 775450269 345766687 851962342 665330462 669259812 181937567 253782647 146808870 858717750 35564573 420640560 642498309 922897571 273719857 730636248 832934954 888959775 679620898 947172242 184015313 355329323 608236155 644597715 434578554 769764810 930495901 999039644 267951527 380903359 352333646 610802665 734062473 739976617 231345207 679259445 640370237 890446238 292888136 575127280 893623099 991005933 53506614 934856118 829613912 879895351 613173986 740663080 915411777 989333218 539231049 727309329 706217756 900211626 759202892 845486157 576827423 793480374 446480770 449268319 910254127 962930568 443645929 536205300 451668728 785761378 420287646 992781678 272160330 500931039 355370966 726648596 350828137 985203878 875395256 987751596 119512125 285680515 898221271 930811298 443469347 840377724 187283121 282060863 627631941 630981613 489651235 499421947 844157415 892642671 118365761 617501103 658493168 975524880 305233824 371822867 823626903 858437243 898873569 922506870 413744631 543520428 495581592 654325196 317250852 746661895 252505086 707010391 994980391 996885293 707213793 809027200 20532888 606669852 390477154 488056463 264095329 376353042 893227065 963784444 309221588 572945942 231350376 538960353 729905163 973778849 203581722 788121805 556454510 883732916 9625996 609015376 49633109 142598177 954767800 992464880 130993498 758089703 168562863 479048074 602774431 641557985 863493672 976689471 798077696 934868207 949215139 990462917 742685062 794786559 140985927 176396952 195954040 598134694 326348694 962832623 305818476 401134099 998675830 999172544 731446318 910633442 718248395 966878917 529009355 760823532 913106234 916697876 648941237 741129149 621625270 691154887 808900778 816396748 677102337 893896346 372222450 644215973 195928270 815285653 851868658 913158483 38986905 203532472 674890194 784460952 929889663 949813549 843305057 876828314 76013102 855339438 748278018 897555760 409512742 633149867 79832637 625194008 190845170 640742775 634770391 961740146 969524674 973245403 241348870 280200774 63487666 542596048 560920911 918114177 776473343 884428390 418863396 537726578 822167265 931117394 339316690 875590493 403873794 822038107 134413275 317391288 661955352 809763706 709386185 957822880 33160828 568257915 398595714 621043251 92542158 564016026 311500151 322971593 558927976 732685677 354641402 669840042 138534747 296903293 784675761 805356812 376632100 971488556 980904442 981621568 801396371 987770555 696024926 803209283 953725924 998472915 237726594 429134331 868576769 896728973 785972070 846407153 759240205 786139567 553144527 789305939 901999912 919755265 746178191 836397866 323920340 721871772 771400378 828383572 876932310 879237273 732238222 759750444 881720763 992825960 185196874 995850523 163425326 417501816 755453051 830737167 581400969 846188919 837817314 855207561 10039452 156813320 272249173 843611674 538796081 840976678 62625458 394645988 688581721 715011502 825485281 987025388 734514349 853585086 658719317 667147654 572111477 598976749 292906767 420726165 825222460 905566949 922472985 969518769 405601292 594813567 754767511 962668308 900996723 977695802 786724697 936228097 721136629 972541332 156161587 205228390 136784551 653222982 522571769 838194350 422838757 526607716 461548006 653588261 73434503 125928355 331891127 869980266 657739507 866583102 950365818 974836515 710184392 758663261 186228243 190925631 364432089 974120711 989525129 994513416 253491704 272338436 435515488 997080046 382024105 519438778 214197292 772290745 138731203 472911273 163529164 669166379 121956698 510966724 944330021 952234156 659021142 860686551 390619249 572437208 285123327 382609072 659611 432758817 884407075 962573014 469091979 667968390 424864132 523734061 821797092 837030662 262983736 458941573 432229253 877638924 198249561 930302737 997649057 999455774 596747282 864842878 906878385 977030292 291498849 771758506 476772269 899099828 72231305 323494111 46321338 759744317 178433524 276847894 880446367 912846966 903049726 992266607 589526942 839560194 137596996 678808770 751207817 986033090 455518482 577025087 742852188 877855398 791179671 837431121 98531379 776430271 421307305 763197355 420347776 966089017 806410482 969826575 267096916 323406116 112827492 528456595 224036217 370326218 384948448 567775598 468842395 543854045 246999659 855037785 730794546 921345880 62585580 748186729 649242602 732376951 959287224 969892544 878212392 901795337 589051031 896260405 611569843 901725215 310190233 899170620 400446564 447735849 667650305 728988958 572551367 693015934 861892383 921729672 350284645 505658983 657910203 800421538 284606633 570164863 520489800 920424112 291359515 669945737 468067821 857261013 42687028 695723789 860306448 861862852 276945158 833054388 214297486 641368714 236422846 967224851 934805974 976647035 553707811 565829019 287724112 714725444 252983117 669350082 805562658 912832100 645510187 942629233 989472880 991005472 961843104 995814062 962230190 970950460 101219543 474715549 939894300 994976267 78569423 237121586 713883149 981201366 42962708 534853999 493888534 817581969 409252111 806031438 825594207 932127922 441170618 906043864 52518970 669403793 519752787 945602378 890558522 926357896 49063877 859446644 504670601 994292332 944445875 950851598 974176916 994145970 725597057 752760823 316456194 595051733 102799533 880019906 994487125 994689363 404124459 833099304 838322477 906288498 21699078 133437981 202992400 523512943 523952351 849232801 469271423 510839954 874373475 928289238 177347008 426102006 548737820 673407395 361874593 593250196 666358626 838736395 750693574 851211907 318877715 503953485 511208186 979726122 997282774 998262371 462772673 896511177 987787864 999665923 734690754 830348893 541702582 609226865 403898448 872480103 578216359 956992541 493946725 730782939 663879393 876731888 380413095 699487235 961418190 970088758 510905371 850083887 170757285 789291935 991277701 994240844 274678351 864741104 786785697 832344292 518716016 758120598 298655474 382573944 472632058 837829838 834583809 923622938 998815239 998880464 182280363 650439243 611467728 871441894 138085647 671926578 384281391 524184628 775198643 886353537 679248604 815696869 974879241 980956598 95189802 171469905 189328327 498454541 258462385 550631364 655335434 780291181 566082052 672258935 482462154 698894751 836514019 836906818 15318750 144037518 417875906 971317721 105799090 737919400 53277109 63466273 322028782 885295870 775968991 839578354 817822703 886361339 723369067 986569802 94478385 427615025 82574088 95890440 14357351 645483408 182319646 866399006 697546487 825165716 136261030 368323191 575192250 828730878 470384223 762393116 465980761 960822660 631622307 946128368 51241664 919720413 779189048 907138072 250625026 563391798 432138752 662095402 417835970 762693164 125420757 653526789 366510531 406861682 644727697 977556521 64676253 606045417 84963183 558498770 744529766 902326606 322900152 433926929 793291625 806695335 308486540 553636629 678950984 873399177 918979383 999984745 322537276 697625367 314196412 363209477 540488741 552897701 457002996 811666123 555470480 710333354 796207204 967009891 233689443 788891306 735725807 879476229 407298138 493643875 59284557 390894986 694937875 712982673 958075626 980860480 905912464 932416399 295805730 359017401 281752369 967082996 364380218 952110258 722517923 950910490 553827699 748055566 732462522 917677381 547357582 702276855 614910393 977558620 589134497 750635003 789877696 807831160 849495172 998332605 798410325 986392763 332954516 541481613 581528671 705511599 339772627 518587982 221975274 579522886 468061092 770670340 228546718 998550793 295406956 655013765 911469076 968614583 505199708 832032115 872779719 900025454 483136222 953673007 441768926 962590953 12066225 633465484 367607705 973910748 482687436 573528596 687826552 883253735 81376812 948802016 94275610 936845774 367620543 700673744 802964405 953518878 967637618 976893068 867035203 908129677 542624463 572540535 159306259 820281152 441933944 873942703 734612961 988816792 490065714 755425754 807019236 901692599 62362580 602640168 880165278 948575414 256609756 751124527 307671057 792203805 845144467 959835679 176461797 439570863 172418582 626591926 355685051 854195431 425164942 831917909 518471988 966516599 504084005 985432988 953210488 989005496 773284996 904969257 615897743 943743368 113452081 301517243 633509102 738079175 672733336 940440455 700584166 827462716 838155773 987027320 248136782 643504375 295112949 963017290 914291713 953434387 317765725 916434704 396074493 515276096 852508947 855901966 983291617 991698377 427817527 791284693 963964775 989824359 552168675 652027547 276507342 501806165 721122947 933696980 938151828 966710680 917644917 984715200 216090852 629715388 81404621 608293611 192360331 237655028 666151336 981059183 950100922 956133070 548310577 860066912 890513233 919821250 755340912 813031388 436153875 739259622 102136934 198616147 376757661 382364584 561101088 624655711 317546689 602796377 928358056 991710635 273690126 310602401 986287192 987900257 579999450 941568524 800615450 931719351 201910311 642232237 646070721 820626124 933889468 994343139 9475042 779923030 585756080 856553446 28982519 509048243 455539041 725892680 157041914 902027589 35519400 204398982 762869274 962888183 632521021 732645727 349940944 773314196 372442855 697452991 810451766 932130195 414806072 605654019 194830637 920528203 379400112 611198965 608500711 974701164 932321850 956701106 764393496 797073196 932222201 943804239 930326918 959900102 40484972 999657620 316001776 456622622 818778245 864913240 274573012 942851624 138248794 609371375 388160401 980187489 202001958 383702205 851983408 883010625 82753161 152660208 724205925 760778593 458541856 610959082 457331700 993385559 803920890 805673879 518987995 706017863 449722220 494624973 492284127 612681764 887516805 905155086 224195055 986934593 950223287 976611639 496379409 750071509 377124360 922676123 396547536 951720429 812100111 855404965 623205197 978852884 667112106 839136007 421381795 489427219 449393418 901201728 836011425 854281046 827053707 918095718 901788703 934182671 223832172 850520638 905968845 909959142 752741662 875375927 675060895 926838555 724338633 928295547 932262153 937460535 585547694 981036830 122765090 390781678 571008502 834360655 900252 578575534 317333226 541751932 4093886 382050045 857320617 911482334 366482887 944472821 972040638 985336364 183041304 427259078 369341017 952145889 789122195 950588353 845832126 850672996 70580874 676977675 502109022 577434372 387524971 446909698 789892650 826397860 163462629 788724982 414206004 431953549 594813796 792258604 696914796 710344033 387130266 737464842 997327742 997380249 47715623 799974702 873855202 924956002 715777352 899469674 199964443 720140412 371788387 957110791 613893064 694237461 184616335 382871618 316930295 947001866 990343619 999934062 616541919 718454727 80391898 276669397 13231686 442511574 49745920 962314157 101607261 510476013 251012098 817250828 535619362 703446938 596276446 821851809 32488892 189423229 394787380 503028112 571329688 885770191 910161618 931026760 563910997 791780465 702928932 985101702 312157946 781715885 944575843 950797750 682165783 765429714 404976121 995749291 907050125 918591616 470983507 471248767 972914385 996508875 358552016 669698243 212183251 549345551 448785416 527036639 65229913 583622743 369473141 859520397 218291094 671094307 703065350 870909466 458699569 677962713 405992281 480635865 222600600 490986105 520285583 569384115 952919124 988512447 837980474 908248150 694920895 785953726 923789672 985658088 357193910 799055498 471893115 475935685 639661724 767855199 14847248 513022978 109847528 966790453 793001078 997848588 165877306 506243177 72273417 812541555 271609804 872757337 787234750 894272444 208012520 289814461 147967448 618542700 192803910 631880231 905438141 931326678 339026269 815389465 650949104 672360269 270850446 774060284 595431871 621238666 370045315 659399172 403348363 674208431 573872745 719976913 14785990 980106412 805076224 928085390 462735900 902742210 188848869 297108601 872126105 925423505 43211109 275069443 942108088 956570293 527411593 842092349 460471836 952569645 881235375 955360067 309484748 794240109 352418907 825759732 63150709 462948316 601824245 835170575 104519804 108807342 623571527 705171200 260905053 450254523 586391317 858180436 863649678 947587058 74976298 261251260 750601160 924021866 936110600 987575126 13720456 323921940 220279632 849290766 472407417 744960856 61068294 618596285 895651027 902788344 722508217 794079229 77430366 491238989 957929214 987697871 590399395 875270580 186803179 893040558 593509382 979567422 219343536 722108968 546328765 617270542 497404097 689059551 345493363 943793841 899952733 975156647 485686362 827077443 695911723 875447720 942555184 973052368 94976442 108185153 377579650 741426183 332966476 554556899 419911104 428416403 564335090 785987565 812128970 932782680 372796542 450899313 293649091 355680728 442715578 735573864 635023719 636424079 316274233 543719622 551170573 978655751 955227439 961804024 195045367 257897751 994363554 995213540 1483997 549846718 540457022 721022533 12439028 627256641 973958839 998225257 200881415 607670839 690102916 700675311 983175504 994508606 183191740 528535941 624477321 796337369 678735432 684006768 335779012 473600740 654299835 661939479 622852710 676480054 498553295 653606728 162398553 553133371 672063677 784258014 653875353 797016363 678846209 943879354 628210855 642866855 488627454 959290198 227685495 834913751 920413985 947732199 97926956 393170085 334491724 782475498 434272863 573521560 700525876 739919292 508442956 686421501 955313016 998676764 417843857 671905454 600834680 986401279 302998324 338694018 777737717 917685096 805066693 892007330 108928117 910201656 366732463 450078767 123527256 491556977 709487510 767621268 284772395 431010833 32670100 300124607 432354814 662945264 556103630 991386971 642700220 750217478 976292414 977629749 546582859 550912846 938098478 974919876 239378037 803582727 30039671 104508134 813814742 888399041 801485326 816462234 237455435 633484555 820153468 862634868 542477942 794888655 552044506 962801381 786499470 915618513 678885405 985071925 429008572 765735163 689357183 960832966 944646612 970570692 264266288 722402434 625063011 866113193 878391882 961821163 675021491 781449882 7200408 389370346 385253194 698549039 323284060 946975800 297652337 413969105 902761769 912702344 938715886 953585119 394054522 527246496 109243196 903139009 406661817 583378291 438513810 557645156 606822159 747673157 99795210 325545308 876459067 923588182 93103916 896137844 41570475 422735498 863586914 911466924 2281295 871230180 238465038 799033296 80845117 460415688 559475694 812001617 487466678 602498558 788574756 960256657 994323415 995403855 16596156 343939765 97143213 286125664 403991226 442325678 173713773 467995914 835409230 999586968 648592043 816173893 920015683 948859199 800401695 960053760 22906606 194268296 616946408 766758454 466803026 884050974 699444870 776618869 943469607 961777056 285716108 927667224 296008729 678166545 505518282 846275866 249787678 611169808 313442825 518943520 615558640 947165851 598280767 792353059 359051410 453322726 704889937 920522096 187389339 897254303 674114041 815836631 767767081 867122600 559822498 567972242 152001607 816124206 5232001 796063828 582126252 753852019 80915629 437062924 751077471 777735780 709105015 892512184 450228285 487864855 392346009 598409048 127533842 336500643 46579093 484139116 995105402 995319899 75613354 319443635 856124844 978336514 897691837 960336591 519233343 759627621 670517940 941185369 875859935 975078302 694662287 942438406 574428764 986228801 285277040 561880525 964778728 988000422 991258120 997066251 360749764 736188009 837495354 877371170 676279947 852742627 456453338 855662192 743717687 941150362 354788304 930253387 128971915 352066196 832411350 960118599 491713283 687474263 207991464 733372055 124954793 128423049 72647381 847112979 158366013 377227865 16365358 658053008 883967999 973893403 817135188 981868621 740652406 781335467 933617773 963574272 547359000 984647519 469323246 670302091 542455744 942081740 685833009 852896677 518410645 911119564 571314246 938652023 119684642 165172504 130857849 613512620 254192511 686593090 813079411 910499038 710101574 794314552 274876221 715776820 920276760 961698081 831277820 905648347 285885644 581377763 704595080 820003275 148330279 960306161 398831686 638996151 388600973 478106692 363184777 394913320 780927430 942200151 425270252 711446928 803120693 929903490 844040023 923195858 827183495 922104391 717013195 819693760 802060941 827299554 792294577 912884880 844346119 930706362 612632411 650833919 170912165 989136118 404694441 616532700 10548761 201155069 927397653 963388039 982617237 990897686 957303640 997031663 69124061 81905809 627978622 850052717 128569462 418292019 1761 995092829 21403772 255809561 566662514 939840741 541105641 623800723 229577110 278248614 455576668 849484301 742914019 961719616 267266162 565942751 61416439 372419516 46142414 241361140 993957004 994994836 223392685 669055989 715407083 814523286 897801298 985514789 692975075 933588560 301605255 718481299 714718321 743593876 467432141 506672119 284968152 728005038 312978807 880199248 130568641 811329999 917883492 989366490 929487555 957849577 410193378 712843538 574774266 699232425 764668134 864036340 219664546 326308454 322830685 364768992 437153545 997207354 420191224 574346778 642311337 738857856 448365622 467884722 566369486 847992440 655759864 757557006 396752419 578878169 948254810 956968219 385011287 889986227 34371785 841661658 868514745 939616835 427751374 785491433 882382218 935891103 782006923 994810480 927650594 952477384 122526979 972990446 908351850 990565326 983910556 986750758 499792914 676794735 129532196 258018839 113389493 424539506 990919329 994724036 578988545 651881893 215101829 572563217 992522242 999904112 755794986 787970383 440702340 953265924 730537411 932680994 508439324 870702921 60582224 803706934 63150962 700065456 167477551 874256466 845276435 854581761 858771250 877123428 877771976 988431354 425218550 868222534 416300752 417359905 805866453 954399288 338371166 550072243 568729061 968773541 182400098 522440775 459484782 881882901 4252938 618730106 994227549 994598952 360197898 920712965 909450712 927893201 404558631 970821327 836805578 909207435 715357318 913560177 424534178 523021435 252187720 275465237 187991910 892521235 895701488 980210223 930294268 933434720 246732807 930183010 267005355 633056474 667472546 817562684 540681708 732969369 875993722 959129176 696446061 700326083 932210263 965298160 931336942 977679410 929633476 958441820 274209292 409511916 324818728 556086450 367727819 550454208 819910229 969016055 617749326 730851183 609004849 871594531 403133728 725619945 386143859 503007949 566680227 775426311 580247119 663834693 481664974 870752718 135122538 909341451 35772424 420312831 211895889 490829360 552313344 812009820 1029715 86682047 608893159 780272996 619724881 673122097 680027360 717017448 30453484 892060399 60527076 447107949 538252340 677126866 872094841 957526245 370915305 791389718 564011248 634849407 245432641 466981702 58343801 551943609 445262903 674807110 262186388 767889464 640564661 733535387 49421833 371572476 592710030 712127393 742817732 958196142 256411069 687021164 177478209 597428633 293142169 586454325 802647605 932754147 133525496 485380533 227335854 275041489 625525252 887677551 23710406 214910774 632785580 691030698 174387273 861849816 507584269 555452090 487134649 492101760 409096532 648052882 780605776 986884367 258853534 441008830 368965483 688664353 230494375 860209626 978149602 983078375 325689887 684912717 262139834 502922779 470415492 810986829 486285286 807462382 294676535 470659760 638523892 959858067 113285362 326911980 240809774 740349887 995992249 996520347 740414237 855272469 706422633 946645802 966733475 999231985 84157111 899601181 120076205 961009557 389331875 991525479 5292778 753952916 135247567 377545727 409389306 696608595 393196346 526027022 422460526 903520799 451091211 897045676 883668991 941478000 476404819 874347425 585245728 773780060 402887757 670051838 398932989 665357209 692933085 838276493 545560550 887289909 355654081 888346743 876322788 902679459 357793322 567014978 980458087 989223067 930975932 974569558 24023975 843813157 437919824 991620838 69369542 405857787 323140749 950053890 496010978 869586236 872959407 877540284 516489430 863007014 925517191 963516587 44060613 671230920 81985667 852565411 604194306 700811917 883114290 987865949 159417723 844595162 241329362 533366494 532167224 902471911 490761177 915955652 443328468 568646478 629374805 656299029 416036432 463092765 604190890 910255065 778741144 873119894 874433366 922254694 883784675 969855058 732557308 988608713 442633190 648650242 379821084 387071443 874107479 957900280 653280438 935813478 170458429 437379581 132892722 370757184 727388311 890375947 815891656 852527589 919328827 961529249 652439703 873466009 312992250 703197906 530559136 741406771 195618176 703099755 731886837 744395513 562689284 856258903 268021113 994369260 83904373 312612104 533928863 790977156 182149232 779804678 976432587 995999152 809846776 939916242 543360340 586940383 187627844 926377925 181125462 372440038 970944231 971697029 328601931 719390467 653862562 788030338 543113825 589168553 39661008 79144546 141465906 686360440 950841227 954942295 983872956 994296183 476526761 797175087 850115639 939971655 719675011 851078940 945650726 980034105 654213400 975519306 500497647 677678067 824777315 885049737 270083027 440772143 306327231 408071180 562257862 739868053 706190587 975578919 19226337 450640711 583252172 904397087 51315169 629904441 865488220 927782240 808478888 859159226 710621085 989732046 606063622 781848149 110847438 829087684 392751722 735711700 45876830 845468625 262790146 896040932 181533392 335878156 53702838 899571622 149056023 508845007 934910623 958834415 956698553 980061094 318607736 736610037 953741158 969032061 400673842 970201334 622124373 809448899 437860718 656945568 79478612 339436962 259866521 348057410 161456412 186326344 796533509 937358905 934511511 999324859 873687058 885336532 264755508 815763366 123616610 148021656 668153472 997665037 354871817 793118151 933170654 958390911 623884951 887151045 634259280 749712860 339007052 684549989 275032571 894389045 865798268 985359648 727706660 885466486 439463657 630615404 900349168 988441732 564783664 735684383 615053355 853439903 454814619 711113265 899169831 930658839 766556613 901335953 11262455 533567362 609079952 902609830 858537120 888667763 566066796 974516611 627181931 649262174 26607179 979363191 885961593 967752052 884575732 930256651 384283980 386546104 882086335 889134397 439301835 583408449 180446520 386521345 597667570 943682270 861139407 884952135 432050034 831896522 663361848 696951097 132556712 515882959 395267026 938822404 915946885 924589895 66907904 764742306 516979035 583531231 336587194 748955582 905929842 977607971 582897812 635876763 619876927 941015799 441523806 666464034 712706276 793161847 693263396 744056621 26437741 612404843 375318071 526277579 337912632 895827686 850330408 983223292 401101054 763788750 143877701 351189210 870611097 878081488 455010464 905468398 570496097 808713725 387097081 936600617 288823041 635113647 920683241 948320619 8850126 242982930 818635232 849958490 409703793 901600151 677124431 822429931 78306995 260571856 147519422 162714895 931530322 956004127 361195794 911484803 539104488 896549477 418140510 556876642 994362829 999525801 10227075 670814563 992755455 993519472 949452573 997393181 467143255 534876122 601634352 688156232 173480360 774344324 899517393 981235011 236835589 311726594 406710540 623743113 527471349 746706039 393431907 395080022 771286996 941144632 32356769 44533847 623932949 946770708 886001141 986633589 386123813 617416031 161778674 339078837 427752314 531549187 790462968 879636045 508195304 730897538 13534762 101072912 564408097 848654570 618271798 797812928 556800308 567130013 300715412 307030656 194853091 935533267 738080843 866040714 74598629 384868641 365983056 892439053 383853684 758384945 661597255 754137382 492648668 590375189 992374440 992954794 122450043 343799364 404193706 621999210 821811682 983052912 280662164 384084972 117264397 142435694 429682045 737768096 865816617 984365925 475105611 682060403 142784942 974417665 427285592 458114313 181005125 764359738 239454970 425253358 85972414 818805305 719790151 841281365 796424180 808156522 568050761 769850435 260268131 339513481 406987018 774304045 702997220 833146202 751307512 935074446 429563649 779587500 725122115 840487044 848180480 860261724 545010213 941441275 459721634 736309378 653313176 656584067 600542136 909879023 942350515 989827082 606725987 755996220 113036177 468439255 519665192 845143946 223028368 584448638 779683583 844738426 593554520 739323348 341690563 881496411 427208738 533138614 150234440 553208314 937275672 995286991 729044886 895178114 109370819 945885582 404633716 566102738 546874193 569362904 319159261 456301994 771022744 898429703 170888613 579091037 481950101 740446480 869997425 989618972 127790871 335468917 873215569 999604408 10118552 575739661 727324094 953533409 275396332 381581884 458724469 791491547 156620958 510614761 109745123 762563227 103290457 808800544 729879797 889920580 457356399 676761432 221958846 368244150 997665232 998816086 240036727 887921107 385328157 479301973 16950234 391767043 335947327 545105264 262639381 932331012 594395262 906059894 246463219 565917798 498642412 740242844 464015436 796773809 722340247 890378680 717457923 991981424 1790544 665761315 985161979 996600469 90822891 421182756 278730125 612607850 170564141 657724922 543115912 738160778 706695564 837154468 471197571 617335239 272043970 703519904 603921097 690063782 239654963 378693733 917108686 989777233 626146084 741402590 317893131 948603697 567499387 633037843 463136097 938449940 249780951 258312865 279056442 485280270 902035362 951108739 448655198 538496063 320949117 922526791 287189121 373702891 672567540 721105948 32565415 297362104 241099437 970354355 655407622 744119676 420441002 619525544 331815731 375160761 230715219 924585958 688452079 824099413 945374341 948854248 270021123 279770733 423090235 708974726 753998981 948953614 337622165 895922185 361693495 442042736 42669111 993797120 177557499 292730998 670838566 756902750 57564250 654585544 999416781 999744568 808653209 960234473 730967571 972742504 701857927 764316029 617729255 761875359 457129524 736021866 629658369 961982948 812656604 880411810 686413769 960773114 119173943 852722941 170695569 967349644 421614619 443026381 842075159 981579024 84503193 912293695 740457906 925896427 183053596 763575325 643929823 748741126 477581675 838742681 66031385 859476675 486863503 942292406 760344819 820129594 59760841 471279934 70295985 184752468 207203877 732209848 786449181 848631032 254595349 332891898 546674042 643928018 612313912 799477310 22825247 904380914 779074034 806926532 521864874 573444070 471709613 679724924 27643990 591994544 970069483 977665698 838722305 987081580 615131411 925843132 150666272 729553742 451819849 931993432 298962619 382506079 653269131 808694329 805029300 921933752 163731929 985783750 805823135 902386734 78392592 286682446 789756947 979055291 621955751 771196337 149534275 337692633 478761144 541623658 295290389 898128207 842315792 980407877 310344644 828396688 363385357 651008137 811107206 819637103 591490290 654571135 528952556 547168533 963445237 989327183 516681443 623563908 814502891 999492108 870025491 924810050 287509566 949773948 73718783 804298146 678681374 791808535 409923342 524522008 558159055 951585558 451421482 617992515 399078885 496360954 93372885 187730699 177000808 719298380 806035880 981069459 135486765 795937508 192156327 673859082 585157561 618773836 381514509 728974745 721129538 925111504 784410283 988009034 625712520 704526690 391495981 420869427 656372153 986188197 598915128 857215339 276841379 961006803 294972154 564501128 191272224 884632168 490815294 746316645 464262895 612090657 783760996 837784234 170996141 772544859 760540526 940211177 46309216 762089664 445543776 616557353 877503370 984923313 453505230 814347664 668984584 778207816 837556010 861317901 719225757 887387800 270113815 992405581 910412975 995171620 569003908 788845915 741148792 829420303 259033629 369200860 802371125 915746970 388496627 450284331 952790868 988549368 346796140 720399524 189773334 605260938 572196205 871871389 193973288 852228963 200797750 491033240 451983791 869785100 204978038 819379530 588264971 750403977 661592991 949123669 912915007 983655808 577457839 948290862 985214581 986977499 177978911 914936618 207004930 502521157 239805815 460538878 43286947 876369344 286115156 464994650 784855401 888544319 484783367 644366562 434375310 857096153 341264125 522077575 259280652 723523007 376931042 783691330 300561278 321543949 336039990 921750661 294545437 364005034 899635679 989468007 97159122 756410017 171074506 855562175 133454887 852223286 129568571 984084570 24052637 600463274 191295621 893280109 75271790 770470860 776011343 904526009 977012362 992790698 552490049 914007973 978598260 994725702 13575062 378244826 982220418 997207209 54055035 261426722 448912523 962300999 417124162 660268729 53193327 89706601 77352622 256241508 546958661 995192453 454552293 472750265 699555610 983303228 271403572 727883644 549519103 571647278 563723457 811683416 885751220 925550636 882241214 905585607 276990798 294674880 460322101 560803774 987529337 996461613 952699231 966217905 323970018 419909860 249961332 766826453 992744881 993335801 741174941 800749082 761554059 819739005 555940461 566564928 785035787 919049631 360704916 864883183 365864105 445869622 74789445 163019142 23097761 297750965 785685950 805926037 661003631 729886273 661931729 810948063 403076613 879198409 611463183 754391347 959765212 978791300 942786646 971560127 986288422 996782657 902862682 938795754 591754147 896299239 660666645 711861943 89760905 458917694 148755943 466849541 402862924 962253280 827650456 940045154 624986123 729745444 8593547 806198907 24986159 96720710 526078648 885948748 803793172 820616704 968932353 997301699 520919876 758967560 880696084 981514150 442449374 450988000 207597053 917027302 539990073 949812448 281245134 321505935 451799678 500568035 832164462 916368518 198789087 894993576 12192749 972320943 377089303 951963476 130568990 514877983 359722866 997560703 447930342 623399829 204959628 243823754 507308554 837560808 171906488 517799603 629284686 889025808 773449845 900606926 842757247 977079578 391991011 450102375 449663315 501236466 983111564 994528875 892027722 898647020 130033833 243797645 783259247 919837523 650120733 868446905 470914295 734696569 546665283 665631690 837189884 953600946 797820047 920124735 331604278 872213240 865720615 881038394 667993429 761187722 165025390 335229943 227964267 910688074 871254312 905261241 850017873 904886466 84628919 779886131 500838893 801330893 953332891 957332318 551000510 968484626 559672560 888800662 377740783 401088695 735768655 954487757 92191643 722058162 521605825 873564486 366239326 415095575 892697844 901294528 716421726 847557996 917960342 930427412 805010626 907693727 874335626 971578615 574936982 996315490 888300783 924675078 931186637 994084759 260432905 752221883 807714930 990078468 463992139 770485553 832680483 875055291 839493103 934381380 992629096 992908602 149990837 513147101 370495181 640960897 950644465 954414918 207621000 900294641 268299876 850992038 562463676 640888709 995629582 996215783 333908938 851131600 134141164 795807194 666269409 960162323 36357582 94770948 715559554 952491988 106683115 826848075 93093537 905921023 672242415 786774077 179551111 487566202 290408706 489763660 647222986 750341593 93359023 178767705 556121572 954164259 417532238 777240053 868615953 923086384 375204193 832018782 100105209 829091256 775638814 789755210 374486027 476299709 577742945 636723712 685217466 930769111 929301661 969789675 549106632 645722296 25133265 547295534 455346068 893529106 507650465 611577351 367039005 946152550 508711457 915366447 195712537 439750596 301792076 728845012 423917131 553365739 589720760 646026499 637680842 759737572 581250050 683998997 56147593 678391406 791604988 804667676 604459742 720148587 694059894 972708955 292543040 866287509 449455529 957675843 667120808 966819768 261790657 586491382 980229130 992960802 346238485 716665997 339110212 608695288 581772858 890957648 882046179 979177462 823129818 837036250 477840840 908927451 951893927 973163098 58486203 679967750 637539457 746437634 355289459 632523936 173793418 565432279 343087753 919481101 424719875 506781896 816281227 889745433 536705319 815036220 202688464 454858255 991699286 997345148 814631524 825600554 259128586 797993955 201670510 606209995 67751014 300534057 817921706 821555333 281967542 675341673 202201989 488121155 131114346 179700655 447270970 799610081 869882572 900380421 2906738 862892273 744240146 758227862 370467030 409156708 586784282 776641521 275917188 850804368 916216341 926192591 980220704 990306398 155869525 730605855 324451769 510652498 945664156 986248616 378325669 641524053 54075341 140540576 370284462 432801711 380900568 614162508 537574413 622530836 491369501 573375681 288968094 560045484 834566537 926392816 93559516 141833425 828448600 925161722 586318123 599521656 546564529 632445578 858539781 976692572 577557304 890193948 989480952 991836750 689935143 939217390 286279907 553453929 256943776 961395933 162472120 343065931 493335877 908177346 824327556 936622012 424485236 674900724 51517762 689042341 915274225 950253656 782338918 798299545 547844010 659489824 780290469 831044246 650214269 822152235 358421416 609619022 333278090 498278411 989070811 996084205 702927851 998497387 114985408 624232074 74649859 516988682 168556182 288309948 450990006 908239650 712248633 784768058 878648009 951406528 863474116 940403370 797707215 984899782 888847329 897994869 482751814 662914509 598243123 647664376 584081750 927126245 297839900 912030660 195072967 842279697 162447406 221933545 12692858 149400082 417983977 867191627 246375494 799596223 928955342 988656255 297668133 586675123 314455225 801041371 953275704 962027324 62085380 219078013 731048032 902333380 746854203 822139808 702588930 810550793 303571436 554580684 674230610 819405812 889248480 934324587 992344239 998025075 722150945 855869286 528814897 564224888 430584619 920946592 245394438 624797138 196393277 654902321 951146629 991699553 896870637 972884628 292896812 302611918 458184686 668798097 235453290 798635268 24062824 640690184 94038975 501706641 20802816 477198600 313947844 426410776 722084749 829447457 276481132 776929418 717268173 881380684 331994115 594798783 616011011 780644444 56238451 439786855 669491479 765738999 376483529 800501955 15578374 174068309 314211749 652867452 519325965 958728781 245937811 753989987 333768501 945982953 994414133 995374674 737910665 911974631 878913516 999354948 272723035 346517218 519959203 788562243 662301660 676493994 811224641 895612972 365550995 412634645 520429959 668561790 72285580 534992734 868100172 873786300 937094596 968722491 90296824 526627288 250296151 406865961 546527939 575864416 936923081 977976402 824541820 978204843 128456368 585449292 95711455 580050878 422000764 454426427 184704992 991395150 29836567 254536358 541674432 668450719 257478502 367442190 435049037 686055947 57610144 828621722 448229055 859568752 307867026 730592029 854153784 984268893 1656708 702982400 963578107 990758547 722279009 772757617 609520304 937605472 980228370 997659169 494280715 544020743 251804558 387649073 423864875 478352421 315441809 938639723 358359716 548731843 396971078 540818877 41224993 603052242 892730616 895792645 488559393 581823310 982703844 985341560 918965008 934466871 906806777 950765687 623995046 832376360 368063769 553650064 139731385 895698977 715425313 915524833 812101377 904359085 447073447 645366962 731267938 910672404 174385894 696632369 85287967 904199749 265050866 355060339 409636167 947917829 385471081 418657118 401759009 571157008 387541200 871023701 739371636 850056023 268286502 277313101 640056616 810458343 926397162 943501069 505919462 789531863 107167105 650057203 337482741 554858487 535356577 882645868 770081620 889544717 790764408 970517970 698391737 798446177 658637388 829032603 636143846 880201296 605790529 876166398 131956793 874647224 369856870 956996471 651880185 789878710 299670713 939019620 531228207 556643495 323741958 467710964 428204689 841409354 803831700 960054327 691370735 841908585 631381347 819385285 417237597 751485636 899298134 991810692 176437494 833157118 585618555 705230485 506729993 591233304 107482464 906146673 424742203 800535733 620979906 674408979 419408543 736118870 797244294 851967314 417934876 951729739 190451311 664584222 928250244 987173654 600236360 877564963 439107954 531480054 683482108 860579223 897655473 901906762 768018547 835629400 374216455 666240333 411016253 449840471 324585764 783503707 789069735 932160054 347185412 844470548 769008839 875690885 880128154 956464158 480630828 499487002 936763144 968627107 123142197 992975024 921775598 989539514 742983303 801749688 13178985 639909162 971069921 997804748 838090001 866924439 321034055 939217591 504459957 560144174 152571394 458033650 739149297 958272055 332925207 498367986 544278768 683455220 844688321 964578280 392680364 437424426 536306602 593604126 15548879 467676967 749454243 939705841 307963164 606430030 118464619 875610638 905917358 968699807 384434384 542834840 91930835 306572819 748518710 982810573 610009343 700688184 174046322 243091273 451640339 457645361 6141836 77345841 145496096 687020130 49368024 230791056 504021941 789416832 619212911 961714905 877296391 884590613 979105175 993169322 839724152 997322392 771718577 954349463 501334730 902964003 635699482 838893301 245838573 300199493 24731602 917033410 139709204 611887211 941097916 950470052 504529722 612236276 914913541 973303130 300766336 991086227 49541543 171934513 903795694 939496101 220440631 770234592 477462753 897004996 637030446 642001562 465001555 807037085 850576669 884120968 894191938 910709916 892217756 945303240 341850434 836909882 353905051 647633521 741786688 783263870 443594591 444354094 898160509 990805562 12093237 340599135 555823631 716151924 192585262 692982043 924666818 979200464 48844286 395483798 130787875 197274823 652964440 691846848 391371937 954286556 207806400 922348386 428738533 903660971 474809021 971505165 843307351 907758274 389397780 922483505 733130435 852912000 634292873 955973238 323014170 823966359 897614782 939096619 383404112 510807602 353120629 676502600 404470514 989492980 701610091 718045625 237946960 547977174 359738468 423051832 945981480 946360012 744299806 856641266 225408964 546652490 928729478 994450838 216630728 763012480 603886570 641485290 402053342 493085084 747038737 993130623 403317025 804216505 873118259 948881339 618775068 911200860 626846661 908075655 388256104 904435961 327917077 804817344 313575903 827676209 190751296 513233637 986511611 998456314 337154362 905044718 64893936 176540774 746530633 804677029 542414472 971438652 709607388 799139843 532363579 569754547 812308810 912400709 798296575 819074959 633263222 863609278 306961310 698520204 856512011 967725915 785190930 911134590 7145977 567797743 248085482 923645748 332662631 609144193 375479517 694974253 835642268 881622464 162936493 843928644 991180948 998394874 517748977 991491402 238452821 581683987 33156223 875305411 599103047 634561134 384247363 727835335 309163930 795741757 252274267 337383582 561314944 919910068 526514082 917637614 646663678 788944236 495326329 990445662 608954802 655172896 669816905 945750113 915191443 942968023 518384002 794015230 11732904 351579732 746647358 810541305 587676002 752487324 258943850 661556575 343227211 730178960 311519150 669457849 684675163 754201857 174384666 624825604 901990929 938041150 638777216 679123032 595108465 603972176 203881132 897783199 256939416 709871175 613942551 744016654 639855440 646270065 599505524 748730320 103531967 502385414 192298017 658388709 666078593 901790709 657074678 791436936 994580767 995397237 1807770 963515464 4552145 514148195 890199002 954060573 912621875 927435744 822962599 890067616 840685432 893320658 149187756 845615010 874822680 909142925 624970442 652315888 800195568 811689961 68223116 100922200 748633041 943780991 379030484 506151995 507755268 604998226 557873253 935679546 359283627 979401572 29015745 547486892 13611085 631877970 372334596 399538505 859065654 882248631 11239320 674235483 451258662 934677021 363098784 570039979 591617745 791748046 900200296 961904022 21416075 627730974 117413282 376297309 656375392 660377762 638084837 809431830 985291729 997762503 885751962 914073788 874291045 958533198 203407052 529997589 711851047 940962377 687331602 996090068 965396395 976033447 807734291 885597777 671813429 748076148 866802999 915791450 190834079 366962382 879054091 948372961 993540603 997121637 768536687 967034996 85082071 907554874 148547657 964155367 568237993 661241004 92559314 757870307 382324863 958129396 350906466 674507007 545686431 653389746 555948926 753390894 447018720 538069013 194242271 847305656 718301467 803535223 840001835 933961977 503963877 980469085 127594646 253085711 114761152 883009650 657882009 987431080 192485724 649675573 485917803 667587723 831467067 945496685 527951869 880857179 201257020 941570457 30762207 231678951 651728273 755250253 800648692 987415144 184549350 568583440 980969414 983765729 697119423 774706402 790186421 966088610 683596150 940309347 216199081 652093495 613329136 758572394 960992993 993938002 116699774 131988171 164075290 852721394 544079367 969344297 246293541 735454617 192208780 250345159 688030898 843628184 192150923 548125474 533547575 996618553 978644009 985508980 65331758 321080337 300295153 593418241 94882798 355213722 466951187 786640396 516366264 534283567 317759479 992502636 313110640 848900737 373465555 687481802 431859860 665851825 162526469 443810736 704613588 803495878 475694861 926322283 923487362 995939769 394771114 602350937 733376351 791582966 934486155 939157235 569498857 678340715 865134790 865282039 398864915 759464886 352754600 511600620 71931892 99809858 50527397 707562337 976359517 982089647 49292779 438053970 786127203 809541106 602491619 709094847 319451362 364722823 77250823 572645723 111752570 222790129 730077961 922838767 988189179 990165885 251863116 613758234 353431853 986803452 341644204 861226769 134508219 847608375 2142220 561325638 323724840 497790919 262744648 364172621 164044703 824459635 858400709 961337651 113968223 938206849 913941878 959941138 122477477 586874120 429086841 523719576 152547941 525147642 741672353 769344052 540141035 922771973 91122847 532907648 927718249 931522098 389068779 836858704 42089815 367676007 470532787 617133059 385108762 666889638 356051545 403943984 72768645 727767942 926934966 981726713 129576321 515441588 887581287 982476819 872686097 904154111 650175327 954944724 586064213 848098455 682980687 982874768 918521805 987494307 638670566 847558714 793212756 969489730 964510321 971452954 913634229 964907860 239120341 881023347 350466217 848710898 397051857 614504781 602662542 745372043 830304614 857869962 74870123 796201884 951238156 983623858 180769775 353107131 644988315 953685902 855887575 982873667 380030760 384951134 759357370 910932322 911185787 931910900 939477968 974299786 334651489 451298683 91539230 456090590 73905032 360283161 837754195 987373295 292020437 693031009 610360950 786271822 774337200 840759932 221846291 435108447 902685978 916062367 991333745 996759745 600941997 976483661 755374370 895976597 77022087 500476372 184063687 563536878 623906676 818078925 768497003 966583736 412420360 656022781 237554681 574493011 865285279 966943870 725625447 829451123 8991516 480605026 374066631 929083817 203009498 356125926 799709608 812505505 325572958 804473574 280852881 974845228 63212217 288029646 501733483 972718298 401519928 876847954 630727142 906730453 648128740 882310238 361995362 462393526 542202332 690492429 142299474 847667279 187838109 724982311 20623685 826279566 498832988 751283002 709857263 844419900 121505278 792296473 775402932 908072002 640878455 834049774 289736064 365820253 212197386 962599957 157127112 211741459 882012506 910586935 434278002 870074276 416120342 704017581 617967381 770777375 576524074 773097613 857868690 919785508 754901338 953657973 378768376 868193418 869964185 924420737 534714400 767644433 91339545 535097344 49260273 545601983 587765878 774866682 144443180 639290838 308425038 936608609 286845365 882567539 191734865 824527447 567123281 907167539 317565159 574828081 922401003 989537139 164873456 440804867 102516708 727138107 545217064 781944375 684719140 999571933 300802818 617707342 287716818 639542284 565668682 697661261 310076081 316842400 236282635 694584225 279351802 554233223 177706094 362473555 445083182 983251697 648962529 983536075 48866940 409614483 502625010 888077843 463824879 787530784 120161719 206528831 165124878 558388303 702880437 875672426 134741024 725649397 256393278 915965868 528152924 536986867 573418176 803210955 653229054 844430896 537253877 538871033 484707815 960221233 482959166 551434682 98397741 383549705 450959677 980180262 415444819 657028594 376249833 938780160 475762797 663041913 612311025 961374026 598520209 753674510 123180159 545454894 643905257 848668143 990081761 999775038 709818419 826440278 433986823 456996891 366176252 792227595 981895932 991203184 214856546 229936287 222167408 910539751 43162728 658404299 992662286 994802446 226565421 663016189 582555679 638225856 152044105 832587657 404251685 569825389 610131714 962540539 465614592 925999034 342219552 654287608 834051948 887995708 35425217 985009428 287031904 413444204 452913569 921678504 362848238 683672092 25786495 569644716 906967892 967486244 785057849 894190830 939959939 972959298 493114918 631189228 114760190 238213730 181624431 430124378 9135001 366717502 314327742 328397474 502824349 898913533 168265201 386784139 538654371 948234650 196219750 776445429 88515953 699994543 949540129 997806082 605795541 703634433 72552875 263559050 676717897 761705072 260433938 506278301 89711982 710704790 382594402 546345477 27266376 883218193 324856582 699020856 241057684 552963880 689173096 708244174 677328214 682399485 619324823 692909566 462718725 795994280 519956649 769286966 917860085 925766426 215507552 919733668 519340180 822525818 985076524 988821558 529430457 915196872 35240001 251686916 44673360 50815982 450993977 583553329 226976382 487077796 987207062 987900986 782753431 881212590 458031050 520018501 691494438 909325572 316310266 980209309 278634675 810889174 858085154 923801621 801762905 832970460 786722393 811451377 18187491 902784690 635406297 891048086 526572110 659933229 7110291 276827882 598816278 990812571 94269840 976956734 658356160 743011156 771965973 993565643 926079630 996323316 43570549 927029132 142094628 480837319 868662237 967130294 924616982 971164271 841389202 993278171 158563997 450043277 643027610 675713012 377552230 962233706 629051828 787588840 176386978 540637275 389321423 690910155 37795985 831133395 851566852 889700518 131925900 369386130 634874553 874981823 496229750 965423942 502490917 983339483 339862137 998088227 135695882 356849723 7776873 452041953 218536548 546052626 505965678 506759577 800130866 873233949 344903028 643238171 199170838 352707681 643898425 657313187 2902408 656740494 157197350 451484754 301135330 969334336 309483467 538618038 891960898 969559250 467293070 673192225 608963332 795231343 516801943 951412271 580350985 797014107 185739468 572307748 641803821 904891123 464626860 958058455 814807136 942446985 523752969 582296164 445019514 474317243 649406414 717826282 930493768 932024371 65296504 935568536 359117985 745199309 17929782 241277354 840607900 854655338 415753447 809191284 678809416 808995978 876993226 888080302 955983522 980719535 344643140 658709998 771354019 848120582 606172860 698225599 605539677 809799221 891835707 981401936 669418141 877032990 606913377 663494619 793964731 829623929 895407943 914656664 504235276 725592539 921783721 948085846 338058682 898498965 283392909 495914249 9825328 670254418 193137034 361504911 608057658 816102972 273514325 651601855 546095761 919138884 22996486 693872697 563257071 917036933 955310440 972425584 344773471 377711800 143100643 878837171 677468042 856032498 484529032 997486998 230374417 561954980 87929785 225960742 735112758 971893571 72867213 936604181 775690555 807455757 390143301 968547686 302854329 429734695 829573928 883438279 135757002 302704308 537075402 694738150 722127881 913597683 402153343 959548875 12338039 794290943 372718019 876587522 197638495 868069683 154922205 378184932 731610990 913174769 723180750 849828131 745480973 878685143 422285473 876079045 737969406 961432227 30705272 160749051 907662506 944115682 429009620 823984394 991971801 993200866 189008477 487177893 103478606 802203789 318370873 819055766 472208778 936816583 980240929 984128640 438108436 718737763 565955239 630792736 893418505 942292384 875718719 998421863 125262315 331984116 22453481 458162041 557126227 781539520 324366288 793468342 712653170 729069721 158991139 775726963 392345877 945782049 566408761 782540195 653853497 945158239 780317168 973316871 450938469 909254147 715621815 975689305 184318213 787159037 45503131 74093659 647882976 939592415 263807728 529905355 191140824 682965978 845366737 970572307 984592576 991233245 980548216 987046248 338158759 551347624 463361545 655750586 183806687 707636615 785994906 860078999 629781198 762239067 197103695 223683757 811436163 854657856 849795370 927964647 392711738 510348587 691247148 762623351 791871271 880659205 642335864 730195378 480325613 504300931 39837203 964380400 962015662 979012348 266652500 955489404 586093542 872077201 99287107 815092136 826918535 919899788 99178731 514922314 577938889 702733400 310728804 782433344 474887098 585585779 511780265 755660847 697292615 874147308 621521451 810964268 322529519 353894135 953606730 969548231 562490690 832944017 639441942 809012314 134200039 836540013 523160128 884972703 352136314 808257716 517829114 850374327 834404354 992525403 796198661 917932667 457552920 589197742 616183151 775978033 376101100 695279169 628577781 825733141 314671190 689588625 862895069 941986809 819057357 827927499 199717888 528466087 273593275 348208617 16993093 754344583 105372556 631038966 779030886 860532894 601879219 848724205 546420245 742102926 263285134 610898675 880458262 931541282 554824447 856942219 323467966 397610519 500761681 565637235 291310735 890935567 196461944 818055448 796291268 797082314 7447998 159896806 164310178 479794983 456361900 521531271 72902582 767851902 899662120 997103245 27283517 776072278 740106678 892746764 812497358 831639757 695547403 947493857 222231981 822123247 865289777 905165617 883188385 989894520 943749562 951000488 353222716 923809032 816027631 930765640 511416630 613944926 489853159 889090047 959212567 977468089 154187844 701185809 745755503 762536370 382895148 541895930 226118424 399450869 294083044 997790534 953780595 991257968 184395266 469075370 691860432 866379739 41742782 209103486 34559401 61337403 897423884 968523425 927960312 961798150 95016675 531483582 665493474 857444297 120382979 643769688 828371148 891519248 262422239 406577550 790310385 846337548 293104687 717158688 501004242 749265185 482049925 772705641 25992558 457421745 6538937 973416924 466143158 604877245 275705779 904732104 171599035 274326754 599097798 955184550 550045740 705306551 504710011 865535308 174321231 256366015 701977277 984305688 751509998 932909724 806420897 965181495 213861683 293349921 71755042 609352751 189469425 399969097 639075689 648295438 832539540 916956365 26756977 892529128 587455102 758650021 590561265 746412941 200205988 308342284 306644413 601783258 287100737 676616102 933526305 971038672 334920535 495574770 416439112 620500206 387407402 891119737 599517509 707255607 832853347 977774796 501767861 785811016 781450391 895768419 841903780 983677384 262607225 302600268 54662615 239552223 3841490 727868124 233478613 590381190 27482783 159429086 153971345 941801550 819995175 886306878 326462478 709282396 73773328 304622388 324382092 890153008 54404603 503021173 327013496 367190217 16314150 568650739 606777777 809792334 433783833 659032420 19324127 317886325 127666206 570272490 645778793 846528128 284702282 794131926 971258128 992892276 658144396 820618209 828927480 930050838 482350746 634973090 757504015 811911261 546813116 760689695 239274862 753649932 689462219 719071177 92465536 796717553 518203206 520699460 320218671 963684247 622487296 839692785 487859223 812815111 997250115 998118391 971794296 990785756 319910727 871523003 298378224 574549475 528435751 653108063 96170601 138664522 945033066 991572879 249735411 794011319 198984395 494208281 319808651 702288888 854412576 903705644 634671729 977934192 105037360 315570749 68647026 849513143 981595617 988068581 897034191 906516858 585937900 767031830 697297178 843651978 634311012 693698239 560478059 564349575 412051780 946669604 952857074 996377362 991440552 994787617 732318089 838064533 106969110 623323834 868014054 956191716 337254371 404449327 377540236 659182070 924276960 979474542 423440831 974202775 85443578 163546537 178082283 931384648 774436142 802113967 821819516 911677347 482389048 728307695 626812272 947140356 611610292 873904120 72734141 533540524 107260517 490653213 903126745 973200421 359376599 920525082 248614403 612119900 233868197 532486398 317031685 855098116 733005528 875535988 513491932 960150518 159059845 183205733 106460097 722016446 340486712 422355624 609166604 994950789 447327125 457203645 840553886 840716957 998080948 999248909 71132063 694429037 806664551 813259063 850906562 916060518 314263876 397616429 561198024 968487876 389633178 614447465 336706177 494598767 923455656 949416555 294626971 490017142 656585210 851970093 113089253 793445195 292374311 893611993 999782294 999959938 344482353 893391565 751893202 802044307 936598268 997210692 13698955 392095264 840194701 972960819 818567380 828184270 904671929 909862625 530189067 736640776 577137825 712861560 800839226 856650201 513148975 678820938 901937679 968559278 887605152 923478243 184049756 673692595 352559215 592053324 833714238 956883633 958275620 990993708 990895039 996360425 132028225 387699571 609372244 946807967 985677879 994959889 957828516 960739971 421920497 477570099 730779511 949092509 469115670 589005376 22036610 230448001 227580038 917249456 765891494 806392206 523559585 942705112 649609336 999295732 414500458 699998244 848149523 892109366 108534323 458700569 593399496 701327919 393751305 746798220 564020199 621688315 412571330 662195502 981861499 987351662 884895597 986158874 461557189 826988197 285967668 625867860 352060492 938194515 300064868 411020393 26999934 350223084 774833558 779046169 575564140 741688197 827672009 999045604 668958568 942141608 371882520 564704731 329343933 734772777 466141956 721732806 251530718 309706928 937136658 946277787 753952621 944075079 673762515 814376331 849262960 869883747 418239405 439664293 859229569 892606133 242870936 450696706 704958743 802827941 979618741 992798489 983499035 993244378 219973416 352322955 23946021 323816816 412760040 827016434 357734772 856140710 316310708 333721959 183533639 933307391 167418966 519518463 586940198 745744139 452877351 817107485 531020746 658064280 189276740 582824167 493885910 845494173 102183556 156177605 973295160 977642354 671923648 677251634 935264321 956438228 219899390 778975291 118357583 300950916 545931516 764104553 721902529 772665399 580465532 704345074 254741864 826316507 55722301 936858088 833184447 986154730 532045594 763445231 705793217 955340230 720374465 894715017 575329443 884595116 834541126 924590323 26906340 138571587 713833931 834926702 116049670 910647069 81259905 208947115 542326626 725480223 813168964 964278957 831721475 979395999 220681849 587928933 560210453 678053367 529897238 604776131 641233322 859556754 646108152 891729322 543392421 871879564 416675563 439476173 722075309 851628714 921363184 926666404 992713020 997108668 749792842 867528163 209526789 250018911 225489763 237297519 345665937 627285896 760565687 873734431 976055650 978292020 398981317 899961308 103537619 370752100 101249990 540067064 124273408 431919830 945127314 998205708 985420707 998212047 652045114 940934326 345145561 642478288 346859051 976445056 192667703 271066758 884140423 946914127 694676203 814772996 311264948 642423203 423663433 820484701 256174140 651644342 472508066 709367680 501101397 693928792 657852294 705976999 576634191 683338301 99356563 701183786 18491420 214751712 549965256 644939199 357790173 568332711 962383355 996906027 573274900 902910852 421424212 767911931 31149712 710235180 239895925 985028352 633646562 646295148 631170724 946343937 224170271 355869150 885367750 938592295 538115958 538738965 401944358 731897129 588258897 763447409 249184635 857730994 128748524 419183420 114568353 934045461 343172713 376123719 115634254 828351069 643328868 688094226 260890511 945835253 496185562 541809048 13396996 475972759 420913535 601969659 101676867 888852570 873742159 974893141 925923836 975565175 595073926 762633295 586755187 968896436 646869580 999789727 179852597 478076816 562044913 870733448 999564091 999637985 375009496 414867726 906244059 925814022 485957035 900609015 942840780 966041177 171939314 832664680 507686440 695544333 790480487 855269503 258750004 832092583 764468485 933226635 639285319 971905719 61089038 619854014 92781350 738459000 468899713 787644224 597501100 823830264 695996669 915064154 221352465 340714677 137528145 223042395 654232692 956608457 102269265 191322612 607817562 754537687 444250930 854044556 251050712 968577336 271211250 762198237 925242601 938431343 24525904 70736389 694417208 967626060 47944456 594900042 937475868 938086981 134356952 242732186 889459996 948793236 790730046 815848141 759772069 981700302 699136432 975692054 600400428 817691280 192650320 630151474 456146072 676376011 283157506 781147056 904133445 927550010 564895289 836304110 112856432 457656516 821612669 981370216 364838077 496748918 652696386 924511066 586065248 877376464 471291561 705127313 248996157 789834746 695201981 989440435 887918428 970100006 257265513 441205924 806034358 901992373 387738321 828524214 245982366 456991683 929023068 978854452 687777439 861833180 561173542 604450767 448432659 550420269 227549946 748321801 548450562 921204643 266122092 691850132 913407750 960614319 376320000 453068090 375345440 717790666 927698607 935722150 608624599 990115590 851713019 923809331 457447664 625991968 873239574 891946951 706447796 841954328 969518166 983725393 616276451 853130484 794040977 917001962 402364187 440992111 165866698 928554914 985303610 998169152 642820951 867684768 505535992 729124163 615781399 948361799 252296648 999950266 142656689 439752992 832771689 993860264 987366925 990030993 288795731 312060626 476411703 553497060 769130011 884987986 847905726 865474240 935877845 970126679 69077749 111807766 923802416 944227827 850560284 994631291 575350155 946532989 814424838 835965209 128252937 133924534 815871751 885063242 19753946 522664997 268132880 374997460 897377169 899584289 551157303 657663091 684173994 959104246 637681801 990986407 481311115 852658341 695590429 992725018 52479459 413313119 485235611 485243196 399523975 566872780 590549791 671149510 466864143 719586109 411304471 486108812 848126214 931965439 365829498 620126158 770502255 918508878 406580107 523615781 313643499 851044055 984842300 995956868 90212312 226367327 605759070 789500759 511012545 905489224 844634572 969488294 875307777 972284714 614105916 752551784 152654351 933827021 303211179 858512497 814115629 961025384 154835672 627576746 49143107 311534990 987651227 992314565 995526848 999538949 261111943 959370100 790642166 825706996 218439301 724031412 776824110 788451016 210216247 421738124 920017335 960583219 371201250 905901377 679164116 851664268 694129495 810647134 198675688 844845595 845492267 927061034 162051970 900965854 282907467 586362195 325741730 527431625 715115584 909539011 130879386 187943806 772045577 897785704 458444100 922386260 589588925 624730511 190201160 320198778 761076779 831291742 712856615 914602463 273676378 375225573 648647491 678608367 626821328 708205924 864073256 994953718 157236387 768523758 265948742 786659984 543388918 684217892 115840332 998216873 438181409 932114546 993598641 997866704 957847503 971786947 290575055 788097890 371549030 980675159 349451240 929805769 99765497 633866625 63400798 922015368 675214319 704814081 784508392 840855604 827781 35269187 479932018 764246591 164217923 686014837 48525069 462807980 371724939 996633508 570035800 681181705 214259407 915404557 84573769 799052856 695890177 824111016 36104421 120089834 200307414 576053621 795092372 958445170 243062317 906021474 763757502 899198783 330503377 975824580 946311426 986650536 296304550 472322612 493978497 724425380 999715579 999787551 113415339 691983013 996208785 996661656 939714310 953450311 730728958 764843582 500435917 763786707 8757548 875453448 494579249 953538363 165518812 713322071 341308553 975383586 484796361 604663696 739715761 746011825 805633742 989887801 835724037 944367285 346375691 806408910 132806743 978908034 695617526 940544793 463945028 990429533 471141557 571575899 436696016 692295686 617292499 990996663 505062433 852105557 743050140 775953451 660753594 874870575 882089683 958008625 805601559 824457174 297138031 362167408 352544487 713551209 126677165 982512003 674858490 876004703 47203187 872735159 960868067 988093755 349358903 847722391 830781194 887141675 258845686 593938914 376280796 823095083 6477625 546021300 882836614 996907014 225669356 472171628 533979205 976815656 770669038 975007868 485550106 673166637 531987599 768955174 782524909 816558570 391802090 948348925 357227526 601156153 636059866 832039943 80365736 655860074 443967345 494928415 538835229 960993657 666231637 784213808 529498663 617035547 827924366 923020398 100334492 311857418 951417356 985554706 115532783 492167842 485737474 643255599 453663970 822089704 892632346 963083415 386400317 861244226 256023232 456580579 446272146 825763959 360549511 891387817 74440924 611873672 453275214 718270457 559498727 992558522 664436914 864348719 46452114 502067495 727084638 744775525 877595675 938139100 372414970 865349710 104179285 529329804 552344504 888571867 13476577 875889645 868015794 998014269 584491833 893285923 521826996 668280749 887017745 969715778 2384694 167254865 373803086 805032886 752904296 910847299 363109599 930338931 651593109 768523363 120745808 132699025 139735555 146576690 771283862 947751583 503135037 590964076 756877404 923954110 203217289 930326837 536316007 610764398 40961899 519718186 888627717 946049424 23180155 808807496 162388514 399401451 891834970 981744465 106873670 432844494 623365737 796346662 339187288 389397966 140280034 185488070 608259366 831850127 953335326 955395320 336674667 794443695 782811431 854066100 621415692 817489812 142296109 717421874 75493173 421095447 55300870 733068816 955579730 995759472 631570239 641805332 722100753 918588447 358730811 652217787 240720686 843030145 212478181 632662158 693651636 994718177 181323100 559409249 843244147 922872711 307030459 397578051 901263851 993968196 799228898 802153579 296690151 371651680 448415668 479465896 335788864 972583729 508534725 784091190 26777882 876144784 62739025 623101579 686545706 732653076 81799081 796548977 91805434 769758657 807466322 915536714 173760429 981729753 257405347 766287270 735774378 793038512 346707720 703035130 776820447 997325375 913424331 964627306 107333169 909976326 101234896 421393809 991073269 996536844 880256976 978623643 604005890 858599936 279516362 289662639 320841773 690747664 79913629 285932080 611393053 991317440 610477101 927990070 4811146 63655268 482177598 647632526 423625258 528407641 552211044 809775030 494783977 652327516 523672669 859885362 317210526 624228234 664645721 868241262 472885104 798688480 388608289 894946494 237235355 545472759 749505521 750432736 326792973 592439928 791557909 954694812 418066246 422146926 387133195 648484573 270477855 432281460 960857221 981454996 831891585 851859847 346366532 886690853 499931400 959976072 861621191 864770534 439773677 603647863 458907723 713740080 305166427 523877469 668601719 801985875 487146830 747251188 96064072 859333665 79196854 903119066 831463821 988388762 483565012 661382844 408401393 865703643 995258756 999908105 376713293 941136285 622740054 656193759 570432516 591126116 493556625 512369794 621632442 835934091 644021145 974827928 885251179 887023866 782638217 889622250 466016215 561420483 101206980 530913479 966138176 982196965 458761035 555704274 804754654 857454836 26919792 978315199 713507590 796664202 85195134 872805685 111425423 227516542 69875158 522841454 546605731 997124583 876808931 982898155 175712127 339982087 363552620 505675128 921647479 977615777 490701094 839224479 941890620 965378121 620207424 667416656 708768340 818522868 544324880 585460715 251417119 495750973 838788825 844325853 588339490 741215127 740858837 803747338 425163610 571370970 231108252 263377280 290942440 415934536 822033389 889389180 165742497 702351551 571817732 875497012 922251936 981209009 590329634 967528255 180379058 961632573 528867082 827370023 193355547 242894367 597008206 704321287 782580192 915004552 979476951 993918532 855704504 911623524 547147475 774662099 582485303 670624978 226181027 998058244 287519265 663163186 157756588 944528981 941919 938075451 825957628 998883965 105741170 971959958 867508304 913520883 794790534 822598259 356867068 832840768 252050216 822327697 125115816 694802948 179035364 943977970 305559399 859957429 627869230 849142636 555403143 971264826 507198367 831056967 369128524 472211856 338264174 581669778 533371554 561959242 24668105 872713865 356883807 381321284 992639385 997548152 695384351 885572628 651446855 774831872 54833158 422391782 812774585 996682512 438522493 974534266 610195227 725126196 221675943 422501318 815225601 971509527 203919171 305897734 470950049 925273271 108610427 859211035 917328297 964542894 859481115 871757133 399125578 594943884 872055863 954145416 222745080 338545246 180149612 816227159 316897713 597204573 854930504 968973321 859543944 860970227 598707407 615292608 298086583 816418919 417801875 497083119 614506286 626866077 803247283 943606199 429311070 705396691 360209741 480454817 294909394 557151019 505237251 859698749 123010167 167792318 952828268 971689253 204341656 525089596 145190999 169325827 211570147 286981401 772008773 883950855 379165668 548882201 841408528 869526022 475199413 722645020 315505361 596396738 686257485 959313468 933082547 937545399 123968288 635089486 974892026 976637964 583332738 722451288 779721684 818975745 214062768 550422329 238806306 321268077 162244640 171546885 910023494 970216112 976854602 982047794 943269208 952550355 609101633 823519813 907306100 977428579 961491199 964321717 125040891 182013018 401019812 656858131 867737696 875968956 958578345 968666520 782331089 792754674 238720140 419831904 185216497 658951031 899664664 980575264 812842080 842649426 430931473 436777107 598409043 607399136 403304027 965854003 953279337 980018618 443008192 634537230 565664551 620712799 88359687 667018208 690949793 846384595 335771511 958233805 995395375 998270425 955538265 987683223 295114010 439034673 600535060 869986160 764513457 895350721 288519720 378251289 936723622 988701111 623391918 698775910 238743618 646198703 803268285 980021828 863306794 967063745 909410977 991392491 297311953 578019276 356071620 478610102 865398925 876540437 665357571 898405756 709082928 736194528 834877002 846827199 19446466 142536892 323683180 332065451 856252404 867359274 717075894 876686266 309052106 950531703 622884653 951400356 131951885 139742967 818440162 982228417 291749565 931565002 768402332 891817319 825491214 880349611 384123835 757852002 566991252 778806114 729330817 857319777 34611624 926048792 535031691 626973849 640599627 678784306 858011216 999929741 442757789 592420580 633248499 933012234 351419585 509635788 407020712 460888573 404135303 674069753 331201253 777842828 124735500 424825166 169358041 458140934 79995019 357410402 600241075 992706494 796601867 804575796 590820885 872927290 217565630 907641034 203166137 506362541 185458936 876291111 577679144 589262671 916776624 936193235 423918034 744316965 294981038 811111560 811738401 914020611 655590425 894116766 132543851 272233523 881445304 929809245 468118226 781987175 45050711 253925642 378890854 905387087 305694231 399935007 842662054 899275084 881641447 950494305 275310714 771066436 822927061 941676917 726513360 967280561 967354069 989588843 757297603 781712720 876816148 970182629 376254190 767011167 579108916 759798651 836773815 888120033 657303718 789991899 223461210 817373557 352906558 403095597 401005636 955800957 530377613 833753816 52749176 935963064 603831356 912732443 319941051 928222412 934265541 937621900 546583567 975138428 377010046 484647069 539097869 738290812 953747854 962056456 626680436 997652435 606921527 834587886 456843105 843542730 320288600 376240257 100477536 122229069 28338211 166670266 254251947 442703878 89085842 565685908 577836702 671142223 619386294 937270206 218851187 447149890 513294838 527766529 180524501 855692025 789428028 954548900 725068062 822108466 130684500 530614871 335613317 416591972 301166469 980664290 100238397 723368222 60248599 956267800 231781815 252610633 776854923 782087142 438404155 666770123 746662036 956260866 476236455 845817117 84895616 272343673 593171618 606021535 218453696 315841433 219563080 979799348 950467889 984691670 9117461 35091884 345395931 407688457 202228033 638463669 210896142 981445245 512938051 887153487 561295444 704528793 775553198 998272596 426556415 435009007 951862684 967919912 27136794 684717189 247114257 871104824 960217105 985695069 619526252 659981061 810818830 819967669 45236442 125261453 287850467 354464606 802787236 891501247 261587113 759982216 502971412 969974445 361024159 896001437 926306149 994077754 360026001 439932828 111377585 775005635 503911196 671987119 254967528 573309747 224372890 542110206 143760668 156934578 296698959 659518710 143930790 423954266 852501563 957276992 952586963 953483520 282720914 299513295 918280806 926926511 592937580 946271197 604930828 933537196 851306859 941280359 314077641 645090004 670946627 929413870 346627126 574709226 755839275 890283730 389943179 942248257 220013100 377727067 412205232 970631467 540270823 828173795 699733801 809778662 861285177 900693507 463035422 662503825 633183086 918905162 111548386 989797194 839963998 973938030 211838872 899393939 922637382 968978802 530089167 589264033 95102667 109335328 525039362 866913780 800418215 966272219 42213437 417923862 245936817 942382552 750941011 774662965 658619717 706038991 664219366 666284662 510988072 728560374 436938689 523216994 277993210 457329193 223679884 980503324 297520077 786722570 381328259 992818840 444948314 797686892 250942363 331657359 209074049 522862961 831429870 953408010 56785732 793034396 820713000 885198870 355833343 430717952 288792759 334917165 927866809 964751995 837694162 931613547 957956263 961362848 654848554 912593716 675275068 694509891 730148092 799197446 215902292 970484760 309570663 992253690 536260452 582286330 616718865 846001694 425564658 578635212 976238658 986112246 330182469 611202014 306107006 538995161 188543507 206083539 890029971 946962045 845995186 920025459 758062896 828683835 302475696 363803158 608815629 638242941 94472529 337788464 985171669 985825632 906087454 936452772 285228255 598942955 528563756 795919311 423863595 597827930 536565752 719336488 913407364 980810623 798211587 927814911 969583971 996449248 84915560 930062953 915058991 938953528 117604252 714122885 263154898 319984558 443410050 648979455 109816971 223191489 666978692 722010279 538793408 646465603 661048535 994535248 949190043 970923761 646762988 751202332 587680963 806484038 620606155 686682879 532277093 893403911 782464301 999149722 231493725 987060862 39475541 550727434 301922633 747130018 922949821 943886498 642222394 734599094 832143329 860393919 132700188 524251468 247890270 627253976 544114936 684147286 301484590 646361491 440949692 652790637 403464995 853664222 435304436 625490978 164102476 445792720 513044343 978828261 308460586 819310170 334439447 386493565 145594428 681557387 564623023 784775470 767168703 799918368 721483933 888986067 906134825 991051701 382196023 422652038 325668141 960984605 400544505 475427454 205784104 404242576 78724689 430968792 481115023 802155931 2801336 481599994 698899329 985789641 785646331 807873885 873741216 920016978 880464593 954273383 503880384 923189335 547991428 920086663 751625318 934098959 537811995 601865718 144059856 651304694 981417879 990581036 38685743 292421945 777611885 885903895 224754267 676378825 619661582 897763491 978458563 984623457 601882965 683633983 392599562 435462932 383134604 929280384 36178212 117550530 164390926 901314608 402320475 959678745 279330856 873598015 550901537 989159922 990561408 998009304 187904851 883198143 873583484 925984072 564097040 743958849 330890191 836817499 579822614 751252421 669519673 765430076 832107374 836403511 907634755 963997953 719280771 831962804 383195487 473125608 469420519 746429313 126171861 407174029 638853468 707842420 499999992 610722966 230058333 671209987 56586983 334299816 688057354 742088182 308367385 427618837 159974381 671292292 72974381 184994287 134557393 930702298 314263012 472997475 378331021 712459666 206245596 778351070 249855167 697236024 661500782 757181912 223783836 649143089 94213227 536955036 272282720 639501343 578402204 890715180 312316195 935384296 537310153 698302641 799000228 903849890 893318453 913778647 196729112 442628281 63873701 385084075 488746512 992858581 633358637 777838858 218384309 226981859 732482803 915558779 195764022 656298642 712874806 989510706 494837985 999590233 735180631 959003210 681735287 984339203 260684895 273084432 302806366 405516337 8988700 34730615 440109379 838662643 577140310 588932634 702621343 814662568 663770910 990946591 249883448 969265432 71035491 674495103 874708011 969505246 181417001 898081261 583191362 669859110 438131457 698262494 912999441 962973910 603834223 984315750 564876671 758939737 313650987 685358623 879960896 949154445 861035075 964401232 514802234 670446848 979536160 989477066 358375056 381930072 467016599 937356049 456286782 811916573 806081273 985977162 535087893 586449418 2383295 578518718 424842176 732034133 260602219 969037041 435148188 453282570 212781660 290688077 263626534 426164267 737262535 801716374 117545930 185021115 214523088 286113455 561562206 728243915 785922530 882572050 919886867 966209351 923790460 951082670 751121511 758799177 283523278 694822339 366170267 732367047 622734637 942599289 85972542 400533967 603329726 736751781 523817983 566759247 82815307 258026846 350468501 568319367 847816577 969191747 478635366 661686374 60657115 986746235 320110045 639795038 407789121 946989347 335886636 612555880 534363301 756530367 877585192 885273664 42368566 262799929 909168473 955320997 890835441 993035247 645758582 931307656 17204493 323927553 278968325 797346400 763609084 801814061 228413843 725309275 410296480 781949909 841385574 929539917 807545217 985075088 499953156 964819822 915191149 970137673 880060150 909708214 44882223 562518389 824116389 970095559 424657425 774644503 23966291 718398092 483545581 570465823 230316640 711960599 864124239 919106791 135406443 856614623 876838526 992983461 353107507 442191017 751412036 864663527 65369174 439788047 432369330 964033707 938263090 991922357 200289907 618155146 403346627 553668478 693872086 764296976 814168910 832606733 199399109 334363441 765754632 783884548 188235057 731098276 905821832 971483632 113138864 425388900 827333354 939399358 214956935 971480304 880128554 977198398 354244331 983177408 433203476 995961884 469810289 635374421 477649022 668432613 924899593 925280335 267800186 276173256 914683822 970688761 188958064 743202254 350627815 369947349 832736850 994146770 879044130 978883194 787298095 876224958 848604845 891799213 995632680 995848833 167569502 316412918 275601529 667423100 16507938 122213952 84591274 280473833 429907169 800674786 864791536 883156413 891941706 948935762 997208503 997428981 676332307 991240355 99058154 492228345 764699501 923661574 314591235 562068394 479909802 796665047 267236467 909741171 404051931 806121045 444669010 477054428 356779876 664147394 498485265 852177279 300391907 796043008 333715551 356082140 39857792 898516179 293003090 672772617 809187575 998579109 68305917 212607768 391024737 933569784 921777279 940623525 385563897 865817848 756400196 959791489 971568258 980299555 826032874 848148762 830832136 976183045 770730152 846716038 764446656 801016944 345981797 532679827 457700260 498219105 866850063 912784675 297145613 837758916 214777771 331094693 587120279 939374964 521849713 893560451 497393137 564271680 707985935 990620351 316391839 965550428 666044038 738873432 492730840 928150375 398798198 501181934 870482911 924272012 365825026 523238408 314609628 939864909 727983529 969330625 992328775 997934029 785034670 949990259 557807578 837659865 983812320 994791452 848115741 858259432 912438486 944050689 750053510 957760031 272711576 281816819 587289603 978822017 496302286 958149263 176378488 267766023 746113546 976195690 12444660 576843747 929082759 979428881 808660956 896853746 347508225 747678313 513555286 939211028 385736033 859847518 139547820 953678372 387482051 506759720 727411782 737072137 851640448 873371286 251727603 968407226 285663854 686092182 388699719 667651142 311439199 580510735 206650522 974115745 113092586 681633079 315446659 823434159 355182038 968721083 769366769 952953026 72410699 871932822 212695172 705878189 765766765 785711695 239206915 793574519 929851572 984247723 361537104 887314080 469497557 917972925 805891402 912206003 231910563 553087961 673982583 816570120 861303014 960481220 390045414 598750484 442198884 731985421 941878761 967752965 937630098 989895796 390313560 706065000 613341556 865716147 890363526 913399857 253703604 310499499 27553401 918453085 455638525 969574395 167952225 457810378 992502483 999144943 292685395 705512970 808011646 809307823 284065392 927074727 188127128 275990423 381223675 719559353 960731324 965488080 15499923 228089299 320585501 411819073 20963946 518578980 802166905 991504536 90572935 566548225 93422873 544038941 878317203 944350546 375712975 688443525 247046353 579589976 886003982 933876885 248846639 659561703 862255211 912316801 12337453 134177640 899786630 901280883 552071213 872005372 335183396 481423193 50326072 921880284 979802437 980950268 566919579 793627843 457598478 933380142 248071318 735212486 601900538 740365079 991106583 999775483 142886796 793433648 502341208 532052749 123095086 407485350 256905520 950706106 358295030 969494941 960825212 974956458 649620101 668990279 474312464 584568336 234614513 659315740 207009004 879301025 627953633 771055617 554781846 903359287 172029021 753375567 831283420 985292823 689575754 947294682 498125977 887618517 358372867 581134599 766953457 809542009 97139810 427360569 280349054 299755603 690365621 763790151 199156191 929361393 651271495 964136259 647915701 716388561 582464196 758620756 984476646 986176427 37737077 120530663 267611371 674624309 536866904 961563967 293685418 723652460 688038408 803603501 738448349 840694133 30304128 720686798 637466993 645053069 67861962 295559369 586407257 894806196 973566485 981968779 110679126 775733483 30573428 422479868 513591446 784252724 576130383 846363775 148978738 797260475 441382110 531334419 862740979 944441357 653451814 915018143 776882412 935357578 484473378 939206623 541137970 824699151 322634999 439956269 339317243 813909390 151813618 568773651 457788653 501930904 765614829 822511422 145056396 497412351 54576460 109846442 16883813 336224329 571906397 976768481 489754644 520744092 798012180 908567483 14706100 838051106 123445976 548721870 508900031 594109674 171983591 931666082 628984642 942249089 347576081 417726301 52035519 105258985 119773521 594504915 93873149 567124044 246056164 286652159 803155612 946449364 894145939 918974048 436929821 969087535 296608617 369493073 155069789 477366509 786931870 800697011 487756107 767390008 609079896 932464534 194521494 845998786 510644352 814188488 734113028 753830381 40387515 156605073 189663887 849555971 254280981 785349742 61005916 867775079 480699658 693209972 952765060 993021596 702566921 747933424 549043485 777397269 211658494 711090350 832315667 975307342 174398906 716945140 168621207 395553691 400149156 630282438 682554510 867219391 534029828 560371730 639900399 672400658 235160018 605657412 946482411 964056609 700095816 988946901 346778573 996922557 865559756 918126110 21450446 710602195 384207798 781018709 161971635 423232062 314606035 551786682 461131937 831807914 899798176 923949294 6410435 250853544 182275239 748591819 52032660 553015797 395142131 853416854 635649016 720290554 447597812 867035257 292101123 731831083 411081437 894634510 155792125 556518456 203241963 217689975 141396443 661865573 619830043 752956179 609991831 825691513 820029116 823822742 187448848 987039873 449327465 849176965 842987932 877094659 26248909 296675572 259986312 361301657 756107191 912792134 356332902 565650148 727524349 925156748 418775518 945292066 239211230 471176634 657663112 804997220 493041318 523762242 313760702 595617936 883018915 925132043 470198987 831994713 282226645 515714507 156019996 369224898 601391957 927357144 7213389 851894976 724478530 951422782 128855440 551182469 102456149 353323491 656236775 815148732 256139451 869958185 641347949 936417001 730738936 971075648 662406875 725991089 565460364 787089557 916973448 929548946 255936919 834973270 901825280 969305425 414729012 864364666 532470912 649416005 254664654 943595098 900721790 946134294 66488041 608723167 224042617 771937869 287294861 961290959 645589272 959928542 920153213 999262462 960656121 996427897 280042346 860046296 207384194 386179119 190142743 958067196 933867134 940320879 802200796 929473852 769447914 889629240 973516756 981155390 48099497 327829793 257201243 999621301 418449966 721235460 125784341 164141686 723602245 894987627 169496482 546973179 557213448 982601668 255623971 833171912 169611134 996888293 164630149 492837049 796462053 882948459 539493724 906029523 420010026 759323793 360236706 585286554 493278634 628440556 366634804 909408744 203494966 900019713 338319088 565281959 847213410 989749642 962740698 997028562 304637790 769526288 379016426 462998984 45090494 631762601 565931406 585206060 883980664 943720934 218713355 527740975 906985615 960588562 737338841 845907811 820771129 831123439 375900805 812348428 424589709 478465211 147668860 568863725 912804733 986098214 258059563 921439280 687477122 756266446 38705997 416713794 908079069 914972125 596689741 951140717 291808559 590806003 301957131 871415718 907294236 909165441 987305127 998483132 358835357 455867443 51445933 293734687 635196689 818319143 895395788 928582962 695866143 799391649 661393447 815877419 268851299 425233046 688066466 885277807 553486574 654785924 26228171 796826732 721425585 824378703 941238501 991077644 815626121 961587125 387783166 400227800 653778035 747880060 894478857 915857156 943074029 969328494 982353541 995972090 575379341 622382451 618120515 909168297 64095109 685850376 838454159 895510177 555069847 913992956 7430324 182295794 169486147 592459565 136593758 773173806 282087696 927475774 28066270 168807875 487647333 697772549 898964704 917504133 327099580 877731548 722107059 725408650 583476526 943236874 799359437 906998360 530927245 587288868 161735256 690680301 581057590 669383072 266281074 815626500 474888298 837426787 119858503 129601480 948984242 964981068 218737005 821907229 730864390 879864005 476356890 930939890 159799814 197847516 584269251 796958381 726365670 895388839 462408677 731755865 54747424 249220063 858714792 910871704 441923209 826791796 320674900 897319754 746646456 782616412 54225946 748056639 47789374 147521092 75724122 198162672 292338591 866479385 666359049 671489860 496879731 599610307 433462657 839472694 970601789 988141083 673975876 912764226 3342772 693460797 218748137 418567297 224213989 687927800 367798872 545089983 234979557 491375471 475298752 699096584 314405674 592906015 893288398 957782789 492202798 555479506 786193167 958512671 21662331 742598619 678693718 679241024 845878414 869745805 489216483 741137904 507998685 915984649 874064797 976617680 945546613 977312522 262948867 973930332 454384072 719052336 784469811 972356611 175400072 404583040 428010603 727421270 126548570 377405842 923525627 928617192 246688260 381023964 867185218 995673762 310821012 441619477 771672516 995102765 543381806 917372480 152482407 461420915 337144141 702748270 170190421 858464306 570063619 583950263 594602948 980659500 9530231 802574055 218553020 722546007 992812517 994449466 484792118 861114124 925761626 954726460 173182024 925523950 551872885 555828480 655730834 877548966 204947980 994235482 836282183 947517654 861704818 891292796 450413210 574233737 191446381 942634195 579531004 710337403 585036128 775522813 244586362 718888727 904491506 974719482 866700857 991408442 997011940 998182481 346606851 580364717 930569116 981167519 813399155 929100763 557790305 699519634 88068978 950920789 621003248 783894268 130483478 334738062 809757618 812204219 998594519 999401610 253703871 714446519 489584873 809547689 378244410 989932969 660738578 723202491 770784633 953811647 886441941 918214245 568156784 780988942 764098481 773099631 427859177 530277407 166850135 245842261 780810056 793000353 610261663 778393484 66077118 88650239 541012549 865869095 685136994 996646872 530213182 859724855 166824665 591576614 603403770 865283490 745420804 826928771 452142104 468657983 563456016 918470854 538012055 847164556 766047897 984195849 10194068 687190129 81833200 167011008 410204088 435786085 501150510 588404807 443479994 761350756 91656771 352530557 138226616 303714830 35710877 898616314 188107653 244414695 345172876 977642175 903190078 945333682 397685413 940265862 159767699 958273426 542994537 995973251 157839665 619266808 305754103 843228166 803217775 944619052 98965104 186131234 363382660 409275272 824213817 892068965 680228973 706987038 406559089 922754324 821443411 996072452 661267338 855923687 848300811 895218928 109960213 276857588 30108381 638520738 960420313 993136634 607991295 954533255 443461857 587704659 21419263 254007144 24741205 38003939 564019163 882611016 338946027 360658304 336923300 423385328 918560662 933705353 335813980 426279005 671945810 827313574 405064686 538181667 320624288 505003328 481141549 772869993 127148847 530545399 18707570 580402569 292936052 871338421 897071413 922940251 340751989 750726783 371977239 446969367 15037151 753245183 779581693 981055388 869900609 913153320 754797691 923168219 533699207 702986169 406396883 853046480 794741182 897893029 5261460 324519339 682935038 980424375 539931243 629276587 829688063 899769532 276560857 891668419 648709200 774680106 44733199 467386482 976924788 991324296 707895633 760864990 136336845 953196456 165604134 427272244 758019267 968219312 107904804 473235708 727362619 998974086 700803875 899728127 182701028 830201751 991770872 999578373 531394190 626706412 884058824 983895533 460120610 608057911 572511887 660771146 854223402 984000548 332150743 524544202 34261466 931084120 304928704 809801996 33699599 41697908 581490746 916398480 265349842 485779969 436638237 517464496 464059809 523421526 144728723 994824759 777809894 821174403 128761599 896807870 998493106 998936071 404193552 896485613 2424379 935908108 975891175 998325803 161728359 395954948 466228132 516270184 317028872 998879448 991267931 991453129 818015152 826717354 660012157 827617600 576337163 765743676 808307931 876704372 767726951 817146584 589575666 770470344 379784857 425335163 586109019 994553987 636363596 782874087 17408086 966939422 116004611 794664263 50098506 505471058 94126435 666670875 596638721 810889725 789386628 800186494 164631334 442179957 908973291 960889354 942088131 950151456 400171692 808153175 356164581 987676776 721679052 771975460 67956924 472559112 983685733 994777341 824774326 923136913 750421684 766404124 439798626 929502607 481667252 537676549 680581107 915304457 15345766 321234676 664673640 810270483 774822680 988025416 478448020 928827528 541354964 737923089 421839686 526416893 115020137 611839337 390905803 570584050 36436591 407869977 150925532 692710439 477996956 900447745 288400517 441223199 281391111 623488295 873918386 880546662 466224021 736126528 464811763 955306993 22479228 623056947 767469992 786943958 764352929 849836472 72146644 895570648 605387190 666172131 383777775 488219097 750735059 763266606 650556143 662409963 604523556 609071429 293554767 863241671 788994213 897385430 975892826 997088649 76265075 799592523 420274258 453919907 619801069 792652767 220213298 594242050 171582692 327777415 35382550 191820816 171039748 472959539 325742809 761673847 583159753 996649358 363827180 798110964 740933802 878865998 204247561 526309430 356067131 844139822 241539387 819966848 98874925 806171824 498622949 672306708 749321017 762868315 118443967 426341551 916710290 919311312 658165401 900201223 924495536 940779679 182551036 595866470 411902140 610944708 940970750 943854724 594335439 723488911 780658438 994627031 151917212 876828436 173712540 254519296 938270778 971970306 608992653 913616746 783049787 939520222 699775063 780668645 633306004 695798794 370853306 542501378 135800799 268200507 721479152 855234689 121367748 234980700 250013719 971547419 367964332 967751010 852566410 955996914 354526303 542499828 414269626 599081064 210556619 658509351 185742638 907444993 39696208 142774236 56235322 984117246 477452638 480873990 601491340 861443313 91104861 497647770 178749300 587576461 312405817 576489475 527691307 961907067 785970894 827286025 220138951 566763154 959595996 979675458 777248820 854370978 736589577 821606944 683062851 941304916 547704647 857047442 719110685 994518604 46135364 650873551 961587105 984972224 396511214 986966155 640612069 694334136 632120184 636440469 175324592 505062077 275217778 895605999 113917903 173300202 423200287 987040154 89315543 583784123 609733441 904852363 474652981 633450837 670307684 796108118 859863437 876866403 152534511 975262757 871225972 890395393 185212031 867984702 347456994 648438617 274826143 875412077 904054152 954721794 606583390 647321686 532747627 916417457 156287175 990459320 380815113 585032682 136124105 324771199 325315721 378429896 360687077 911951436 61148447 485912839 942803759 964062793 577097295 790495364 728510024 739902650 192740407 943373373 383861234 842410766 632968814 866799728 361415833 508765154 514579455 718009166 802426450 983923886 41041162 982499528 418441618 953209014 470559901 836693839 904410437 978561658 844862762 918764117 583025017 974910329 222989691 671914036 549772666 995792233 333099569 838305868 430985584 759215608 925841476 960442542 841999331 988404004 981826572 984065907 837183017 969553247 764157046 936817834 199009038 736876441 870581644 935101678 61191421 355817806 343974819 441977756 177169332 995261985 371898678 739132780 418626855 914678576 901886341 982494475 86820865 385973102 339117898 817354366 995643405 995949303 323224849 630764713 414054649 527791838 351500304 882257979 211807793 279709902 478331362 705238354 264717878 746825909 996826082 999665117 460251306 961655924 342090812 775485785 122703975 284530092 9733243 569613499 795178002 970230734 147579593 181660440 759968374 899974934 923577976 993478473 833606707 902090101 843722900 873535463 200085465 499698407 795267990 952081121 631121073 907023771 508547483 759372055 265867550 521336912 299416187 909776601 281656727 678454039 361844207 375036898 511637806 973153172 599620857 861646304 699998498 986564163 180793792 748695363 254477600 987754165 882504119 999115339 829474594 901358933 946708903 990126523 392720630 606501239 685372555 909941247 710566671 965211433 657838539 867279466 222350710 632446091 188009832 359620144 125658797 777561678 390325763 480939227 260317086 334220180 713969031 857885947 740138845 746702840 535837168 936503232 923067441 925692052 613778178 706699196 349643706 924318615 677556529 747545342 988518547 990593254 46316821 656169452 629312620 886243293 554585187 608950166 747897899 930084207 488020630 967622853 699912932 941850678 655566338 692071105 360748309 413618310 769200504 933386531 809067800 810266335 492843980 825135724 536247504 727431948 835873470 878204025 116428820 454090457 310363131 494151071 285236470 967790525 867460306 982314825 68536485 927103861 738641528 778967470 523154173 616278061 415445050 495038721 173430726 433324818 808951948 981756579 692637448 944855519 799822132 866600148 698187989 706565825 994213373 998182440 849574747 959133886 159374271 772025612 571517023 877751191 952269430 975849746 393267374 706714009 184671689 985244489 479189230 676618309 440707187 551201862 676362281 929404534 315930661 471617371 837737919 837975308 674533651 680096067 377428437 746359015 973107834 980799824 775147530 931338712 244460534 814675343 38492844 478518250 130188537 755586578 789712123 894100194 423131875 474851846 932494738 994432644 270594152 324702915 495958326 575035558 611625256 689076789 533760152 632125227 471246498 490097194 480507963 785768407 92891162 354997686 146139886 903295697 119465186 287376068 374637446 677854422 974131015 986803286 149651993 430181428 707372743 799717956 836418913 948408610 453786226 923469722 491100515 778088936 751774130 982156602 673254358 936428003 558311538 610172483 926054359 946715728 58466371 816506076 312988190 539574101 542863630 951862059 559530694 797312769 311888521 448169282 931228751 935766761 736726632 957135497 56196129 736430721 114998389 907247197 324908146 767636568 638363877 660170363 21521724 235106964 208933870 953118719 287966770 606659435 259572406 863555840 984842855 993257563 517916713 771226279 692296075 747201678 774827421 808193092 705680881 935468000 515101633 928694867 825757156 939838892 332409036 729002315 627763047 704024986 641294947 814094094 89720135 634145150 74176432 797285968 773671413 902402601 566364438 673867152 828798384 891116129 637021308 830770014 591108884 691095337 484032581 642385501 798489434 852511805 767679269 948265900 797529645 850846020 201984437 515462990 322701433 664331018 804446424 937314952 864486355 864494673 153962910 278100538 756943471 814332866 34891601 805043694 881308894 911545643 54585130 877285777 163446314 807534767 140411598 757804225 123375350 825927586 374080202 646362971 426489310 628036813 964777646 999104935 944873205 964115571 616997382 800847309 563034488 992908644 707549226 754360157 663488433 669049510 391565698 486885503 395955092 646300361 638462979 778756644 323036820 467546221 142391171 297878852 381320913 782034540 218769426 970741434 435672246 924841630 618468236 987545655 416533828 760049053 182182186 282436611 225624815 843341956 897975893 990687154 862927673 911624087 647922781 798556171 895952386 896667498 605448816 716952573 213246249 907820524 187815415 880750033 973118815 999147897 388937683 717833086 982792945 987135230 279690210 808705837 406382058 830698119 797734818 967645209 825087362 981084093 654474458 701858063 196570181 691095526 405435966 644591899 844288940 986017214 319431167 882818522 726217468 748024424 98230882 970295540 927038910 954506378 994285878 996189973 987537516 997236424 488387486 650939101 67848910 92813183 78422229 337244749 518993624 758685857 403149473 770255573 248372763 326511037 122622377 515477243 833209915 937475799 893636665 921218855 495735508 716153454 537327226 706427479 757841853 961910400 179928298 690593641 84195553 333938394 118691291 516573202 712444486 764368744 585937856 717614436 209001930 558076210 383147000 488188154 498486157 750223612 656315743 979693807 615071190 652556712 384216404 514338745 936778462 976789962 277239594 729270209 403834798 873014791 131002169 948998274 727139145 849140083 877051087 948112708 519095803 686282986 378892524 942613298 682321799 816070260 84570886 346957887 518319577 687031952 971797965 972387792 264128590 888889810 35356107 890843869 336880540 468143537 953421687 964884882 855243349 961531652 206646092 920198823 683889080 988290487 266895198 547886899 318653556 586613691 218690957 975189910 274797089 704764114 530995413 732914946 137657763 413030308 916585974 962881794 250819407 754779997 970700111 976937708 322846876 345461386 698209663 871402212 703594018 847065719 816730667 917214884 408186092 463423779 771559689 954494631 458075272 595154947 341773065 761119186 445485010 647907287 729365682 778485119 481517449 937716796 162927097 189076012 880781657 976487162 269954981 949474670 268022718 296850855 785140622 882555915 386541956 488209766 466142983 650467953 696165147 870665393 288766732 846126890 477273039 924875538 389551609 763793714 656111952 970723980 311858423 431009805 806215420 834530599 620308781 798505928 12715693 550115994 882648556 958256436 958077732 978489111 422725384 869983785 614427492 941921925 413324098 554634034 410269660 856828210 622869126 806566145 782735906 836677734 982555597 995765425 915466520 991716715 765514785 921717985 483840520 682447951 222156972 710309288 575173373 646146159 516131532 836336757 793785641 974651195 929930679 945166073 384591363 415387549 933605990 942415483 723885095 938163382 628759197 746233468 358520568 383660296 574370774 642664256 558163996 737516710 680394631 863679063 503506479 582452506 504840567 793593113 271633668 807027597 627178405 915807902 340505397 698946363 355133555 870184215 622643853 934177930 95213758 530369481 318837136 831223339 366031147 553077641 798956600 949541698 991869124 997121344 609593639 736805215 582968119 719984292 931226919 998758729 62761502 439834460 8951443 423380394 851057235 905248467 401615058 609922554 192615419 692190210 198214721 967345666 148481373 767497800 355499174 575946285 688873185 858832324 662349978 731032999 203784025 268236012 923984060 977643209 362382468 427083797 958230623 975402016 415606546 597065936 699580509 775024859 81946283 459589816 385561988 769602459 112087578 287149410 488415772 837058887 700122618 853411422 838443467 906479377 959699002 978939178 589961075 622361816 841507818 993350586 685343496 777644426 350357518 608588806 475191419 857230116 245847482 702398058 916706666 986334585 199267432 774981531 2878462 780072471 676497668 963415420 553445799 571170423 761794905 936897965 649771891 762990038 289674931 453127752 420458656 791729154 746415888 982982233 561006260 660378673 691208953 749955783 141119649 409067212 366877125 435220136 410807700 731230476 948035481 986182451 858589897 869985221 195147804 942836616 378055954 787772009 140803625 351519459 425121543 508120207 720567493 887106140 283815797 500002478 410604567 877680908 255819652 950518137 44278535 535975093 781738248 790959428 64299237 614159248 215183811 526391195 258684848 261286876 955821611 992431158 774914566 824617805 70712504 196380211 396144927 612370475 987134548 987773512 486684387 526591508 995950720 999234556 370130945 942669947 77534860 862107673 57704394 188896549 102010587 444939866 797874083 901071566 927066248 947200427 72116443 255382589 199833297 257402712 783687207 986807436 377073300 899260039 546884441 607427191 420420964 986944394 485186804 657266715 310517252 628504020 455583454 899635640 946919001 996329025 306213931 537870777 675525815 907623130 715401441 736278026 557340587 623834537 243910725 597310547 49537688 521976415 324487399 667111918 919462885 996100667 720245547 721731178 367497463 388750125 367439819 865663895 573411570 698774017 495929756 602986857 764827956 826146583 891669666 991641587 276382458 920835642 857446827 880433525 22952596 279545692 644100109 855804164 618272688 656845932 993878753 998090592 445166050 825536035 738422988 924514810 343839460 731194433 744229128 832466703 91673469 965372480 242724888 735085070 20847877 642276931 306577593 669054468 607632485 763669408 804373857 882600058 945944257 946929197 551183459 576974067 358169126 812908606 677843276 817211408 199351419 212353043 247078775 384408517 331639766 620296444 113372412 740453885 655234341 701168992 49764365 453654529 563644544 605096142 502390146 830635634 883336223 945924494 89253724 439863400 173611134 302275899 771137967 772436369 772694395 855305529 296743692 563138259 623814352 931111882 414206869 683648209 561179731 729639219 180275204 216500277 618369306 767336133 971677223 995344785 307337615 416295072 92567537 817364811 330679405 695622798 416563935 790276305 9002749 419754217 715765122 861586536 290435817 363499976 818149593 847957916 680937870 828287233 79302715 345322994 223786576 319039832 976973381 995457822 923179001 945360529 867053351 992284386 988662158 991627983 284408520 429254607 320394510 797440713 875150438 900836561 289766847 685329849 669797865 724253736 85102976 379710995 114548777 641569802 185783904 542126672 103718734 794961724 985828968 998694816 340826300 775779894 748415069 795780041 81412141 389201296 680805148 844201121 520956471 857392769 346127645 715381840 199035876 444375056 580258677 775458468 671590001 793782355 599010132 700265343 143910577 998167758 624860066 820921669 30571355 582588774 329667510 755036116 428900664 830057241 338240329 426691431 8811327 864720161 173709773 808229005 828524879 895870986 223210933 710117952 286951509 365892321 442232230 494338913 514809146 701944323 734247216 923319674 993112591 995604293 91711264 218213166 195991612 405116890 882629624 981252945 880125325 915633857 218021406 749312404 422517623 430364868 87287562 261396449 376151967 558542154 627428552 844581646 913790695 991919380 961947997 965738937 496831465 803202904 554928782 809287144 528764757 984334896 961840498 977633791 346306435 447497898 342323928 677239173 396840867 880102166 500091837 814715004 103713899 255845110 535124630 577633261 880025861 954976215 564515327 672064272 425569394 910870962 956118648 978878411 112782277 804413925 819165328 980018274 393227848 919136196 880411786 913469648 833426671 864917371 494595864 815825518 804129494 973494474 372854508 764433308 560708811 924363924 990159125 993189299 674007693 888745795 377889121 572832747 937331290 957752769 774668327 923031928 70108385 840648038 700764465 777471688 511370840 815084504 736306709 808012188 385029299 950051939 902259462 978692914 744661601 823579640 581525595 915150610 991852400 991880816 848573371 938612062 642633756 845457742 802302598 803292086 3328466 248951671 147687431 234277274 561160982 668372320 787841312 990766777 946540691 974992525 964991058 983245536 776950825 898254537 135128670 826011998 131255258 828918951 414585805 804828768 369987558 528838306 820412558 928949736 160640716 956148217 818699548 930097881 913816906 922883415 390185836 824722653 592018687 928017050 625765805 750288437 563744316 686668729 751217736 887778139 231184731 559644027 54238286 708316533 212383833 457619087 36488948 72362223 863298528 959605572 424889729 867497703 16340395 432879018 141937951 297679521 115402600 743689154 226070300 710551750 383233983 902012725 278567163 828191102 880310598 991114512 657977391 801503992 555209468 747385426 963175494 987951581 641169699 671696829 610934683 752293355 298287631 712853612 693321512 970439809 424999776 786047993 244805774 899174751 647131397 828041368 288491921 491754543 568985116 731995413 130637658 265751097 625095201 861145736 481568099 762389563 465134856 480300936 592166045 606089782 927790953 989708479 795104011 957277573 176224367 519258534 671957598 966775096 221386192 424506149 345223148 824859271 574994024 595776447 184986627 409420971 20214162 564678349 970863022 983656315 397424547 720182090 166122067 862706747 677234301 826783274 853866521 917832456 547116790 985901936 227747287 726641188 809697204 975942014 514523536 628088902 655668106 850981217 630483880 760836901 785294753 962658244 748223986 749781994 628864742 665511684 946841155 982058595 62184366 550735062 186675205 325462010 910191408 932378407 44397003 534063905 878978589 887295488 920870696 940565972 204987185 733946499 483146440 564843540 748869132 923345014 719301390 843556711 319808647 800248252 951148129 969202820 896311057 948809536 446225312 968088150 611889679 839324672 381828739 817505501 614097784 928732031 358490837 973928263 563831065 906148994 293701984 883671713 557037407 581044941 831852204 973078840 825485291 926819131 307579844 540505490 902572251 993181362 256645979 786972745 610853879 893164636 899919767 931039457 39474438 472747509 479173811 892768131 672056723 824866929 703566336 979283764 54774117 966572740 547740430 906879038 355087288 434369553 234862652 378611629 42233937 903974337 72648065 792127616 654665541 804752179 531250435 968623981 435747893 624178297 957964194 985642298 291746531 482039472 830393672 989034694 811074151 925723363 667620123 836719754 851799563 995581087 368205533 368871617 935224821 988394348 479747366 606629619 966913847 970106390 893068203 963717163 773530624 982661603 305600066 622533029 978620565 996306977 675117935 861358925 545997014 932509651 291204973 849885718 207373755 576832286 100618101 419137218 452617098 885162126 748686988 861125002 910134358 924035197 162631688 756432990 299068191 725028605 143689411 394869791 154854990 461951990 171737552 186197356 210997616 378645502 745631545 829907802 61766725 122263360 313502384 449164768 315736659 338180283 277199119 747559709 176897498 437899912 664975039 877666111 156865154 770231468 653023962 961646490 586351202 847429198 399655170 577555536 162243770 723055404 578020931 910511860 460910242 677470935 572277266 845196817 556777092 642864456 511167194 754001584 426358425 526758125 752081718 863934493 138898605 633442150 648264238 774605292 122606858 801629223 403817127 564538489 224923830 595867484 127234078 157452561 545465812 979931866 765448522 975270524 447391356 723121068 129947543 193817838 379909208 706277636 579594699 883587963 432403882 984248989 88824207 887695318 5980975 685154898 723183374 746318443 744519218 851720629 91059840 490989222 362389091 982968406 611664583 694960527 700308124 875209985 811955126 837555512 967044748 967669717 583052871 595055935 908681137 985326513 821459782 893790389 795113320 819542004 238279561 931514922 197162555 907033317 891738797 922190372 230420565 568242748 290102483 370874734 238412369 988446449 803407324 868126571 349927820 538595799 945636649 976982053 372031672 411958724 996344290 996595802 179504289 922393320 449827323 540916175 323405492 777756484 758331151 926740287 347013232 394178043 155155575 570104735 259885163 517180830 550236032 641273523 749947362 830490362 30271618 766732992 475834574 810424766 853781242 947909611 755904955 889423214 4449605 621140454 76138280 721421091 830870358 874777102 953515897 961984973 157349282 853082027 596903445 750437078 64293947 654446630 782916560 937733755 68793596 924457599 513785157 577345134 140963133 653965351 378118301 704368646 124688038 409622235 825221627 882036545 44102112 402410758 659602945 753328330 500374817 506106181 438766556 536971391 658119017 809492753 46286648 723907535 730955004 891886019 342017303 734806279 906102927 996044793 864283999 940734187 490517278 789873305 337403753 890603865 74120624 932459903 927232314 991368182 622211731 775163875 770660541 836829779 936560343 943930149 901495965 917629500 576029781 842467278 726372238 852755113 187126382 680172078 215651171 400675239 749159457 921826988 777359206 793198181 360496171 640090056 307597617 450229400 895722667 940011571 316985047 561600805 209540985 954104859 624329849 760580271 708461502 804964910 305295187 498136838 703155701 890306175 79465396 964805747 183475827 485979395 868061515 926553086 873971354 985065270 527071757 550172653 52563363 120150976 375801135 569504168 12073096 66933798 180490491 869697060 937649623 971557496 616076021 690069642 837676554 981312423 424915151 691571376 14432803 184452565 465013632 991200005 914351822 942122103 574477452 590532378 243090163 395018261 274203344 415060973 793978345 861394216 844990349 974304382 422248097 848786256 882174023 889439770 403201704 627528639 234703394 613395777 788484334 973534936 272395360 922976009 268801658 970208071 600647440 850257534 509054109 683553161 399553566 687078292 696716930 806551353 769520113 771116726 887863501 939258357 652746847 703424290 814490821 977791641 677253725 691446239 57750943 638249423 180675184 587817956 900402156 949989895 132123614 304842923 46442836 590232757 545968796 924986953 473391805 974335393 128562346 977938719 715805416 732930325 16254438 396684653 104519616 296492596 259381553 772504604 341960671 372284117 462674749 773982977 787619195 809973781 825630302 904459947 130291391 738053282 497631923 679282777 234784099 754924668 285340769 442405270 301518087 595724867 474671423 776960909 115081636 520651046 155777129 801637380 329672607 813724669 313311605 820295707 56930205 636718690 171888888 659608262 193410363 861755100 617355166 693765183 570755778 668287804 193058326 501286146 469248877 779908970 675407680 830457390 818337821 848285653 156784615 911403034 798190584 940002665 761097387 927067448 898614363 925052709 501658898 979396109 781883822 968112699 702605550 979756508 647682701 897826198 128954143 635243595 634742980 901244441 54382607 967622866 89362232 514463665 16661361 121535828 105248068 657795508 53397560 123563291 643290687 878779932 599946470 768735139 764915241 881920121 371733019 982931595 239335925 351352150 408033133 507654348 810971996 846949037 275450591 331896964 253632721 315643974 436038963 478491527 412835247 791464237 153005055 972867436 19706148 118872886 573539898 827010534 963751205 975630009 612030823 754347030 859940350 929094386 206548352 499424295 589558308 849866817 983415101 993881492 379772815 438141846 886633487 887126034 170756580 638527273 152508253 441813884 340482318 630341156 498253163 595513966 989103783 998862117 393162890 984770735 306780378 954933440 877181187 976805484 657374995 982284737 812064142 887420668 777209030 903182699 729412886 804745020 646500019 918236464 17745142 829207023 501654565 520191664 28766612 977034878 624225216 807731223 65886376 555895979 15729646 83928452 334173240 914465700 749834611 997378570 472386538 958903380 322168297 784514764 557814015 762336340 633252856 943991990 309879089 511063951 850260871 911123804 964876722 973632175 745222498 820120543 446638871 552174387 414228844 846226923 727023080 847955500 481220271 777220439 734631417 798951923 515013335 594975447 596455330 936547993 164816735 170078587 256020919 742469543 260211444 891019427 157782171 307722302 411663131 925263764 367480356 628610628 679275253 821134044 714652535 841567689 105266681 843911511 442569671 514253004 162217727 747709562 739640413 957857552 83865560 89849997 798776965 810571490 957296640 984322112 335723429 399239973 571149911 683873643 225069279 293287715 354123814 905258635 960151643 979942105 963631024 996779144 406877181 517105752 447106749 772131633 141285966 882995509 193981784 507574344 12663644 43420111 321409544 993063303 514021268 916351122 372779738 648925383 753414222 882601188 448705484 768504846 723659545 748972663 17225419 23234146 470842510 761185053 204619681 704956072 627852092 701664884 518362153 639242023 827660564 936435264 593681243 919615320 81731109 699694961 253960214 812734373 17425695 464041150 456368163 739906820 445333482 815146685 624590598 720530768 122378488 550707967 633375384 956217000 166944963 611602731 469529394 628408064 148275667 175701632 449176719 599937025 777713459 987758798 22734809 941523159 542145824 738821795 794667774 817710176 610381671 672821327 508797982 940183368 827312799 865496230 319516518 770139039 302053073 970047518 110881600 497896446 711369622 956393881 100601353 749786802 700368034 808715589 140584809 416971901 258248872 566155128 562714834 983314652 443341709 766359760 419342986 963123740 648772036 884531044 58571978 930747389 685709844 860139530 659867240 793537083 243295035 873871146 686103184 931543287 124724268 956726090 384094360 876656251 679000731 811131515 317062307 602617265 936834997 961917606 624556299 672422033 440560272 711447900 525257866 711049396 643013855 839068128 219036899 970933750 964384518 999412445 800365635 974678188 471889351 759220484 24314310 631480224 918842807 992359965 519865722 936971194 805306239 991479369 953990950 958152575 364636025 956019150 778454672 937040285 90043216 855855957 542296028 730713862 849732247 989444740 768099201 992575427 652444509 738673238 786570569 869862349 173865289 326855735 192809485 957500862 379644670 873859522 244342771 599206031 925054916 967407608 597803456 657985484 867006540 910656898 894140318 903764112 756789253 801167133 474464958 657828943 220803996 960121340 194231258 717954149 991261149 999418056 288942926 761300846 620914500 964696425 346879461 827056515 47448834 978239933 162715372 698400145 440201571 639589272 307804685 997735433 971456138 980800822 889088753 992263591 490946286 867393762 669343489 816668945 813672151 833147763 539212890 678458100 610823528 986995766 87333123 752754824 776699083 832687098 912581610 980270108 882420156 887957154 586019664 681942319 787671486 944552813 935820230 977446197 912931348 922372353 125355563 257985657 731067430 997417647 498453674 754532628 379396938 855681943 850802284 928717430 983885516 991064111 912490898 985032081 497731801 800981179 27036976 384306830 447719778 712399050 836086807 890054370 904667623 910093090 28162261 962332556 819515609 984740711 907985584 998797608 935309441 935486370 834843139 885093687 206135000 725422492 979278257 994513133 959002577 976914861 872309894 941817064 503875926 711783560 263085188 601121789 96195382 620419811 878672654 922719511 571776752 597550787 508515752 796678815 383432114 490586247 205328385 663457285 368623269 492283156 946130194 952601570 971745448 989334319 358734715 393622939 678156679 820101527 52136737 271372825 875203393 963704175 424514113 602785973 951790094 994322895 680291009 867210441 166321494 651656853 607156515 887985928 989982523 999360922 83035073 560478218 261876740 463409957 345162037 464417050 126736603 186665010 483169585 950175922 876982039 908617392 772569238 789223680 59126041 297838928 280574350 893953450 319320005 418426714 58506749 403729665 812086744 948697601 536317658 896420608 871441071 885499165 302798485 698547494 731047663 951357336 3383299 431553262 8126909 844880357 257497148 482852010 342591260 389041620 213654221 978438166 334412474 716042582 165859392 918188241 375097177 537053141 48147692 813676592 135980219 862706927 27259059 827676870 172961459 584370571 481132312 804269109 747520570 948466426 557836255 964081905 969465123 977024798 403876146 595442003 883979176 903977353 518647669 722312562 925695054 976663328 25853300 845700203 772637987 949031094 128069457 222000800 311329340 593542183 743041223 816127140 703876714 770317398 19512228 865111434 726367650 783540601 519916046 899542952 501931670 549546085 569639651 895394056 483181889 640518603 862851938 916310576 84131339 391879166 128642385 593938864 358204113 933486957 67018435 458160416 860046810 946954331 940071559 979523831 207759921 644678378 939167015 989126672 227699586 258943498 259265218 822060104 284773341 923610745 998150108 998226022 19577306 649468778 548364962 736688455 260838802 566018995 976218308 978926668 86392422 169396312 93631331 110795434 488197414 964623695 483069671 886758178 833748092 861599640 598635274 966069813 111200732 722605314 465496570 606686859 173510504 576474217 348757849 738859858 274263480 688282460 859326428 987475524 771922813 901225488 893564520 911711951 661153957 688702998 685539238 977661622 308188567 736386584 132121865 296005051 385342663 752204813 344329759 510394888 651987992 681990738 377023983 710840428 201690871 698854076 934230044 960058090 904256857 961092126 875213674 954486922 530473548 906266097 588139186 794131165 334957455 360101494 106948546 701618812 407003256 934369841 517322799 635545194 525338852 597580171 474303674 616211265 888317194 915148196 790364401 881203967 561663206 709437306 374817104 496937164 497800841 705227607 785457329 982440114 696951613 766795469 588226749 777464068 805243632 905455477 910829085 992346264 684690181 719441320 892308111 919452895 152501131 693215617 387799840 595719200 127566869 685214281 641401008 971412789 257366552 723090466 360168380 992645849 522397759 947002438 327376812 876445732 736697374 943245985 866964278 929342204 648956897 748302540 812118788 939826700 696978168 895130143 773726813 853347880 547527411 660398755 826595241 849679381 929796961 940263844 288777620 337112431 577768486 930334696 373297401 586421476 1183147 355137508 613399724 944505930 103027516 607611691 141706507 684246758 63744194 780172115 94540609 891617492 301591913 664955385 7750666 509283143 770598526 959346454 812068916 999499072 732622069 768387557 75656122 217273977 51883616 607895093 112887203 428071435 18047649 309043951 200332374 992386098 249119327 928837311 355571322 902614224 157965968 537780116 889025844 931217264 85266305 976183012 634302032 780873979 127498383 562963347 405210625 974155590 797095124 881959474 42166052 237450873 207507900 368274199 225463713 652243604 432085135 845369631 121125311 608141395 707490580 815650642 33706287 655760699 98604257 524331347 808501420 862650117 263076777 505674888 355225409 646827838 497930501 565335685 955131065 965609019 685448347 828623929 812126984 894584941 604724267 997940909 15868525 380700051 872673360 913247561 486280006 651875742 369543274 514764171 448365650 490812790 622739244 834769539 640415039 991463575 335921687 837617696 942884220 991923746 817366950 819277134 44294678 166615219 621204554 858327245 293868196 454812104 117056713 783748669 236600725 915709021 647274397 789284098 807968202 946184216 796549064 963449348 255635522 854023059 531271351 539844544 39822173 424998558 331082970 950583615 341067608 824557465 736801425 826185476 724099850 952393256 789107721 893064681 908734326 945688392 933934313 982156730 19082981 316173938 378405447 884759325 654716262 814417779 603771776 662626261 649748999 897714319 523829964 621065695 826443368 992057266 908782758 951020818 555117750 987535202 221734877 593439085 126153876 493791704 644130663 808148229 957162078 981031979 848902546 996747373 795830028 985123548 683791954 685846411 283382737 643566291 314646967 754928185 322915575 349815553 318397865 680980005 308432036 899942077 948113540 990852869 629155182 860934847 685709684 718345624 931494819 986938716 32623734 40472148 278269216 434063924 69211949 831236098 418603373 424302133 205094862 607335141 23011011 708799151 840058087 842338729 732221476 907033151 328498715 620249507 342988969 396520862 12509088 268649946 536046717 699187205 671670219 899541145 494793735 678036379 13294437 606495659 442569918 461377091 825341875 885042343 721554185 806095682 459727959 695073546 311346727 780514122 292122985 305337109 583224277 776990485 258181796 487817989 92853601 344393609 265989589 850142458 228963335 421258940 825398001 914948658 122608450 334383717 434517242 789045568 177442017 393582268 729651536 813959769 194505098 682178876 733426982 781799562 599208511 759416594 954224288 993692112 102825076 518025350 58374913 391457946 554335133 696704737 297456610 585222499 893919893 996137741 916480375 968506193 476842353 997430948 622831138 996802474 316178876 868322953 557949505 909468731 439990534 600171612 408719248 657433443 320206564 879056526 571745605 908245312 941500650 980535018 914011535 916899991 658178461 765423886 471854134 506240660 284862948 807162292 327995239 467796883 716546002 741042993 318301979 842973505 965354557 998820839 296971443 588588111 922133179 999578376 542199914 961285008 281862195 700973024 503072438 692223375 758225640 810487472 605198209 904837774 673483801 817247143 152503789 221571403 484230003 785347853 196297457 465489338 676410688 991530160 375573194 962945635 397968669 898612534 767377697 894719376 318050613 897614040 919089372 977116182 553840524 680536142 615892077 987859314 535740544 947704173 917091819 981642842 888238025 920584298 926399100 987094951 953512859 963682406 649852491 700823628 343449181 878732834 805259173 891167837 582542398 642344780 356550861 879593150 685867536 765173110 260854009 409316905 411898096 793911047 114625411 236969832 20491879 911278915 550546954 908932611 85740157 933156307 377013142 882973142 706702837 790782017 821133802 835483867 192481846 735939949 555491370 780870585 637240849 972817925 62184875 745828139 737509261 871516502 616481724 760687928 572563077 669222641 546670111 968130031 347124998 640532110 179848891 595505419 224485141 507316737 387987560 766103618 750413884 830049035 831507388 931754963 226344145 707209404 147118267 154212132 365142699 688024385 360269524 367182853 707243862 965887451 666583641 968188875 917009717 959621521 284276537 352929734 947137369 991682215 668042354 853233041 882357499 895268043 230622557 429511663 792042225 884204801 982385930 987904883 650716934 984358060 450116876 681475034 279529473 364466125 753113653 755064816 737902733 890301957 143522027 280632314 157032778 203644273 312822131 944593615 860360719 872776865 237178069 964374812 650370213 890608507 206626648 429610181 391378411 586008832 30266914 79019645 725149503 862111212 778555791 884909533 527356426 780602919 788750683 811734682 803528567 869280872 127990099 394462477 982853061 997346925 814340157 950913150 865848788 994838565 229547700 890758464 283454827 751965896 484214394 873642852 961113651 991395602 558980014 857489155 3948754 857660005 813236351 854218028 699731908 704325115 251753070 860656331 605021684 973934975 967232256 985304076 620109966 833760301 868115442 939083476 493890188 557610088 826620326 899727808 310651378 862611576 945526849 998965391 815653246 821648742 644220267 980625637 42051326 274115369 831568043 913071998 74223692 461152374 545702846 768596038 692121278 886509345 619896640 623415438 559021274 972151297 584620034 772841570 805784002 897415891 452423730 974071644 137293300 638439725 353418268 776133633 618369288 988364635 918182039 960690462 648163009 797014978 297809219 444179963 270577975 571145244 635068776 789742154 108687620 575811917 280403788 997038080 704937290 956800222 2796225 731374167 711713318 715143809 347252045 527877605 613893251 952771181 190066991 269820007 62848363 560537506 665587657 806613619 33630484 43113831 612732698 934321710 135037235 999874041 587311453 955973842 491087473 525691019 860283968 871917358 310300702 311378272 823566673 878177148 568730911 980868605 880231121 954740171 551477338 909406506 670525339 959572097 346929202 629201747 287127543 547676324 599452447 822964240 315263480 936131791 170959947 518521309 505159743 842406391 271452027 962758457 699952287 997974792 701906984 752075064 27932796 153143464 168175946 844641515 465310996 882536295 14809358 281248323 109537897 813568533 132080422 230861048 782752248 933149157 838661730 981468563 552348556 673446025 369387821 763389171 973045528 997370059 864993138 934585244 515953821 686082382 293572195 753001766 31188794 237329980 301882696 519148552 629164721 668033647 986126440 997781195 290629689 307346538 157610094 424171458 598184410 898085698 928173568 954743795 954623230 999199317 859496041 966139715 459858121 806895901 628496846 939994270 806687181 932501459 331594083 976638900 197717135 245270199 673381739 886979343 777720094 860570171 24621058 607644372 814075340 935142996 890854987 907538560 365180828 889616108 679779480 950812156 607846326 883384464 787189082 829120184 487038342 989521441 722035170 955126621 95826458 933281636 687948314 787785608 984428662 985933519 440739646 679703574 569064140 667316803 705171060 788298444 688745081 822543863 269634702 511434874 630567116 820086458 549770379 564244109 722172339 785953486 448092516 965323821 684298254 970794836 457381155 484988972 696000027 712065490 939337667 962937820 776829996 983155565 527207705 644946058 686317386 955044393 813225326 908143152 47801054 460237588 669420935 682911577 598325746 994657716 843767492 991541767 575973827 948383156 367440570 790940433 926322488 999509130 193399491 769206588 334310545 538146046 347218348 983552626 789481676 795261664 804640326 818156073 901462215 922602190 535991611 903709359 788809368 897482871 769230178 952635561 197768984 627939178 499110070 890001057 560774632 676463296 918888820 946712118 673142583 792367430 677897328 766157054 633458857 695053204 103908213 326918264 26676280 443100833 816949636 892185951 18400868 220541674 155397296 867061378 616953141 863838382 641814322 959850006 28377357 237392008 409318016 936282643 55949693 505582856 405603576 490855640 569635611 608940068 67419139 592394670 203918744 555010807 134247498 917731982 292099752 829331248 117956250 148775831 128595841 285644640 175821436 946496387 336288952 444199680 40487103 444969577 72333520 108380937 110424227 497978545 850867819 941441775 974990750 993156699 655214274 780598449 699234798 883577925 437416313 496622009 365602043 440088996 783377781 947031480 737578159 932135628 450920009 922877634 413160332 939795634 866022148 995873269 653966421 871690867 923946706 966023998 673922849 930772090 926926192 956789879 207553388 635553811 777467899 927800067 434110927 753712231 492742749 655201934 626747921 983426701 604399652 655041101 24405890 369711914 139737900 227958535 66059795 963577070 122499175 214446521 380358765 479418870 214857850 449691473 736649090 930340169 214818145 906005612 879254238 967408983 599573490 644303951 368654706 534413664 461128982 519151343 291406674 349734449 966596700 984089476 651495623 705119683 201662022 947395488 441102024 842230313 712817407 859335610 382417632 566694436 376903407 844055640 32703444 64067697 237863918 794353556 125646601 303853118 799299053 908736018 884038316 995671930 315741581 671872863 594332185 688674463 799411734 957943574 787792228 804429613 746632625 921998677 433704688 657770334 121256537 447706763 473899475 827724838 347658281 586306903 410362276 559111301 574187223 769766616 15160869 927190574 109055947 151154542 701897614 833503094 199668326 794322377 973823970 995934131 894984855 947951295 658805598 977632035 640142149 923435128 812761510 830246036 447795098 655157713 450841895 825976617 432714384 827949513 385338785 960082727 90071307 669599203 117785528 765216093 877522915 982766643 523853120 726644698 509821758 627317123 152228115 360960010 237930866 522948938 303327853 697610501 614836851 890264839 751018312 926234168 931153070 940607179 35958917 38660234 529151455 656528115 10097537 643653328 967553565 991349271 527500452 900368735 866977055 895982760 721013048 850311286 413269670 626859498 630793594 645715310 486602960 822642676 438633469 814990709 430131079 811288612 274306829 581185197 302168187 569100222 1044904 598130757 392085852 718637482 746085322 853267251 949051750 975868440 695530456 746639744 819611249 831348303 2901137 648530635 587145779 921152823 162289971 381386399 456634809 799281381 843879910 980974478 438339088 694689821 824778607 892997722 241343304 989496427 99654919 844590400 488277071 786041007 821729040 878032784 58400134 350491896 652449032 874073143 795298215 916596121 119647622 124028449 315742659 790189750 914736358 949087628 482373145 939478363 318709691 608336884 44611021 411658275 20955337 158871324 158060660 858872166 131683182 232791715 375967024 800864036 631879280 883995379 501749916 739083762 152283980 676387969 414865097 751693227 570875305 919600652 660260489 901718246 168074352 438873693 822250877 918270908 497830100 952630801 812676271 955553940 590961994 649320589 969677719 997102437 955395014 999290704 264274470 609010875 21975699 332777437 882870337 910385654 223222174 463361397 102923531 871347042 371236882 429073878 765428402 790031637 198194039 817692706 513225117 812597474 805095103 986846302 851181769 930353570 235186295 568537139 628367167 783209873 605241005 811625153 56426476 639656383 411283044 657250897 182536429 685421503 733102529 938894407 30457626 538180489 752361333 988083552 817721729 929370635 306579151 751048492 114721316 355955087 936396205 972949564 184524944 480484971 769198712 819928699 953849497 987159458 894385614 896883352 617701556 820745836 906298768 970265411 416469755 820435583 8000827 921858059 976563210 989221475 639144885 724329276 96428351 99117582 644920011 802354054 911715124 912397260 705770718 990019925 481231061 557819725 86444991 977247090 692607367 983851061 947904457 961182915 623453396 679368764 449904151 586560296 317869484 386072429 943069478 997628604 530162223 957154245 838610905 936309928 726393342 746613023 738061980 838227311 36347948 268785704 448591042 815882848 111143965 542610086 902438685 928109046 574962361 686251369 92597876 600223426 545765327 691145967 162327514 997454540 683618424 860364887 476487688 731191503 924596795 986313070 401160060 436141889 446475107 928219217 70631974 627485351 699067299 910937346 382161151 503954935 404793904 596295095 151938541 932497073 882117949 977122141 237882667 556549584 896104042 963988360 972685936 994804800 213861997 559526021 371704648 962853827 47761276 953157213 588781995 822427518 936947748 990051671 737233042 889356910 466215743 912677732 392388587 392474207 309974647 974714327 392901481 793231906 834163547 904669307 577234510 941095056 955726010 979459981 123364375 509638299 456532527 647787217 527148715 859249577 899087588 903378877 426969783 966301059 643585604 962715002 155500023 681588914 649730727 884328369 926079737 949216240 188521475 340298667 337729513 513433919 279748861 414338535 641904480 891602668 157395663 220242600 68258002 996587302 382944564 831649043 591142864 608130793 244087746 334831341 10644856 593885378 100843935 881680578 498553850 857328594 141808767 683341226 829395089 907268565 900505164 936228125 296552947 441429898 256016906 865549732 792014041 800916519 731673755 878894077 793512589 972018090 488743123 580261202 95281310 303370973 640978157 877126272 576493003 784783785 465042640 911232120 648196910 705028803 607440390 691072262 25393429 554275608 520570961 793696946 63398970 556245174 622078562 680949313 698182763 904289921 473160357 490529106 549345799 844244840 233512645 499198027 247069653 613212537 854732900 889378141 249179202 486835961 496808881 621136659 461720958 471576088 276060467 754465084 923592244 926857874 819050386 902280412 925124499 952761602 326152167 815969133 606543515 937319591 442022066 514145855 988747972 997395155 887598573 904427301 865401695 930993541 583829545 683216929 966822337 984729041 638044232 807005916 672986101 794281821 924293721 945485180 678013678 775486871 749341715 797566785 142197514 662745366 398305832 461937092 580827077 865689013 182847631 378948745 276458570 991414129 354147475 729102275 743325236 876023302 600278263 956622419 349571005 828280408 979316308 996045126 98698283 374897628 943967525 991920549 779917199 806944346 585848978 823124749 580720528 654186294 447185079 481835450 310119279 851060471 896938276 971193805 505749879 619572142 456404656 930298015 492199365 669778986 6738857 370825770 409165427 581076498 748982799 778862725 392395545 912795018 231054149 511423095 474273637 864143413 200501535 252743386 799359266 950946303 261174608 962692425 934305571 941512230 801187276 813218797 846592637 917861237 966707583 978306982 905925347 932929375 992262653 996920093 58130438 752250272 515398593 608177303 416045821 589285816 540391244 948054064 670038128 728140575 507272821 686511176 668694887 753854270 564631351 695232935 411214068 740167198 498953273 812441377 271886224 502058732 112240112 247808197 579371125 637987137 626685139 771480363 956824600 965485213 686778207 835055375 609230201 762656284 266855993 838703398 143701016 264177414 209616224 616940276 853966680 877808464 474319122 499442748 647846743 818516427 81044403 89182681 920436383 975338371 854604063 998981048 94840114 797527491 760296951 862409225 270827261 670314981 225118213 366064423 836217686 952186798 879546408 986677500 405048270 768636127 552624558 651382502 650975695 732242875 173832687 463992435 656306958 662116544 633935278 996391394 288758849 899348103 65673350 323149470 934056825 995490370 986734584 998105978 286802512 578643766 270132859 653786898 242089137 663798452 645252036 773934132 520805020 797910456 138062657 404226928 664767238 916476334 727731760 742450810 49221486 798790014 697438075 907752498 975853325 997635323 571239682 977629586 861063568 925309588 443640273 552198206 720787576 736209645 496916605 706005469 862522475 917796585 288677154 390995082 855024093 934500005 553540692 880605588 454926440 898749909 521576822 697230768 181118687 543744139 823537284 836939647 255953744 538842769 808934302 855667477 659810459 759378549 757696695 883055345 308878219 559512782 821976639 862794532 213208790 837575092 969389357 974197233 147909145 795939481 9864374 132802186 277576066 869437484 313346110 629832803 599351196 851783068 952418145 982825591 45040981 526578696 215508106 911952210 473969305 993259290 397901536 637528184 954296705 975482936 43111632 200585630 357180696 512483621 310225940 810173221 201003826 780336202 243612471 952441174 611677245 689511421 469818988 491463937 531761718 715913095 847207747 853948652 68332071 863796647 963135171 998887290 521013598 779143225 534293342 998507948 48872898 278984317 589053386 875705267 952949620 998956471 728966784 946422679 864777094 893628592 761506728 965966221 180352755 297662854 697486189 748644471 945727135 958714602 252008222 574179875 716069738 898625216 495100077 823865073 26418450 703100305 471415030 760582309 932171849 960063567 741366365 950199359 998569526 999519185 526011739 963245611 152922540 587489804 36435023 537988476 466450800 855703170 536452624 549600206 595893159 597555890 518361589 674024091 98574442 429584310 90813063 986093128 898300380 929081467 231425664 995967747 722054015 722820111 322530074 609654115 445166992 896817233 478996763 861060773 926665907 963465570 487700527 566990832 382974210 712273043 741121675 802915574 568518270 799084567 262895761 854847754 749042374 792002074 206970920 351436154 776978442 981395253 251611036 736187939 505590653 883046957 18319825 432767562 128177830 791346107 84183192 511461712 755774115 969985020 60992195 67713177 414609044 438278741 782934452 820579706 20047031 455521709 465315611 803810746 176054369 498648496 914612986 972427966 661624377 696962834 747027279 792859629 1744390 863740998 473716265 664932961 690161548 820646157 180348328 877248967 628368912 692731579 304625666 657135044 126947222 282116445 661780038 871941348 852792161 865307287 388118452 504105306 54707498 799880863 856380909 901075110 992574275 997538640 696595516 951472711 937136721 941729029 373613783 476340907 547290325 669854493 129955407 240687436 615669239 964638944 266027072 738042177 86244039 513235080 52163704 631469452 108828737 694842859 180724714 478008377 317228653 875487838 475769296 995353018 134050376 789532895 753451225 958744796 172175401 779187033 561080831 773782756 171120009 640909733 153427200 714725830 906361481 980824244 226889542 818309910 789262128 875542191 572348239 617340857 210128779 231106663 204554959 231281407 44669979 879995386 237934974 774949266 669280894 673749898 75975721 624425064 905919562 989815313 426318366 745876738 149683144 945303213 867642199 899556183 278036098 772179246 153135628 767906129 610651883 757733174 122082717 814879037 701713422 776063468 610365280 801341433 971885367 988582256 25415685 188837343 504024213 539479983 130332522 841244733 300817481 703794750 526849305 957808892 518235561 980854395 895903566 908987965 203044271 825827873 741953415 924178537 96835109 772874290 136673713 208072627 79669316 953206265 831592844 917423433 145397133 661427912 781721318 872612011 721124515 746000757 341099069 414351073 244864295 899929890 985765793 996669310 921619951 930223865 592313542 792981476 986174812 987323305 806262779 896381628 973537998 982564623 935615144 997271476 485822314 721979934 101888106 190121939 546101166 749721427 48060154 486906361 92106351 437999994 580163801 869986279 700349666 702370063 669680152 909127846 863092745 932018435 400786731 596701175 578535420 705741896 981377812 989336646 487596151 906231332 540388893 894119367 289000445 588926476 364728131 743741953 290687906 630633287 778228226 997600675 566381680 705748526 320583148 902035944 719126842 890054185 447359425 636663397 102816484 966505605 958444079 973741772 810228872 925694283 143221564 658063625 623337172 713774424 317979737 863299898 215905392 892177385 409455581 993667624 302676929 462761326 132910744 921218606 876436717 884543414 747732774 884435959 624270488 834566734 988613606 999597530 22530421 666894343 839483815 863304127 429805324 457017298 532505715 671683743 771048327 780556843 535031209 728651746 533163963 919556165 545541517 922963149 132038678 336301345 972951416 987117075 572332987 703353434 584082699 929791400 264813344 967883904 782154693 863866589 537715523 822211333 229189841 261441402 750802313 952802977 845251030 985837990 144727302 316391576 184334105 848600782 459663306 706616769 243064943 506496886 342767510 857099438 807151934 946736727 811544468 830288943 20433720 698993349 539623647 766528731 461567386 551241231 273119962 720344515 230184041 678287836 2290536 224152086 133862710 479849070 476425651 959475691 267340517 376827009 917462401 949928546 823516884 872670125 497867614 631644421 730964379 963449564 981744806 992008370 993425157 998861839 842413044 939807396 212225208 702311274 766161589 782952142 815459878 995352119 336919015 803178684 254858137 710444477 791949642 853626235 353082300 432164045 692511385 873573655 204453956 762949683 256755779 636997749 770165140 771294420 792034548 917560912 322352553 623256680 325389281 393068277 939871336 996107831 465609529 941664096 417785082 768354775 526481122 994881458 823535065 845448018 315143097 445721547 744889189 936883998 742817591 810008692 248001350 896291986 205151850 776048669 710417657 802214371 343102921 670777301 873984388 879094894 387363280 786070843 487361221 803783472 299228887 559478297 566144819 936933334 328783023 399321816 288344752 819539434 786238063 863961416 157052139 319454245 871122158 884732419 516451092 870007023 3619942 156706188 237329805 741863253 860094203 948311769 562761764 674561741 562506601 717316709 31395760 503984672 881932783 922383120 329201814 551719836 164734816 832424893 638601945 763821969 308119304 951841220 621144079 813621176 183014382 639050135 787447509 984664339 614106317 872872734 107906922 687963493 824878908 844694363 606668274 747170560 52823997 128997998 719404005 834579808 242613303 664977384 6550884 533175179 872172369 962938893 429332140 982076995 183940027 550599069 203871774 449058376 799679121 995175962 523767186 822994662 269505926 726526940 325673138 635138474 258401476 562466817 753605896 764726229 575112627 655125973 234483546 899248659 974267782 989696391 541029559 979464612 933767172 991447413 946035082 946093587 949392493 966233691 140007517 906318677 197243075 979566578 374275625 702136573 822859739 903115359 510331719 655633790 351118628 959644532 660543725 909990286 188877378 359028409 746747863 901829615 579152742 867950146 827111941 957034776 650593745 861133267 507597480 709160982 477867199 502894823 641562676 669035938 547927611 552337574 998410982 999069435 441230385 987746873 65971960 340231401 656394656 955236427 922071728 988095914 916947486 928634265 922299632 967591019 501329813 685801493 300576045 903270778 256987952 275833919 918608196 948129050 124307328 595670233 275899872 844980149 659152130 935622255 499472214 503860645 976887790 996530878 384746013 955979270 992097964 999464682 380849655 668559027 660409976 718797745 423075566 763168309 780591153 847509246 377778442 828352675 823020016 945864324 392824266 565385510 643324903 836201242 234694652 649592426 735017001 760813210 783853859 973612223 706567774 873771977 704059197 788939175 972789168 997320008 48141337 277019723 347780275 530912114 647291040 770506575 607075825 704274977 618993434 695718775 559035591 796693275 245477679 367134993 702355065 731797506 573454077 860535148 201821970 747904407 108423135 388915149 827268056 857900804 770448862 797108004 844471391 850356399 789366869 924749445 44924575 899162281 46220838 749815142 148585127 597815667 272150776 444360132 198466941 918290621 486790207 762813353 200988324 546254231 491322752 966741778 102112039 366333930 342199345 967699294 590785971 639790181 877964385 946583596 118584215 240062364 433202188 967691425 454050715 806240054 418345389 473459286 990568876 995377543 467391786 829340390 213310842 920341827 338072619 990578075 562464719 878366203 371443704 621052129 945455455 959323838 798274726 963242392 567573676 879240836 903085050 926212510 703570757 968850734 82544036 758769147 813079972 858266295 346624247 364602588 163003237 709844138 168369239 617147602 632242224 703775989 854424977 921991947 624016743 993356081 115217958 844935711 178410886 543352126 419996343 706583910 841286511 985973491 709855326 925503275 220939424 420360916 386085123 928668110 860233095 891112046 928958398 962595991 735440049 881196910 405042689 648360349 730675070 877839150 91722302 599748110 8401808 983770233 318327819 624519496 215210967 478099670 347219137 610365013 262547763 897957088 746434086 934928528 728736491 805830779 36428928 904486324 870328067 893949189 11026853 428528983 149818531 651267344 258147230 933162663 365033161 737196287 806105592 823522922 122892769 163741365 663425119 887415845 947975950 954396915 640351586 839186063 999282766 999304525 552555511 707836889 206150414 587178222 853381946 892115495 126261534 528363040 695482261 906787234 368648543 745069325 114450322 330334916 249998156 784056604 241296690 609730842 584610897 629579380 530222435 857736048 328952323 837066685 98352935 929471613 100488929 441689006 343683790 968385121 36180171 669375826 160737843 882811590 461371607 619723250 320984183 508529227 908807416 921620468 850033607 971786048 15653405 532461696 43193712 945918940 593049483 939013893 705742044 868909660 498143372 585780126 70352397 182438130 413603034 744924816 713059621 991620248 12404378 437392391 88377926 757498957 948156503 974917291 291423745 795499235 962335955 962625807 456749553 966594586 83603422 520428320 427393643 766051069 90375526 997784809 678951148 822932859 647991723 846991514 733836994 860694799 863348508 946492970 286557343 384485357 856441633 880836431 233706817 897518740 229762911 229932396 298583973 351952869 830887655 951787287 919286458 969701937 393959953 931318007 620567793 700809273 233983961 315913056 632804268 820258514 246391096 911427656 46916764 679110282 492863400 563317817 992083035 996711957 625916430 878412909 130776769 301048151 846732993 932256730 640436189 766651496 289846946 683863741 998639538 999236855 430160078 892910914 816195903 921880611 26578589 847089852 322587002 522429351 754933003 966926677 325309163 910977908 848214508 940473732 974492696 995379682 835314165 844921858 431421513 809482981 600542519 813620758 134504044 384593006 889608265 917434947 450360248 618895487 631330366 853804681 712977512 773939462 597074367 795263170 962855848 974590547 47236165 371076313 509549832 661277091 68571090 993479934 425615022 583821012 493157498 559770925 580942292 781142379 33021771 225600560 938866931 940462536 398432972 967518376 688834979 836077817 981430314 983693071 929417422 935029876 54393572 553603428 997451954 998799489 397982859 649196168 682523716 812236416 241342564 480556703 541500933 812655705 815865369 872577044 512987700 976058364 630757803 862961355 998189274 999780849 746798254 766582493 240054008 438787403 309170322 980328478 809233123 980908826 67048194 304943544 737604287 813534042 477507982 544727295 604826303 697386278 692878958 732058981 871777432 975170050 498402534 740436900 432685845 694495118 809998617 934248664 716498280 969678408 161222490 196374113 155607885 802598221 830821513 857473339 206774096 301814382 756697558 866609775 235152290 420633820 325138893 561832236 471250807 695691662 598480437 923479672 118648390 248840540 864981280 924668911 630949805 687074707 873950875 906334197 382169086 428514182 589037888 908924342 67235715 716895312 106807123 776935888 979270143 982971163 999933386 999998771 481827541 708927073 734564415 923846383 614495898 676115853 913547073 938500405 142953281 876165057 239134676 311510486 97104964 843706981 309892093 607682088 570358232 928151152 871605161 991756395 556280078 556434886 453499582 746739126 701612175 847365318 455896165 572472281 539550646 966361075 110843573 717236774 376644622 601547702 58950515 533351118 82382771 585334019 128900394 559316987 557800347 973761366 37395063 821508371 193410955 680554333 10803340 64444821 116782095 134436876 83688782 353520172 494588789 677175092 807680331 838727124 773472383 932269415 522167785 594280799 129494965 884039306 826127883 905783400 96856390 826896295 647090387 740563539 95422528 149911313 138674560 252643197 347191527 850064519 779210009 967166417 408462647 759964678 557964153 924540031 333686277 936155350 187866650 720407978 550601266 768509341 541333778 682802268 831811297 956160490 480906600 753046713 272408880 819276125 387544547 713371576 117596408 832933759 42762747 889380603 542817016 918788686 724582225 892750924 286832444 785990995 218578035 652444524 708117415 835456372 395440129 572189793 879291772 912115947 20269296 208223842 217097172 279767524 541332731 646734690 101447139 335919296 101937804 553152658 118181113 406933230 188845885 778744942 480031765 524137364 261478881 624235352 284917905 628472674 448545628 743100914 208869290 616087544 517238572 971226724 9531687 297403383 810370411 931170963 928642470 957186440 856752696 868873326 594078850 938128035 507199008 705157992 532079768 670703749 616506250 671635586 38161345 554195583 531602288 930853530 405169507 527763405 418653596 734922449 47382162 929458014 831742058 840173668 952609261 966745713 907903363 977015178 521643953 795133080 690672528 838697511 260771632 560552753 978292425 982219039 250135365 873637610 830512193 851720673 288486750 985090181 944131270 972813585 196374527 673039901 914819175 987469893 611589195 873346175 759739224 829161157 680493003 715024143 685947161 849820046 122239484 733155005 839769259 849335106 144076933 853253421 98651084 111501323 109517830 668542788 953904097 979018280 26525845 271493032 207748537 475668321 136725450 655185978 874092565 974735580 402181716 818109516 270326707 376156403 890103355 972383350 53631544 659717746 235578414 853892831 591616803 621220285 251466959 333292267 835331621 873297738 333594593 557295993 187312312 581072643 443041997 844701411 949103868 993548222 619967574 938423602 482434297 856895946 353666488 610306317 724551756 936943104 457713287 601002380 182936289 622416082 541358234 958160462 822070230 986672259 316342115 995707577 73372994 244131483 683882237 692968402 426300489 602382734 726768735 967010638 676463613 723127301 996713158 998057534 656513232 920790044 838152506 949722000 353424609 729702224 535532806 724881273 100711870 436559365 143621061 698588334 248105470 547411850 928466055 962729685 342264105 493715960 46381183 339126579 299937798 962767010 271055547 433364723 483127196 643520793 943398143 991555723 715851621 894237549 24260165 777847942 387771220 389798995 360817057 498489838 815731537 914121529 843539864 961362387 712869824 948776171 497436452 686299940 431327869 960693888 38265198 441657843 527550790 959047384 204826645 221415357 85522394 775424729 411315983 615000657 743438686 817145807 519825933 937582122 464683226 984817640 514852984 752061238 269657831 697868358 130317541 749702549 880192382 950348446 886443973 907185239 152092092 940014068 656998854 700704536 864857346 975908253 187143782 727254676 409943627 989942935 605623340 990871643 795493171 813265256 133669838 448088236 181523503 396865473 820121016 917034964 480765701 682833838 459501475 800553780 105143678 706730115 222204619 689310781 414970617 813930761 209861835 698404773 808439744 880155388 291724557 307059919 344457392 919045965 184374209 268896564 471615530 830024823 384920505 975137554 571448708 610556713 230562444 540914030 424248463 691232436 554849540 732202093 331977225 467836667 252198842 469826585 631482014 890646738 345430098 912240390 176345199 416482946 431067260 639991758 764913653 893223893 335124760 610393412 499984880 991207637 516745065 670587352 571849206 627439408 632479377 802007853 990846422 995136200 451968236 462700741 14844441 577808853 787827943 958428888 118775195 854541764 207689490 817376379 169871441 963073960 396028413 414186044 586215302 833410557 479736504 543012315 695229737 928936481 519613924 599923551 851440251 863705377 122735379 809252236 922118817 995019687 815014885 866662448 112374896 635944944 289369864 673763103 912731854 963544854 826009117 967112834 886314821 893799578 708095758 902946510 580240539 847238520 711363035 853344157 892928823 925972618 630439924 651960272 563972610 748343070 447521464 585134974 576665005 874122869 279508933 432618305 540443878 947279939 138094020 408522780 422824889 642872986 482502299 764729411 616763794 656629316 906103072 910835230 757421657 873597302 182508517 916932329 755049499 992001331 203852359 844617884 720369448 877509391 367390666 820720917 539639816 998901364 85441582 577706321 233421863 682797385 849994579 933443481 464987955 949527014 659973732 935591823 523265896 899461244 973037412 993697195 443611921 748678174 75834670 445832017 803333435 826005368 93766454 844495584 200845049 954369623 919313510 942479590 170150486 470815741 780423537 809655039 171174594 926562278 810479285 839661147 197323159 258799603 293853649 903743356 363991971 749207971 661201879 922328272 74139526 408111210 276121942 486167072 869809137 896283657 226749098 273376704 518350642 595891934 745555201 942444411 954493893 956578903 583535203 678070222 659292747 722930119 360889099 795188514 898869368 937453241 734705951 785961066 238740439 880323669 643842412 821857223 333025580 393376474 214823065 474452021 245077966 602850132 866420274 872139562 453425098 903519084 694132183 711555557 858856038 901140686 437869644 535198250 856644975 970556702 596418081 781375625 232369021 363898899 974707912 985180135 465917567 628223653 510316375 760431389 12469175 98876529 998084051 999693031 901068268 991084794 83407051 441602719 25332279 370639168 382709754 444423386 81978796 357478759 890413001 970477636 173320558 981347167 809925705 993056114 566473178 802966887 689998450 984515953 329673066 685171330 124107139 676758650 152757850 315377911 418464700 813835522 305414161 372506672 93343750 661888936 636986261 867277374 967048656 970120447 687022575 711132389 562329226 593533883 486656686 955239947 452551475 695577271 544634160 908384300 641745299 725257633 258749136 631555762 682196300 788180379 280378040 940454355 563555779 831480837 675479685 766972626 609580832 663442351 435878139 963054507 902811039 997383824 197755179 791910181 753606413 804560704 89057176 282677411 655456021 761828682 595705529 635225018 542778711 954673409 128821105 405315891 115719753 177757833 730202690 815715559 520404112 612864244 936387610 952879848 254851388 854863104 555874425 650564781 178381784 552078836 369393721 551401941 429571693 980992748 92723277 721823875 60693766 760944658 13400847 194539711 787487374 828440056 326917693 787790273 566553333 630994342 714701796 910981129 510131597 975431418 822160337 843935485 412692657 957904951 538392083 706519364 181945874 229824297 103022075 128867879 978379140 987852137 970413325 971840578 480551563 842120230 143597651 298807770 582455837 993050067 632057460 683299552 766907803 780113112 356986924 866478233 779839979 846438764 562776746 646880967 701120058 902970260 757814361 940581246 915411484 968567885 289967848 784977279 930798776 967983753 367513728 764375312 990349397 994120458 991216425 997339354 286633408 340038981 437932719 834630605 744120373 746237495 586502538 960206378 238541895 562897138 411172238 699165232 323592242 927271963 176053885 753871260 417784041 915241425 227870632 415469650 81719370 969442617 294406053 674827824 120450009 310480484 296252122 346270780 439577388 866816103 553345616 685719452 476937503 839575500 860902080 919518860 841030276 955984332 51979245 256114081 406110871 781324013 957671817 988110715 442435432 586515187 438120210 882412771 713802329 885819234 191548366 760862639 507462622 758156995 297919841 522412546 525503282 923594955 114588367 682828110 892131954 924081735 358923860 636823360 741836442 992935988 361132973 501628864 991917431 992073663 987045468 991080651 496411941 815766870 518068481 683874742 643005910 703006974 350283388 694902114 547734028 840344140 150267301 327358811 529047652 619250209 647795842 730658295 904213656 925956461 298952267 653509823 216366644 867619552 910197062 914310754 15678412 225310344 675166587 949325371 312308190 684535901 196635150 320107860 908112543 974917933 44500799 45835966 115511213 878361985 305863446 870779940 73617586 208700966 316402945 593897129 731437967 844100717 910372283 983856434 736470252 938218932 288462232 805219353 956643653 977085948 307976009 714547066 123804352 133513227 29820636 394066753 616387688 829332978 9790590 661530196 563596110 718658444 236281000 792737880 657968899 663719871 14300718 496178580 970140526 976720742 577326333 969187642 724830342 965232959 600169218 636196658 376583283 593343142 482495476 994087081 860367940 899599332 716860771 794550829 810018966 960208646 907882524 962186026 143727395 312154590 457082033 956887236 753056778 963142569 893041767 917088455 131079502 133784812 24448067 350385403 622296719 805997317 637854772 933745909 412473056 968981060 321877268 436318411 601584502 876648218 838489894 898942312 857672200 923461392 173458485 924915455 858908177 908863111 778430723 889200630 110747075 368696529 685766210 698013926 960738877 974778587 731105443 921628884 147647154 594162890 75239234 992982059 589713047 903466398 827765941 869821661 869568024 981641135 143520781 735231036 479640502 857526973 465223546 841699900 796027890 957116624 491307918 782268437 874090186 889121084 947385567 964529090 313486797 544828640 211254880 470419090 42177062 967421328 465263120 489529305 679276801 840857948 505307857 505376748 829927149 948983065 815726869 873460298 720244625 859099888 584127125 817514469 994523896 995131751 815660595 975136469 91156139 384943122 587429289 963264178 289865964 728405303 7263907 62894778 138096066 700833194 594431496 778204443 599941421 619514271 501379322 709614357 880013452 884069435 190694144 651097928 852499584 980247927 49297824 202292182 532767484 923023591 112526884 743279909 804073670 985184760 172858872 988583605 987222764 998667025 303544378 686589831 254509757 814516908 161179921 568597676 95195463 587205881 860412483 931646307 740327194 757982194 94609809 663234130 457725714 485442581 579654887 990358021 484944772 783824203 326958276 690646649 859642030 862165537 17375079 419307165 754894728 986489538 209550060 303447098 930601954 955059919 143448186 702888007 954100023 956841925 212847695 381893249 937205012 959355994 553121430 752504193 751163130 796986072 237690218 922434448 503902873 640935329 697437252 838560871 858881180 978709316 94147720 822612547 889476158 959709927 723243291 816840176 753737539 765320015 971565494 998340124 93084645 273478369 62333622 834580547 676883333 703117555 127315856 586174393 324092884 896489816 383708197 773304403 598310728 695914283 208797156 795906947 849511609 945107500 436095772 730446294 929550991 976029908 411530819 754242009 20348741 404567833 717937808 796881391 575037307 771174183 606655422 645064891 678968949 959951651 545256542 953302064 691598488 815635577 818884465 960182384 963258360 995612812 909118977 941366409 770550986 964750451 400427782 451436903 393762421 669110675 666517914 724269235 85021767 507380845 510301774 519440994 397799715 643290457 656608087 761494326 708799365 890987735 482601918 763767262 995735936 999670786 770886305 819093242 590322924 633266643 357708117 552908688 151464748 901237682 768420232 810030017 399482971 737414012 844425527 846276406 155875596 795334500 606424144 989473336 889813552 891649536 615475484 808692748 549120674 747025637 793775941 990858479 776515957 924353059 336233573 975491382 848731659 986262856 458328274 846182617 29337661 968484322 978474469 999116188 769656950 912870583 881641012 980170510 519368099 866666291 975698000 995161712 499480064 555999410 183900369 262761728 137664077 992747488 257774318 396587314 70314062 503797095 772771743 834617727 179959293 221068025 362018730 918084563 870504048 892209665 213377164 773720601 482079060 861855218 971174852 976174409 670548237 971214996 801184692 973624973 784209180 918633030 797776614 967090283 987769590 994714851 577516776 901459335 590025432 782323863 353088143 821952960 264363111 316799793 650442617 848357019 676979570 735790770 471658593 600448662 827264960 831462198 19739658 606195778 721883303 980297257 879286722 992969782 683042025 954723307 611841854 896307655 38982086 795814065 356721356 760584585 997104094 999279874 425894599 578653415 680900080 855259741 425707234 669676665 918945826 999331754 47048854 326722629 950133387 982918504 150941772 460953688 364446828 635448982 662611311 844799083 671680736 774469508 186142229 772361725 545169223 674842303 850261503 887744057 637601225 729987630 776540337 812784282 627500238 698517053 319822263 577635479 672753578 806606231 37205116 516959701 381577498 805516127 641944848 790947526 220390690 854076457 562994851 859848652 266822989 824863791 223356335 695499497 803947579 954171781 396245722 610756349 799983135 854766379 56815319 161174664 584747705 810687084 701505228 812953660 961768372 985658834 142798409 460144444 280942530 707226450 859610915 930631775 750038932 880248076 996053320 999659732 789549792 984233982 404391782 409500871 101510028 504641025 430345890 718456560 741949538 831852470 974792518 975646686 125114507 897510819 250020156 944230495 165896119 408899424 851158471 967672493 757848476 925602452 681738842 756766722 755989580 865745154 355499465 911291827 460008442 520875373 417107368 901945528 427481003 568747391 863957316 957103917 879698251 994086892 57159458 849679905 810984403 988570721 820529388 836995312 220293333 572198139 502722358 977213324 250503751 417816721 528338350 719640092 499342855 586725558 526575555 761287481 576646132 859009075 273450005 352830972 233439937 513467174 343945845 836217275 560936102 622831093 633577527 732458866 352534600 463099802 378596971 655634810 878395605 971349946 425040884 725248612 341258906 809595674 729006208 772090571 984614315 985531549 528861200 561616714 338510023 614159143 820963425 971205700 631084160 861259695 577442669 685591495 494011088 717936420 72747132 281571595 157475707 221240786 216957956 870743210 196711287 483944477 304347959 516961511 24644730 350539766 766158604 991293860 564736491 777358446 106726616 807979839 73895639 732359902 99640404 976961707 316908956 867701156 296479521 463352930 942970737 964468247 805916606 853101887 331208630 653473920 896135675 944088753 895999354 937962079 923341922 970958868 59328638 370864475 145799231 946773253 524457039 608903701 561847151 619398126 577087969 675550475 345369870 834437115 971259436 994676185 507166686 677836760 987493254 989132005 753739880 849409084 560665398 597750260 440053217 778898485 426840968 908600404 54976987 92462854 356147778 428330275 868094927 986812881 561625687 673146461 678238296 803617115 38540873 620784769 300801093 984037393 499905488 928730151 477563508 866844288 845961310 905322320 586148901 697846221 114724671 779367532 992731957 998512978 469998148 805681626 685058557 704152028 856589817 983904501 298898232 886705027 996573300 997118083 401869153 733831935 715142975 934647994 362328863 460526420 495075700 939175400 843524099 854631529 949489918 967524736 631778770 738049422 403361918 805828789 962934310 999750315 234657470 850800857 416647553 667378529 160633407 578977469 50634155 256663556 652079058 700563913 597636150 957312886 306756252 682959181 405785547 752124082 89509044 676991272 654951772 769733617 206050868 643047580 348005498 862434661 412054353 873969812 573258285 831640452 34234160 464252743 343257873 808625906 710589010 850614553 24193802 77445742 733013100 832028956 500517444 729559076 263691481 401889110 193179127 698275870 981462140 998838805 877980015 917543501 831379809 860970824 46432409 172885966 469283351 793328258 89056657 999605283 319612373 400519434 982500801 990695527 396522240 960647019 159021971 972977548 911152176 954436135 733830757 944374482 976238308 987535989 375448733 520213876 705891796 841784686 373652777 978559797 453034279 664780015 135954058 382428834 989846682 998855351 632646387 961323016 570367004 705351897 718607316 964465389 501564903 721514818 796124980 902902929 442252009 446443924 497106370 516639051 832081839 923229745 409603337 711544911 224142214 756933624 896982416 978856857 207569058 676478356 786401286 838904092 4545201 223816460 429971797 656779282 27779466 763136920 906694020 925519978 593922778 831382377 24614633 586616596 391144917 529945107 850345218 944313652 700689668 963307151 362097575 610530966 52619028 184617477 720886151 733432064 222377069 345693377 153120953 511390247 240547676 483852765 224659159 362777785 15110856 752965658 474928853 999138995 522624200 779427071 78282926 946562701 946962150 978261687 11721885 911238292 985001992 995094321 367664064 974368044 170681109 911456445 914494236 964417806 929030727 988560644 303459258 791875824 880537863 935629380 627721878 957780396 629214858 809741574 999348840 999363435 126882201 904828197 408477404 887194541 65692775 459083450 782522332 967690430 873749465 963953697 287053283 631934843 887230886 891130887 238294937 663989273 516293443 995136818 133105570 585148787 430715937 807884770 708194751 728095465 818108130 865712201 656999458 767488594 741724641 926959920 353671783 530653626 785400795 885368008 579197870 614231284 467542794 896818304 926988752 933838867 110469261 408814878 387789849 732407576 199630102 289429999 841411490 990478858 812645735 836185113 394012045 532279875 14750690 538467314 480325707 785141348 34174518 832450502 26837558 438943583 407332183 694325129 534833779 815817887 70489416 889904847 287131822 327047162 403260479 904806788 27897043 193288484 255094606 256964026 90425748 390621560 436959660 891678437 274825530 678450274 947659722 956236009 733811529 914262269 277395840 335654172 156796521 304856935 67323897 192579194 107535382 398921856 90522536 238902123 339879988 752328556 729523748 918250991 397084372 633546590 73380047 820406359 216812534 497458330 949890286 997914983 427028215 616327482 845042725 955456741 14521234 667373568 805006254 993682319 286949101 868835870 74832056 103871294 926018058 984956234 518523190 805424214 444624774 983617992 127299008 822836252 554046157 613911315 820877015 837385433 615349504 903916022 188453528 836727345 83348892 845544735 273279220 799589831 964301944 984182388 830595867 903205263 790133080 893365582 954189988 961520693 609327837 839951098 72953086 553472771 73314996 547917920 604124870 881678810 126803212 769218202 582815696 689768825 812868612 921786991 352153506 952140434 511372449 951747439 512167037 741568099 838645223 959400871 40854963 375902667 907232870 971024435 349948741 437275355 954161961 990290137 266601541 971225232 506803316 729194633 915816671 969689429 622780646 855294043 383863821 848503721 216874604 925770231 423115932 512677545 81956871 296824593 48099002 779948366 965779794 986515533 704658111 767679196 231022818 875200998 837749750 998534725 747710654 878505053 218481209 593695760 673335451 781514374 411179101 645225340 475965351 543606176 878111124 921168789 950624695 999606566 695790066 747298822 471077958 952132737 675691192 765416143 331956308 861784936 15131724 820550351 773252521 998740246 223853448 926384654 948625554 991618960 897221485 928715648 787395939 828453273 434452613 596274868 613303267 804340173 255390 963896168 616573853 878808309 158183649 452699093 241803613 392271808 981727406 985668825 452453718 665180345 72389782 159624016 180919110 280876828 144411129 488943610 845408477 934497522 122249803 709159701 266157005 837237615 868433999 995962260 119749482 886812879 452504459 458096290 433703118 785090020 222719797 991614058 672059765 789917307 776665746 914206821 256142349 356769246 111436477 393040915 583542631 944098896 36470149 687163705 30478144 641137486 441202995 548430209 780376205 957044801 190267096 396090040 895858630 979974114 441779030 923391451 561616726 817795978 452760342 833393766 164244580 869018871 609475629 778763863 75875166 922412416 699958896 998977515 242644942 803373699 455724127 837159585 872061619 918183077 811727923 834963161 852469589 985437201 224174086 260045122 658643976 895478723 438255168 575896681 815606811 946246055 993176792 993898303 176056950 815191683 116666518 877747423 783596337 865437337 269253542 881585350 56557867 951436793 384757081 802810103 897991017 976354012 82007650 779339361 980013156 999506345 461916782 595437212 538059411 789390727 634408434 699858662 502185251 899356745 427416401 445439627 989499438 994005194 102103478 694459599 955764706 964901127 379131804 569999153 585705350 632734335 222178823 240030601 775785745 946599095 785050012 862733443 544765096 758599217 572946774 736867088 975037866 999383047 279020478 573353987 564323100 638542286 559544772 918171560 572997212 912007854 927861904 973106263 76376860 199432913 991301649 993722677 626002973 708248090 187907708 665664067 504618096 714467962 878601831 998381755 331786265 507170041 803432077 839390950 811238397 824444216 328050736 792500335 574850927 970171061 223458903 393794973 849436999 905730759 4628041 582010021 326633459 519847789 871597584 997105510 392678294 886280845 155632364 887336701 511189381 641702453 575997698 880964978 844886603 970613393 612571984 650034309 262227363 774613458 833986689 903832009 675308343 820803482 31556159 859560195 730725032 735094865 646210994 750616516 521675640 909452842 745560744 805788687 423663547 484918009 605524339 802100521 170018748 707421371 850071589 959078311 499935613 730438738 635040535 754485500 784095308 952034798 608119048 922281880 348456214 571956833 79368121 858495944 244926428 575588506 749399748 767351657 821888992 905925019 718253666 885744730 86226503 752160149 295128067 549703600 739902809 955843584 669314684 959275154 625684444 692027081 878795045 987469788 226861688 629849474 250562513 795390985 710334394 833075646 467928564 758538261 816537615 965007453 396914730 919623755 690598677 701422958 33280276 200122238 215788209 937620493 101976729 278127402 971068056 978790425 720545661 978990475 630943766 924829176 545320445 688010135 881342154 977439071 172359007 684781887 317957381 442170854 399712248 498886531 171680274 380309323 966691966 984772816 764713010 811246465 893064928 977498012 141304947 854776534 754720046 906107146 316201901 576992579 735856714 894957115 682358053 919811363 560434358 786868264 336414431 631440558 983288274 983368595 837802930 953672543 160728208 900273189 957938179 986148296 998386400 999761104 789868027 907333373 570142215 631207999 5926925 943358524 289334183 577574356 646704796 761005554 509909659 806125456 586470351 723995926 681089720 902518822 773030009 993369777 712409785 942395426 240518512 360539335 807647001 954697978 683992629 696796061 987105776 991133914 393840552 537921572 18535718 388355973 212907074 480817124 593758874 967576857 683388847 982005200 341346043 879630343 931350721 972113901 901327688 906997241 231098321 546178350 442710114 522483475 851848423 941280325 151028278 842206243 599984022 793382359 856068786 899348800 202116276 537750789 104715004 614299959 204263658 338648033 606586601 871562411 105568414 953750796 103462204 322825697 696448809 852446751 767869768 903900401 661297872 689225908 142427048 351885736 963303035 998055280 327482337 985625875 315740425 529989015 740681009 785412843 240100903 396157812 848454129 865829032 203355097 515973332 888809901 967728385 498696491 931881957 885552234 962397064 965648945 976528395 450769217 867709904 791020292 820876850 347701879 569911333 776045931 843506162 736613371 917643905 237826717 490795274 404221772 516071353 573065012 812082317 515193277 550463619 805999438 904921491 361273758 637924984 261764587 570773902 863762511 927141461 430348001 932926005 428065969 887424067 568370068 955902337 34403866 263357169 624869873 949237150 754580375 823957485 18244059 194407141 411241126 909981486 90264274 313005552 621207174 974832467 506115539 758905874 279941761 570075412 657343130 906644470 469023108 517514766 558665185 751241380 325403527 831379915 96446776 117875841 197108043 262288270 394692469 810083275 302801591 599214314 300366502 697060871 860233928 946048551 658909037 711762911 719515957 874045006 872490892 887956251 945318976 957797975 525991222 763927781 682871722 789163098 883751531 962692130 814753940 891285100 101461033 995403388 38167592 202032174 248762018 939571595 304549601 950703092 603216387 699175471 50306725 746779750 704402451 815317577 537540294 609672712 97572989 654102537 774911718 861036605 505182797 629525203 714107676 877790041 19791019 75288567 568718912 988478144 11760958 318588292 719452263 912702822 924550967 952324074 159614356 494881172 40559831 952537803 854201575 979742827 350831585 446973236 619349899 762738014 130350891 186749660 369410775 379270420 365919303 385511866 573186048 652640663 60530415 179352757 736557442 845050908 393166619 988386445 251040562 951186090 213469013 624998810 269389582 878747355 358663035 366212758 208321944 254767631 785804639 850350910 156450328 423740290 711789634 757432077 155737348 738121630 207221052 524302930 986368638 992635814 245672128 754304354 558845291 925554662 568327407 965819053 258763072 726793087 540569142 865666274 936623889 950411432 771571345 811861310 864681953 966058176 563587943 825183200 559585555 786500843 836204113 867892628 239353486 734202918 236578945 342397922 125742149 683547323 681669613 798775094 431532828 492111404 244587137 362855854 911103031 990924595 564092998 926626288 10570399 198469656 291702314 964633381 966518723 986697280 303379409 581192367 87692340 773080116 255995330 880803942 106602460 880691244 359207872 701997939 881815794 968313929 657107145 754002084 496359922 839755531 782721058 864993675 691979402 764968666 988287648 998621059 747063962 950703090 889320914 941920372 214597842 928984208 619773993 981895232 262958295 415550295 396162748 904865207 669662780 718553486 307269792 931375704 440840579 461753237 465708296 561161028 754885989 774381869 371827695 852381402 669013777 972974276 132725336 304410287 378486829 506139812 724549552 798910233 72772431 117140319 417683395 778098827 707494836 874890382 963200799 994951209 61746437 704507622 687945244 828379211 664176608 993105426 676081549 756921117 226701639 882616277 619431898 776610126 606379890 805900421 910969764 931730460 982843786 992312546 923639637 996723281 707505564 900525533 56807357 544298295 9582080 13109781 535026823 865175925 838342315 956813433 729948563 850388085 666045754 838927373 561711010 611617436 915054296 921234821 896076382 962698641 380732318 643639975 101178971 674928149 231944033 351121870 748761882 779481773 490892886 594764389 852222313 947926450 253963146 348332718 996303617 999632321 262680264 530584733 327332682 455264354 827396021 945905893 369164541 500591046 722209401 999188524 421357959 576131718 415647636 746076213 448199175 834754195 493418902 536970548 448712631 768522763 556741635 857876921 841534013 996400530 25679225 586755033 867452840 899329844 600646785 886088524 842981316 921202211 632871778 949408372 43097449 967000498 167221138 819665280 219863122 477871459 274467213 951997484 424700100 927683363 336799464 712236330 274746945 808135241 472366023 577741248 967588763 988936081 337033741 430768218 306218174 778147482 156362610 446381864 613983562 752166197 939527287 987490395 304547321 914785415 586802188 890116356 294891767 474635737 727705438 732317466 798735550 823511134 424611068 862600662 533829965 752064131 462481985 922704668 356865237 845610999 113986089 750864736 38536315 563367310 940943610 982915295 375730634 499182518 250438199 501380273 426910499 599701213 54934341 813847349 790460631 796015713 130091674 508741532 756716666 873031218 723762878 741972072 787439165 791881872 148235793 411274788 455477303 834722430 323982861 702865388 92349945 190147642 477556141 805903725 849556764 997867334 878863345 998690895 305406193 518762330 697975597 714545633 775945117 806463023 625113633 767206113 235590286 639678293 517690328 780255874 252718333 781561966 131727014 806542397 335105678 908453339 915976976 923909930 422683913 788311950 410448106 618107295 367962779 543222182 616300723 907824940 549018285 896407417 225106974 912335980 835058620 969857648 436469474 623996176 439274111 569400902 936317312 990535793 100573483 740346874 504794186 716074647 916818657 988078194 578434305 988385407 639359118 944123090 142249153 668897223 365514771 481578385 594313157 956699009 980198650 994310817 998309618 998595122 16794881 623119967 852129352 885147214 50967265 877629256 704169462 704331743 102688249 356048254 188377815 979787637 880619285 926625566 267701267 917176198 33622085 86263562 146574135 614461895 402842716 732068470 998732420 999207919 792559278 951232495 571243371 782181636 387595532 569436666 291858362 323842494 39131056 390986753 963066668 993919446 123182386 489543864 954950 696819054 95641859 680177090 80434556 500915211 898950273 986831262 271589487 930109616 17958660 667256522 455652328 821123772 426495523 599114832 227919296 336227728 741683549 964311506 991719556 998775730 661845152 842471827 918296811 943839917 883318299 957414616 735554388 788063009 319507282 492372357 333971372 708726225 680437208 747201297 823466224 891892646 909212590 911114883 381315918 725102784 381525168 626219986 967069753 994417859 716269006 872016602 495694065 842414172 134846646 574741297 651393231 984661418 311854569 628103570 362950061 681127684 713618172 739582799 543119555 738376158 565044130 970510429 115513572 700498832 682970454 805032222 816862455 886553398 377667455 745017298 490016595 610886133 227368798 577961271 756008542 827047094 59043708 392087054 698238980 769531750 758420326 887178847 718173667 894543786 628730291 921401446 273137615 565817081 734782064 884635355 709095343 712003140 829713775 938654808 432812131 497518725 982187850 982913251 856807393 874748169 79138594 555456806 931260798 998190295 40716672 67713602 568177653 604621271 785900404 952522703 251271471 516263044 973867090 979071877 146871170 420918366 282785218 416073975 112655123 254123404 631808365 735972419 207379175 712462849 826205533 897587525 907253661 932267812 598978092 645082639 42092898 234398873 811439141 937376272 994540511 996436690 642354988 863308438 539361178 969791223 949192578 989634757 420296530 846294696 517533968 730377884 617357553 814637902 257784231 296366688 79894093 498382246 763560357 877835114 876815298 922298725 307370548 751847386 903501086 959140453 457262619 834226594 696960628 829936058 989254535 991570849 469905809 898560584 240030478 845674810 428926423 681899842 672243810 804850922 155595931 370256972 954952426 967657919 340503389 680922992 683925850 912649053 177964151 958465864 267825183 875864234 987686731 991637006 766163605 965200832 980381221 991321803 719520062 959891888 327960537 538740010 386970330 492623539 878345332 974186344 245184586 532811701 376590611 972078821 58659692 956395134 497134532 570762518 969343820 983562228 863709653 916523192 248537731 973828780 122737304 580637431 442400914 487572652 328532936 809540793 652696609 707407810 803593245 835291020 124311153 568793972 2032574 430320578 378701910 591774980 615541031 887425825 575620022 640450792 836488476 840973976 601554389 676419435 22478293 711933507 804663405 835283992 537158312 801968417 323848239 748022460 484069404 583748167 958457188 970179303 335748227 678651009 899481293 911207175 591535329 644080679 339630484 559197070 982628257 987986576 233925345 846826730 714738033 736323809 938716488 985284205 120967961 824052886 784693564 898263950 847414152 924602324 191335760 420242911 763354203 982700886 493407325 504975495 473119248 864142040 515707752 617537543 151175530 963209503 811924006 830271932 636070176 956678114 755008718 903433812 79277375 127205845 819232632 873166517 496960293 947441446 656387584 837386973 860313628 898362836 862661220 979039267 203184928 355478359 199599619 340952330 72130733 165640884 438963446 663057685 211418880 489387741 944435141 999517619 507487883 803452851 662763240 967448877 996775550 999510455 625036280 938352203 514944287 563148210 966818642 981884052 889147832 992340842 741904686 771049173 159263554 910833073 660399336 854255347 388787728 449706780 258954123 428842009 725784688 830957490 158852428 627231794 482149940 893742338 371872965 922399887 223985426 678035415 930329850 961724401 661787604 740403844 70977576 609022053 574564740 763753284 238761142 865877718 376979720 727530464 104679390 750367420 479714191 588221687 485325477 781108175 12425388 281038408 231708065 960802803 799405488 833723644 455697779 466303691 154061043 476630343 674722387 799189590 877903424 889577977 781969632 875285147 810650987 835602690 624508071 927781424 423003724 989378590 513121947 554131101 360302684 536569834 986454190 993899155 569930867 925581446 332838441 720630484 324581353 871340765 450705612 690016246 54121104 920075733 366450262 972471013 223466172 998075624 256999716 756706229 707053798 896519339 148137242 633032344 391592022 689290304 632760928 923260582 176992189 607298513 72351267 621077926 783125194 901059742 821838350 853176100 717340153 837563322 824174778 906668868 700766808 702052304 599695338 639188307 269709567 346840532 946844680 981281680 269792235 711649407 195480841 865410613 685576841 707773852 499164307 518341561 425783033 451851487 667841274 816804305 278479238 470215658 676128164 918888111 310107901 670954924 81445561 580554707 612369272 877361662 677216350 746804184 425053373 646841173 438382797 986666918 985173436 992920150 629910883 781071264 731834715 876891851 216151546 445002653 833833385 917548684 950915427 953119127 980912420 999514834 268910669 347975009 969009952 984250329 544499511 590095136 687765370 742978517 936369942 993613767 39473375 905675452 899737 6295857 89767066 236794790 539400944 969166780 393707111 841652420 111614039 511882141 334996376 540356506 522587928 674474389 754021581 822503505 379242106 788022348 436312125 933036383 762044869 891767622 895071692 971457599 250031859 895365170 675838962 769389274 99971475 536369715 449106441 872410386 74215551 622044931 419001577 763506311 289802297 978321439 671523031 795881213 473988168 520881478 795109730 959913946 430730902 891573133 147464586 283836598 66174153 665291664 635256564 977589196 378384055 803209479 906766802 913843603 325766814 485438752 465902226 632276841 290148382 974865845 646023657 804124263 789217883 960597376 300990754 500499767 226685633 291600142 615773649 844451096 208428071 655929257 296961133 599243176 254304850 461476681 379646416 414490739 643043039 730570835 490131687 999621507 462046561 528814112 227879848 784761325 902212586 972763934 28371303 396180361 83670332 785324295 659334794 864828887 259476621 998191881 582600686 593237847 785692388 930639343 878266432 903049743 834984385 875217626 312011192 422155832 683115264 753943022 49376443 557247457 379178503 769019803 752423163 768358722 12229662 812928741 628420066 882795533 74091688 351448629 436636348 758161562 668975041 963923305 173158410 421145203 484914824 575952160 801239968 932182691 3204356 533451450 290196694 779192622 571689473 959278555 534881645 795166833 211812309 253036576 245832915 616378297 887596150 916835872 920730550 930462821 232066020 431711001 384661985 555460887 303307109 749787287 739900382 871558180 232021701 780896390 205024215 771875826 401247584 773019950 723171224 928577589 272268917 941327920 321908734 504697393 575568144 722090001 149834901 645764336 652847506 959842600 697691495 748682245 663021138 998154594 307081202 739434649 639500268 919966427 578400489 891413015 223871742 723874022 990444493 995097133 409828042 516561369 615250768 991056302 668197890 925072611 673706400 744867295 533458905 789876779 245242523 691931836 877758392 994141545 330336556 816977389 831729026 890304789 598432864 706222804 868519342 929781903 747494254 866932838 394721631 529245870 336819140 705291148 960726023 996524888 540030137 747403317 764988242 942185279 817792631 961115202 875755867 946894744 12966936 549191054 253575264 349976390 503684790 801496991 283538265 973754674 767186331 883593460 717729379 871782413 392456499 825042060 423091824 945457889 833654650 955542193 681832936 774435259 614836032 617626511 937260850 942077758 96736373 944712836 772911558 790010364 750201358 976141256 429504905 437940891 533768075 954427493 325682810 943163713 979498867 993540316 231311891 453069214 512817384 735653910 106487157 777824066 725574792 779638236 842795468 896446679 664174511 914470091 490714690 917302101 80238716 357016705 452345073 855934156 525799456 940675948 844721045 928355797 165313486 681897689 603672796 769032080 447722497 657859175 67784720 592335213 391112020 572931593 724935757 982829112 679085307 845348185 205892395 552777728 926014264 942910208 410425874 720240604 538222984 724720518 944122018 980528021 532754625 844492541 515740167 863855016 45310489 298806238 596619141 720352340 727486193 745874647 759823896 783700084 902264269 905655220 883028113 942279841 106294066 747389139 134281398 752897427 993866184 999464622 421280711 564662250 874675890 960676037 58746041 676699056 881859962 929648187 628678474 883673316 84651077 846042147 458558096 919260959 418551056 502072931 753239129 812529036 328806940 821557407 486195093 696924134 7860926 121937245 523592911 851700711 534064130 618859959 615282467 907937996 755541045 837374592 278221043 389778407 641586803 787953766 134922588 976012680 201348337 523429384 180151903 634418967 97202432 954904699 56240473 819149038 968659392 975785880 95197152 210434772 879168645 944929149 298847764 450102352 42118020 327609531 953327867 963805271 421295845 894386926 344230609 844945520 596652630 886946562 203000983 855945062 729996009 913248583 897134686 963734772 100267498 605681560 941541289 949776147 624528648 894061462 495960488 716123505 465793523 704087007 717764315 832553705 401564607 536044367 245697161 861889864 455711699 812992739 876910214 970984513 849285897 983459319 182570718 349487983 514083743 665116178 564418649 824779203 320763510 785638555 726445911 995093510 177697653 520617497 625745602 740124068 257031345 875836487 236164347 268481302 929619276 975093306 3225672 371118124 200835054 344395539 564421669 702080511 297780409 399409111 355026283 863391987 161113141 260242762 485317344 641275591 508736458 690678878 61652784 506710301 331530506 523365542 922359411 966807692 916374948 976894687 615911411 659077561 432806670 459034847 333413309 597071483 909672498 959328815 437890220 926164667 61730288 138245061 251257740 386704240 662281008 815490000 436848595 940007181 535951091 654685228 15596213 358091696 245083536 700148100 409413420 877259028 127455271 702146967 463826176 654660377 554547489 835680431 39435 242225310 437295420 552093346 681435595 907735655 57616525 404595062 191436845 919882165 764308797 818470997 756522676 920302178 661612595 712774481 239327640 686226635 872223099 997895469 981789002 994750723 47231802 596952637 831576783 923105339 242466017 820803137 32209809 64374829 530771582 813978695 91214961 188112606 515073208 616092840 380226809 390354324 764824912 912518725 765333354 929605878 973034550 978282386 37739055 73986486 616287860 932168113 998019198 998141666 125385597 789565156 740022563 767547091 301528837 575769764 112898571 529882620 674728479 726438364 536412318 726083283 365901664 965834750 907995243 922766291 723936133 970386168 991588109 993674361 417992046 815306822 312457367 428551548 884772080 892841450 222291424 436429016 152843756 683403745 415073067 650735341 107051973 948899716 791671212 977364091 67474368 984612625 367731897 706980506 467416525 801381200 419858464 676000229 7567678 481125389 625687876 942113395 799502732 993600570 169656987 431583018 147798425 196862861 698242342 987864367 384941417 928141012 938265448 966723381 632228530 895787922 181351190 508370512 179636967 725082220 809494696 927447671 521480749 790238645 307427468 364699481 544458096 573966261 777316767 779439936 200137714 358037759 501507003 912714596 944441963 969400529 459300563 751887785 428209304 723044640 256840123 815192806 661734747 878995460 36843054 997780865 550273874 588658274 714921916 730109050 319549105 620873154 775557355 936701559 305533068 727602771 985516928 987633419 291798005 416105183 662239608 951330411 649418093 828314618 904886983 934380713 97981051 370054548 213972409 942315290 891032039 901583008 99058059 653452709 794965354 832049263 764515459 806974411 50442986 675230896 998192657 998272137 537556076 691977472 967402910 987911440 309814269 367895089 924003877 944975723 87070027 975970424 683120765 749642475 469013538 641376353 583585714 653046999 354525509 888201530 498270434 891817684 459896156 836664677 370488015 525621736 341342203 522118070 48424776 641206366 837182233 847682697 578116919 711829262 399755074 553814568 937565846 955539780 703891407 908306034 545724758 977100713 552706637 873270065 739997974 883912474 925663570 988231721 854039047 994498547 924186658 964060600 261875028 267423515 573351580 752367970 440158533 879349081 831352657 952768081 313786421 337114783 296354168 863929518 21538230 73373559 295389464 924833567 682567311 807067963 406099088 607803929 803609130 875631346 472209315 959305181 391573436 617304052 387738503 977312951 531079397 577087380 954638636 985293810 890731894 949908990 623632667 899762752 940149338 947485507 881698670 913452743 109386828 790788674 89121672 846619848 929766338 987697959 480113075 509291110 574662080 788043120 933418975 985326135 682355890 769486198 77531120 80335274 302986247 505889518 941838610 949545597 203078304 878604685 385999149 758305139 285935697 398371337 308542388 362835472 256755744 446673915 806024845 866584527 618682641 986487249 813991252 850242362 41997160 688325693 971462191 994831395 46117802 984608570 463029756 890853956 749693812 940619245 814004944 995160533 778938851 968160968 302299970 733244685 638820249 732093713 587869365 589204676 521239867 544428433 199831092 234716285 520513356 701227984 153888525 771344370 341895745 417525446 946855880 975022312 58168214 112534346 763440803 790236748 140425339 372607720 138938303 334668325 859010477 901629451 304408734 956289527 294356135 798662188 528127874 835429958 442490023 862449655 796237622 998073094 954444005 974074635 133045404 336038013 414732678 501290015 454037217 526431036 440644221 998681219 652222973 745480175 417110137 747636318 694714053 971561261 376315965 815873761 466040297 637884485 130950463 892642492 251342448 641425320 849964208 920771054 476908730 621895330 485984523 823827144 666684530 673663990 259672883 637105109 921482452 972093873 641836995 929991626 731878191 849711634 897786482 933059829 381053903 849593961 261519651 805724115 556053586 636010593 636914894 905804842 326591509 980808419 581905501 980055520 474601339 530292125 26786716 309732351 213101705 665707475 49529267 961477206 160753731 405994984 136169533 148089368 659000944 751485291 727517366 920480759 256566122 379756845 856386929 941270347 764633798 993864231 919055400 938310592 85797124 837350945 453499908 573708689 716107200 822563340 132470808 284058867 456876533 838863808 466096318 844791292 662114690 869007594 870572057 919110431 529931100 630279741 815025839 815188182 5276541 872318336 292512247 765346157 506896218 733739052 729611824 782316139 280358924 505763441 93107540 154340243 26073778 384788800 775710823 927291624 487676510 885994001 331845420 564260506 305987483 678428605 894220692 964579958 722244164 742425391 46481540 413098785 285859813 412190136 559946251 719341947 384099524 401894242 911538807 944445235 335916396 455660136 894726331 996263562 442954282 735357102 65787797 503588554 501798215 878981143 754536172 791932915 61279237 653428189 90171384 264689500 95258834 617811251 900949572 905412755 25009229 520391571 524501671 625338761 131936153 844407645 120205474 626979862 527293785 964734404 773886051 804314984 900600050 916857558 331397079 533110512 304199336 885322342 793571434 954998849 227631540 283466078 989879858 999485151 997129182 999261032 891957826 959120309 950137341 979291656 762356366 935285218 505132111 793297546 983642174 986703620 605063057 823419167 770104799 938863725 323084383 907353473 794508933 888251782 826195601 928078071 306581206 395883545 695085439 894262927 711245518 724039263 621357940 816649469 303758012 538138554 352676184 677899705 453266078 955648365 252290625 613447515 533925719 551070111 483364726 817363898 414612899 934059969 97710826 849700136 547008208 763069904 668442040 816342302 99692573 813472613 67008271 662604525 473665322 617379523 650938101 817582383 14607933 341341006 696871832 853719136 679857828 978833631 849147510 923304482 574346017 947258987 614708889 735344133 837234577 893578740 982065674 994378522 775671199 990700712 108430435 552492957 637615429 932767400 497262630 788658086 148101436 941753657 10637433 670541659 206121032 577555820 311205891 372073028 700471883 826725786 86249163 597099400 653351403 956652699 967415646 996117564 116779953 920366589 12033754 202363635 920988047 967822732 81590642 516923193 690724350 723007577 29946598 146793553 708985936 966140304 917096901 984928665 63535381 595320576 126608622 880067533 101865248 776429933 897810579 979386806 903919416 964520197 515004616 631940124 717232706 950702970 504629211 527882891 262771371 327632742 346770634 542505015 750158893 924477517 959577546 963417951 36667116 968148342 748671679 979659682 466800437 627854636 848802026 975727976 403421085 761656401 436012934 698620799 968174491 985687268 247675779 759216549 822174509 889633539 380136706 648289322 24666602 306136352 510979689 756584260 103884785 803399404 995944630 996322889 43155880 72568769 413348447 571987015 715059577 774143444 726527745 856494516 296959133 383509184 154515501 362112077 632420149 947545373 774873022 911883655 802314245 860759227 584565556 689575833 978470436 989533454 261162383 326260420 58770192 72184163 223722759 568202740 660242051 851919406 569360798 853855787 968304999 977785726 375696787 391429719 443493723 680562300 811932136 909948191 393564386 482760879 359978004 433120053 48012017 994946517 979130284 984680846 184280709 701525576 615266812 804090540 469984283 566442581 972832500 994265764 972414026 999402133 766164418 893619901 556366173 925766189 77624064 105921926 110735898 291313317 449874664 510946963 59618381 401876522 975042154 996127012 699422488 839435530 812920709 889837481 694346836 816105595 815774778 832530463 457183734 746640659 782737829 982419096 584869138 639761036 147241136 260086873 500290629 725917022 930481411 944635688 15783987 574011221 432452351 607859919 747802412 771139017 765746102 836079397 802322055 966324037 529840029 723119531 565748150 993299412 422911412 612666699 44749890 471211829 54172952 391083728 602196964 788716536 806004677 920504638 399384834 948569715 829128336 837856728 954751195 997654400 357679472 730230498 585796913 640574990 787921595 985152059 924296975 935016663 45743381 506588322 515145119 628010104 979177615 991179474 438145978 575229536 840991224 913104690 783205569 990352051 202065205 521110129 743152294 886215760 157343651 871146497 277239479 387115724 587384541 978602832 402654883 797432065 336842317 399128467 205166702 262731143 772161650 785996553 159867688 927816736 542490037 822438318 139108042 358625182 337214638 723047030 217112314 976847790 575772156 959882349 980089610 989976378 849598995 864957487 685273967 769585614 987970024 997757140 803547553 911230384 219371108 401245602 612389350 976094323 571654019 995948929 859906747 965435548 33791329 618582068 747991745 959367236 455722465 545656059 99276058 572414529 384289058 849324733 201848086 863296095 401755410 771606624 452807394 615037580 87605290 642198166 532020913 984400103 545302204 747629333 213868019 359720944 203773202 852989057 430072520 711453499 852296203 943326663 328108617 494965055 235060515 256138255 481204431 885799703 216573492 452300512 919384641 929186465 757169798 844144463 548113105 701138010 263083606 424472148 10253700 409158990 394379369 701668574 453759015 714663094 335817315 992450900 214220273 685359265 394359385 656618067 100984851 358199782 787440481 843272484 448140614 760196043 86649251 971987866 528491475 801757856 236708581 787768455 188647280 969565340 653137622 864240079 43592614 275828023 237348149 259495945 917776605 946125429 723022301 979045217 690643021 786718191 760862295 889275861 694268320 866534603 490650345 597296321 948162534 983208184 266949555 276794187 15102555 487026323 767638477 792019413 552354251 886985434 188880227 952711135 618286564 933409467 3549795 777671532 214932107 729735736 151839846 360325695 308015175 707276790 896875697 974779443 421208444 838832889 783106147 807178605 368999229 474591673 722340166 921214609 733983466 782899656 556230692 628301277 915703608 977785323 277996990 773050468 125283500 384542030 120419956 965152002 613679086 832324603 870166278 891969653 527595675 986552018 830010782 904774847 138788157 924150655 36964738 58682027 823950107 861599926 853392036 910417723 45881031 266815267 869355769 986243901 317594302 823437335 549672301 782253047 999401972 999813471 528008666 662480991 179776646 289602212 679734955 960273185 104631636 466707402 532444489 815768353 798389147 870021343 618163694 716369860 455052993 896766781 333496772 723193729 524154164 570980085 145452764 748439062 110857785 914346634 921068809 981770178 7866284 682769523 48561026 340846665 883964272 993081280 689463272 982497769 56263304 875849044 488770955 840418611 528797763 700732825 788321310 988788394 502732337 579291518 758807336 962722724 309662140 418072477 901896198 960601979 791068788 974353796 407331764 898642300 5895939 290898942 238021518 598499336 947310516 983393123 261043118 418031532 505713949 701671473 272316845 854259983 377050908 832905715 289973077 390665723 105340051 203010773 835861256 985033066 725428897 978011112 538474805 761260743 657741062 826046925 276134050 869915813 671075437 894444166 641617730 791195942 67900402 647349182 459694248 616108996 195475075 515733584 868022265 991088034 325721937 994479173 44790061 233539070 175582679 394953874 94709616 829292650 383840914 613281803 414209798 473132687 890138320 955951238 483019740 544703984 568126641 776197986 994393755 999196456 191702620 878550204 434518482 867687648 132977721 354295736 227401276 852584551 638562076 639048937 621935315 846774067 799012992 960906737 503396676 551483965 466070577 640112799 288338236 964050851 272338466 730372431 36421256 844295845 494449407 952667956 39714072 694108323 624758306 946199433 926411494 988187343 610388511 817377210 230926157 926323482 564516341 586345267 522994498 991246842 483727280 927697610 528965100 651908728 728437193 790659687 854961794 960379689 626768512 950636987 380186503 428530486 777440362 979997686 940290919 996590130 594553541 642206761 902286286 922298773 581122898 821563622 808605126 851086409 990801585 992639481 411246660 716974164 615751320 777969814 397531786 974013378 881902839 936003628 409756358 810225826 18335154 608555990 757752628 969892190 947314869 991836788 278079959 758123585 203160335 439931973 51993746 889672746 470947698 845579796 422931274 970841131 575064692 906747951 556151742 578296161 640380805 949775428 806678770 980814620 741747878 817630919 531840349 888640964 184883306 429915476 596650289 947134011 933143282 978262350 424487730 587105815 820851390 866228472 159685323 295759029 67353468 634898861 500601278 707100219 962118711 998875091 554919150 594376381 197003048 888601366 822105604 841681051 756411720 940491370 904505627 933075943 180271888 324616424 638437064 659268923 45144082 667104497 197736112 961418897 30148645 728955968 287093537 684077663 27135169 254387807 651552050 799295606 426902332 802510655 897031953 969318939 577480126 956006619 759203307 897575584 309852910 313894755 146250344 372858430 837595009 984138597 698859158 870941073 104291221 216125951 32121276 560294727 627701582 854354002 568275325 600263263 814692680 841987626 470511892 535177640 1363958 841806091 133879558 260970280 770691042 942826510 10781558 686836133 649056821 968965153 732827933 838472025 46288096 112525718 604632303 703250384 774839648 844278274 474295223 773675777 627792379 941323614 525613117 869424964 877034188 885098022 858711325 894544996 605170423 610907757 292308648 958854098 88494410 609692612 444421217 814747901 776514698 916487846 645516078 695296100 384702702 968691951 406765387 554353933 365643908 894924725 405058429 806066121 866771689 931050140 284680661 445710030 814818725 961676303 328417029 405945379 981843281 997462488 567535992 592205972 21650637 416856886 633897093 925257774 961956310 973405856 55636953 874185996 349115125 979206433 510759401 622134597 981647320 996257566 488394006 796788216 117247245 957015100 143663291 259733141 82516180 791186421 641243551 995451272 349662612 637688850 709078843 796670768 33282860 65078294 685275634 733584277 587124067 940637497 400218301 594823978 832064583 966762156 33674294 764109234 913914627 929315874 536647648 639241827 206371415 373749077 740967385 944940646 905257307 996204668 803449602 945234655 203128895 457209006 388579929 490397624 550044498 852248720 927981212 971191498 312961190 968927318 83510144 702713043 718173007 944611994 546997599 552348288 146470969 437918375 871451527 915395991 679699787 941639578 238359125 860506088 421119158 570855807 628273120 667665739 846035113 954499824 687049596 828096503 912546750 967560013 609997249 908310737 753163217 834232611 324102653 717605515 448498402 733295861 774586727 820550084 154559899 554867954 796655240 847269857 350694701 648871777 930500556 978209879 145918572 972899048 739888174 919420009 626565848 821384350 840136746 869948055 29233913 565814787 447206520 651054233 532108819 738197511 399635208 752301974 530542025 779621024 353939063 966035602 13307419 208063654 450758296 752632687 910267463 950083074 98343048 396389856 449978414 606265486 78735032 127560030 432051906 457642506 700096330 941699870 744159851 838672386 661764206 939037843 316549354 668108946 423478228 669285056 312174997 830424267 295147117 702221700 205983667 791704561 180482577 505833895 604767831 808963278 830930019 847368621 256182210 269305784 729180828 890031883 488616514 997466382 34481864 791434960 5681211 593940062 943991750 954126239 83627146 326635291 575859752 625416090 302987954 842547943 821506612 979731612 751486435 922064627 554233158 958072479 309126992 732777302 99875804 472293189 975699693 991040502 18819285 963096178 544411910 795007338 287619493 953026099 210861914 749387541 580029995 956694769 708134011 744380490 739244226 888284092 588620651 785238750 32744519 430146624 943997737 991805131 65996700 128146834 615679550 616494423 198883097 698056098 775312993 937583325 906756649 982470048 709084163 809009348 210079634 884230072 600563130 824098508 548312620 656442490 338850908 679576630 335693287 413798580 759422912 990098113 898528573 977871926 124860908 505982767 722473276 862635409 218471329 393689497 311672284 839682887 944394078 954108060 810411779 959550930 631232199 971180748 247506650 347342252 49543033 208533837 870334102 950720802 923627011 963625717 215829048 623679303 445597007 815992279 934279363 975452156 182722818 842239917 43621094 49843197 824292985 977703198 972381235 981017536 794192836 815753351 496992464 881936889 452327792 600867242 534156152 951390122 42881122 807217862 278081385 495350817 540483898 781087614 965045133 997282769 698877149 801985724 294716722 727023548 17188738 946351389 522832256 597666474 779625735 798206080 170706645 853323417 873966156 926797821 221266822 449357348 171691792 441146270 466402629 684391348 798957171 980108452 137163246 571707170 820336267 914349545 488620902 693172624 286504188 504300030 147994605 585618559 275524186 458669054 911720217 951876863 993379312 997552085 344200521 982854169 265226775 471027314 110009800 680596172 976595809 999661445 999312842 999955895 553307308 843103492 489707584 859100166 260001518 573053461 374269189 932486509 695555599 910546528 323091069 409411657 17261802 29428410 526312056 567143870 581433682 823712525 224368483 512094477 978020803 985582561 554090511 700377238 600093087 658203556 506399656 739543307 196302624 914830145 615352424 976805995 827509442 938595427 556403966 799658557 715358244 933653060 351304045 394754551 129071808 554750000 826592342 836472587 235211010 714950825 138285936 517406726 34825268 264151029 588658087 767408670 604828302 875339919 52815140 587813318 234264603 911993180 310832724 489880711 927855112 988794385 514804752 869177933 529506048 734793188 518056484 677799479 886809078 926413713 878748318 978635520 981126234 990678965 90348705 474472133 701490182 807679966 994051390 997544382 257240294 280687022 496822741 596197368 605223847 791740596 640963608 935778672 252530203 948706518 496871039 635869807 974655307 991520110 351228762 404698398 256286849 486893682 792968708 836386980 804345087 826650966 491472335 923969580 165128980 744307397 229367693 496712184 461803661 696891590 795978956 878564114 552154484 891830241 379842808 386177124 140243950 898715700 103545346 582036371 881166784 923996305 327576339 740075196 633934572 962935104 600430422 997963257 379483152 740688887 490749957 697676659 533348835 596889026 307689972 831595252 895741229 982654804 595114292 988258509 339686238 446203408 163059107 724598458 970525072 982424247 297354692 608730054 170154262 534539027 615391949 919056682 442745107 643347807 50601708 796816911 868071711 877906636 745395542 917466326 55467711 423176110 237136386 341917373 342821801 773015007 379355059 426690578 952704607 955758252 231155051 355956699 923316438 970127364 876751805 987048375 207739513 517231029 592009308 700589933 913336920 940501293 436155404 465396771 802773018 859374732 789727191 876431048 283572539 931361831 526938469 883694836 42872436 933237353 788490253 841917769 870163727 875496937 102593420 685429178 488427034 729720371 73636525 167209249 648056258 724714138 248002342 661271828 551490512 776733894 759195606 926884411 49755595 660545337 941174776 997199902 331835105 997307372 239011771 453460252 614011159 969133129 944431985 965588376 488157142 770373143 863729622 910158029 28261760 998252980 739012750 952247787 267404975 304899416 719361917 870398263 989827909 996399122 226667880 772447561 366663558 610243815 624335396 676746709 985667240 990758084 991532368 994871163 903347295 916286406 430442626 896976614 795422693 825432852 926002269 938861700 755167562 761686246 818959858 948530135 805758224 942107219 89110637 523590492 410407150 804748041 104037793 926702072 175048539 451478963 488880456 637841951 126395062 626324635 456314205 603909758 697604701 812430405 901845906 983133862 284978458 288691188 861828428 976845252 453374658 531408622 578719766 615685157 851637505 894740884 740050280 990345860 973557511 982077877 203932795 727360704 687251400 689816800 182639355 541889463 583902207 690334741 509943941 679128033 282409533 539317158 916768177 958909484 532568433 910473702 541596515 556002401 557715811 788452871 748607826 822116393 733043214 948122051 608327985 691250271 718430676 765696785 270818918 513975850 692782153 965826426 378822192 596455895 452189309 510428285 840603617 939280658 220612711 360710569 487000094 539786505 306315294 420618483 627260559 672627481 170742985 257740132 205176495 930758851 599921689 929907344 915551896 928332463 34443978 613077054 672156113 740323576 776181528 997242348 441474929 664421984 479289883 537106714 313385994 613719915 479193511 615564592 839284200 922842026 692131887 881279061 762822091 946250752 911004830 918691757 295707993 982143560 312376792 519870917 55769592 534761069 731433137 938596739 179677495 406407951 580948584 633970497 124673814 635218497 746357627 872278966 667819709 974948535 892373012 977885035 895474273 987574230 357874015 464680110 743337211 855855936 457118737 911379195 825282129 972362669 225282380 317034799 106567072 319386448 174850367 690851668 163996448 166097419 910817809 985887670 844077492 884337858 402808203 894457342 489897655 704144683 855742102 863247788 734761220 870827463 771749488 918676384 66584368 993542944 654241883 879534524 104966569 138974408 470514227 856480980 384415983 983395735 286980993 363980870 323504684 565678148 692712489 947570871 325323160 727355660 11656134 465775995 916918701 962886883 864690090 947031421 633549622 731600843 770819039 867659693 185197571 247911228 220051593 389944158 904210054 916106284 561595352 820217297 187095417 801932516 753961125 931541749 131628644 572875779 985308751 991898740 744808662 935313549 33659633 510995931 40896654 891963414 177280285 421389740 10266274 911132747 864000364 889527574 682109262 756375314 626219558 792626077 587291283 941096686 934024822 956511036 592411893 666986241 350744145 728881995 71883230 369688412 673911209 995903199 83661642 113598471 646518653 899812932 882861054 989304868 245284956 729582521 159273306 815229876 861237887 986613791 712409652 986917527 862530172 996687687 105583845 892398691 467518950 473261959 696810358 739228943 952063731 957632185 860097818 898712277 729940898 822880263 795297263 974574726 351809311 418122914 445871427 593620023 371404463 790848061 417549301 543930004 79172355 534527159 46965100 516677483 489825743 712426282 152987514 266300714 455851859 667078206 34935426 563623311 237463374 255215190 18504038 124613716 732939376 868083023 863719292 874509562 708726923 807562459 376112816 869844734 370047040 672932269 465464116 596725528 31448018 338613077 912993158 969626698 37153287 764443985 159096558 814470772 896569972 980051130 847582208 918141609 989179828 998928748 231376139 749353243 469736799 694975960 938314826 949642343 7168203 242765876 993021193 993905128 421119661 926188199 595971273 628715933 936264318 948905038 431674391 448292437 967133691 981925164 867633443 955965564 98935194 428950429 970937745 990403920 336152854 495155525 219645086 670971165 726679400 786273127 367983312 500318648 630398844 810057739 398566275 613558710 773242597 929606463 515106104 823756232 657855734 862752722 319005055 674125967 964247849 990093996 571486492 826903098 617479187 784523350 321565637 343776921 347313698 905781706 225239020 756573508 624848055 921585058 467745998 719328999 817648008 838381884 795517077 900350544 495983333 957599917 698006849 973518694 657485506 870647103 449050507 564150663 335333480 345845402 76120628 796291135 529151136 819917504 366703287 745702795 43513072 363495410 555574478 968989260 15445985 855002366 696249887 760082734 35584768 709561083 893393539 927670408 292138830 371399412 156732780 621587815 448747448 479519975 735311949 833958212 680560348 884555475 738834043 943017810 383228584 902318500 489947850 801154828 840389366 908307540 446806005 959172314 528446240 989956067 847838194 891615631 198183050 771533366 923273116 996122766 652450291 850333558 984456324 994892113 227468703 799375405 191652641 866189750 166805727 709340593 391746480 673361291 217038845 903358967 284005686 827443237 202532814 834610097 807382277 831245227 513728903 669364952 518145162 675055601 535712520 914593250 333939532 737188083 492808704 723018988 495614222 890113699 993207085 997536628 396926275 877557416 606077989 896709301 107406476 330195447 174780343 216189241 170634770 279007268 976153864 998447688 103094700 596466437 404890827 511639862 123379880 276656516 112882507 357759701 173229697 808199367 918310878 941229912 878354534 901827486 945761153 980424171 433422666 668658382 186837070 934616769 754434748 856258643 778703422 868056290 806119985 840570935 764809540 866889222 238283218 435940946 57015124 664572886 777248583 977706868 391130546 666256004 3496287 877472506 295478008 685365006 383570708 689009586 959937657 991849027 381164539 633901980 769318844 980201098 438210357 620176916 767012011 820046949 677786267 856891559 731790613 960907335 656073284 755050368 406176641 845373169 239783072 756690291 886357650 945864206 760218181 942602909 998927623 999295888 845335730 917526423 516878811 790585171 659354836 720788558 202903226 528346758 315418759 377876462 753351473 763905950 343634395 754680024 45693950 737379316 775070931 897313554 508733801 895290891 92819483 459579658 653790526 942546178 589914805 925008085 438395959 523886918 477355498 649795468 368733399 572878320 409279665 538445389 675670295 710525602 558560600 973151346 166015453 716510606 447924258 601920814 447335455 748744973 455926721 503091430 268831774 599448131 480909408 913558322 168647857 247272628 820823949 954598640 486081185 833459109 914485526 939679467 794710512 983711455 127484896 915998405 623281758 858357625 85731464 601715871 136593380 758007121 724345245 903866462 979929509 997794529 103260017 817105108 322521626 336091662 869906826 912748708 627501369 867364680 459941758 627259442 229882039 727150675 975475390 977819024 51824206 300283333 669740543 740347092 501157517 686556688 181207658 251988787 261479914 796427426 497565997 937731920 159068228 213917538 754136704 900420036 235003993 786504847 336213165 633732287 725700767 937588733 897046150 960433703 850433953 943841372 476852978 789669509 236258288 657678461 942577057 945291800 54744099 379260401 495303696 925986675 614469173 763222597 622472912 711294751 401488324 514192796 879934633 962680581 727701767 956548917 557836323 989042926 318229640 743635993 216619193 862071910 537698274 741637942 855254070 888873623 699958668 923111627 811034571 893384460 721422886 997635951 330418813 961276116 888668433 903813938 498725641 780906456 743070946 811114450 709226104 909413739 287017116 438168304 718142666 859084498 964146884 972184986 53560108 787302689 463351779 595250934 712428547 895357689 241212957 709944448 528730062 879572084 641030690 944076704 840670761 932679231 20382371 507680405 587344723 936517368 86201466 677983228 194105408 461790354 372847622 439311454 808843155 921406810 589139759 907960174 368424221 760632650 749526768 831966567 84206573 734937540 742130633 899892562 85281472 122603150 398904965 965180349 277357487 546050097 37459368 303742418 255648152 904606229 248283768 705781897 314822779 696619158 354165288 935297490 592312456 619440162 708407118 781771419 772185866 808836788 962510954 998235960 741842365 809226241 876089752 996884246 15157188 210329167 8885949 345464781 309103887 465431279 541348203 893741293 310016723 611530299 12601216 574101155 87843996 975685071 276472553 554106484 5066609 672661259 188312028 464667352 927846204 991304143 346974524 376571922 904456374 974969569 38839095 212027139 30101488 968586589 450408857 739556953 381156295 462872034 805571030 982566053 929017002 983665116 633074915 890814618 87517359 930860980 574269709 683634293 235386830 963341749 768843385 967168289 343727680 576328788 513983147 882420374 438537909 674080847 257441745 838864523 885972980 956526784 176626335 200144583 546672687 855038336 262457286 815568159 335013307 668596084 596292939 980802285 559220495 769925725 68816338 452245098 646185984 782428534 737733018 984408885 20648280 948207806 652898448 943173757 207316242 393981731 950492145 963085667 618784432 659361470 862652623 871292856 172084530 968531305 191626122 783654071 69727428 213105066 540473781 849311985 658330203 705803843 259170145 568149687 128179662 174798555 27594473 732793432 479009127 487695974 430005345 789925985 232436645 975287666 188460015 843967446 417880307 577133304 57477753 83230245 536853015 996877304 468602859 944348735 505179954 998930230 999099618 999348005 692340532 848992507 504516506 643207597 647505620 682422960 502165796 860739044 34306923 552001381 554062373 905772217 500581360 907874205 178039173 875213545 466517908 932306399 37543311 619555121 121756279 288117316 861750630 996265282 795214562 853423206 599689362 854630912 195215891 356657612 811941437 816191669 171286085 347617093 509763373 627037729 126297872 810996543 277845601 910981301 291916753 623904210 451695517 541162117 287487761 761195182 528285152 731992209 255975417 550620293 849206351 935673279 901253752 950268699 765891094 967795221 89688308 673092961 570506820 891313163 868294515 886372336 857740289 915104273 583976258 966874184 503857222 729455608 855096444 904703005 761073787 959137434 628444114 825319081 956932338 970767854 408387502 695407726 524156177 902144763 508723290 637778130 387305709 805049704 388780268 461746817 799080507 994915509 781815693 953471784 508296434 918065922 287738098 917096668 740509658 855128669 310339892 933737960 737996073 846891908 225797864 947888941 255683950 637890976 851341471 880924086 308351915 911408451 324385119 624298510 272864934 812009383 954823662 971377953 352726803 480659818 45551099 736617153 84457168 380068451 583664806 705121097 296279977 979937157 49378987 135306038 960913518 975116087 345907926 587344273 278575140 389283370 336820368 643647147 118561070 605666805 189051411 992577113 558555653 709990585 227668257 689836472 264562152 373975758 201749778 459190336 914652187 979636984 113190471 235686039 838981651 997651380 35125134 549448272 503427667 928068997 891777402 898736710 461952383 682465737 298820140 793831167 790153849 918788243 855592803 978692716 630181854 914942213 163718474 304901152 900443047 917960843 926301635 961013828 290546233 746941090 852098896 979986625 773095795 868678112 637568193 786848088 348768957 502831121 658346842 920762160 391269427 679458356 970166158 981480313 930970424 932092840 3150525 648707290 153774829 883228916 421719161 651239518 468035739 834850452 343433771 834233655 364240313 453635563 973526697 975664142 594604802 870354372 877360039 916002558 426591020 486390189 245043560 790198346 775865151 970563597 846220140 898593992 983748747 992020076 354975943 644502907 56009884 694971875 416717628 480325940 354748268 461000185 522124101 690074427 995745515 998146253 989080198 996920071 89528507 207178133 454454170 877444532 957123475 989366086 906211258 954175789 686203962 690622617 879993797 883487870 873535866 996592012 972146566 993829815 748272079 906806290 602115134 945054060 967175272 981228796 31052373 424460735 325428527 786304167 548945012 703003652 621270417 743007376 992694788 999650416 155230772 868353909 772221048 942195067 218628125 727613223 989277801 992315647 331403936 486514973 174335411 235314491 990476969 996914172 418793740 928087803 722677518 865921206 70831523 246556962 957765758 973299566 411034796 931297989 380149015 630116979 98165309 235700335 634425944 966104665 160476291 528714552 45284485 52202624 587607859 872938735 108577735 370093407 23820467 549627721 457698822 493319233 293773827 872727338 478949533 950022036 354083807 519562267 402627921 654850081 85281285 707061959 578795301 898437763 274195937 881220830 784217746 829419261 676951186 832894622 825697269 969108089 833774383 846073061 877579285 904286443 420773755 955539970 256097322 683436406 189584794 413560545 822164749 963191040 796243453 811277059 481234456 588371193 282210045 739904585 901402007 999398966 208857595 395087114 223812647 229931775 575838088 813347451 730324865 818860725 452652808 510652179 338621729 415666134 290286971 995378675 570904045 633493480 171113018 465192948 251574083 595617912 983631710 987039064 838753257 955087238 360214406 743762183 90158837 984363617 315006900 561181923 444183809 965072636 677205086 751077576 239795738 624643303 890541016 985414855 949588834 967435964 619225622 848180552 770869621 933457382 83680458 939345954 39033917 104573780 868806939 874639686 961990714 997923265 310627808 714706695 539910826 839790229 540562654 913123635 149583210 197613144 349909969 988021628 506419023 706674391 221344345 221666798 108604998 593702011 703162513 974391170 110499878 963612897 396418463 514381385 399995185 686249465 814767685 942073114 543292928 622473803 898339983 995497347 427982694 723096037 463020604 641551160 754030294 922440861 390808922 446339067 933732361 969491656 901267857 972353755 615435301 943152541 42326935 96711359 827160152 893931133 111582051 433871280 98018571 822227902 618340242 679247179 772197443 844228401 297251703 900970792 527735541 742982378 57402475 801016574 301968769 933754932 291673459 513928145 881965948 965754369 537299277 638311839 708907102 912641407 918665406 949646219 906896105 943277033 689038886 951429962 951145632 958273001 879242465 972473435 361107995 935689232 440283789 625900330 255888169 412778194 787920527 941060069 842439566 953352345 887233793 962335481 256214042 623951939 819180965 938705382 27651001 902055060 589883678 797323018 706372350 759884634 815761192 921438708 62240976 953817116 640854977 937733767 363397442 473616557 127882148 809304943 196472248 473786815 454912782 551475237 145756082 881881098 2317613 866317664 684085052 836545692 862983207 959609482 309438417 476680277 625039133 912382295 874997149 998945975 193850407 675982245 607351987 871413306 22813928 82615262 976033716 985284675 390179909 941263629 33138665 417933412 33103810 731831788 582588967 906626048 260568700 392405750 557485896 635380138 549486855 684239952 463918765 792089513 581970172 882916272 422053840 875752940 509270620 860345367 407764851 554042593 340344189 767038099 390838537 620224309 79500240 347348997 434020426 443664460 647542464 876888242 552910259 766492483 163409477 550043983 33101452 912421211 839816051 861003463 620434473 833494837 441762789 977130569 19282022 218787282 935150635 994218799 278891737 638542381 998117481 999175238 150283441 485240560 91072603 186139677 325111970 432697846 960001904 977155459 405735863 678988244 540262047 869825837 939052339 997039363 769301416 945388887 437191502 823478219 569104549 688602586 595761323 640664021 197331436 251464771 836358478 887161448 458726749 540625587 375453287 980992332 293608227 729417166 740513348 937828183 982831023 984016503 174756608 681377386 789374524 858938530 336175146 749676471 210829560 602472113 41023704 371384045 187944695 243403767 896131075 937366268 738111065 970911003 238294162 453351709 197794922 324176907 721667888 962200021 843201917 933483387 411631763 571099187 820579150 888575731 191044966 483538660 365872217 985632311 485287981 589128602 252062247 918277915 307556427 890383120 555688735 701229181 945355396 948306686 527557375 692227153 115640908 734401436 570216273 839101957 254648681 851249396 818331044 838710192 234181753 958872093 180910297 986845921 916630351 919877920 412205502 834669886 756356115 816920940 987796901 990751832 22748113 757131435 876561397 891488233 339874154 805341249 731938851 900757640 474496980 939768343 235525760 919483250 534106962 808495295 106776466 973269894 143275121 928988024 778908496 879743753 468933888 634883974 819305312 930871558 224057290 554325571 281286734 804877848 108097769 826593009 95446025 568902716 398862642 793899395 420198774 908205395 645430611 898286717 417879403 752623269 321127319 467599139 991923066 999295191 326155031 376449515 571301124 786561879 68002690 656748801 182072976 655628877 658433226 708439929 422643939 498850732 632607755 775708943 408685657 524575772 847668843 923453406 429723221 943248371 118162938 339841285 235554220 340227883 241305886 265595781 333774263 698285182 426640155 439701415 749702554 876288469 255601353 468895977 2721771 680992660 461033701 613529373 578103814 711664547 636243319 722834603 963926289 994424435 781149968 951666199 884881006 950748141 621467756 783057993 484356694 721380849 55066500 151523915 184033620 430020973 754343456 837042922 127227095 637508963 229888945 742363938 940362970 942995891 901045608 979288323 98870718 908947592 773957853 828477785 508139202 918065851 419542625 635960798 650673418 666739942 960407343 983922743 411556683 680936600 569586254 875880815 630268114 937599273 639008760 751316073 294283309 399276701 728454495 785584754 324160854 866453016 929590119 940471185 95146211 223079446 953881609 979144963 531146668 652014281 26565075 381674029 343518056 469303449 191399623 716687163 27765453 92116646 853612148 991250976 536213171 689701064 44969627 709253126 232394411 712742609 119107542 258681805 30233408 745678951 698971542 830132184 893627381 991274843 343504864 962826686 414181068 970055850 982233739 993679871 119732448 145097907 29128491 398372096 433762657 748831053 455624597 727435922 605461609 958187602 294541488 777598809 347704595 469498637 785789 79786202 919740875 967575382 785393734 901062517 169968106 878019557 552595303 653063989 381165380 498922605 159049739 345785242 651790504 678207306 455490918 717994471 167946625 837190438 480415081 523901819 38699502 868456495 136224984 462180818 914185860 946324411 72342775 172963900 658128217 697846820 777782343 829974280 19566557 424237172 990084317 993242139 521439838 973102295 834159264 846330295 524375826 792191248 901405055 909775277 364867835 857252830 182571232 976628299 18771032 808574311 189260360 417047565 284107297 877541994 321297271 630531530 138146586 455185431 745038772 985402505 975714902 981311675 642899928 760772215 86834393 827019474 475050738 870187367 221846583 714019028 981551533 983767873 556495120 808911225 564731475 820345550 884605316 983850655 273696350 419641902 608526408 896152874 362125548 614105948 100782107 840138952 783155518 917352676 966331635 981168162 238388863 471777907 375079204 888967656 407806138 564137365 336924266 358710312 97458612 847784925 187132496 516591715 514867842 629885421 181460271 345951026 23852173 987124998 415042064 730638877 341020160 454631322 424861470 964386200 662615552 940184015 498972255 747592988 995544718 996224130 419093665 870265996 650024647 932362625 886665212 911931097 714839944 850404845 937199380 990919990 937272246 986359336 268815075 324174501 217742546 364255881 573017041 747485568 646275493 864106771 777532509 823837648 727581533 910919882 56780363 736765619 558237767 563557624 992710762 992995261 123632291 234121179 61561314 687144952 792903569 913356785 160002693 375693533 521523646 762062203 821781132 931857717 990406343 992694579 322058048 669842811 505068721 544675460 63616276 404358702 497593643 749392203 658401992 815859520 235593607 560359110 66306754 710710578 169400547 626323947 886314049 924531758 250928109 401808271 546185839 870569604 781429188 843463634 946550618 954691878 620292500 843858846 924801086 954466880 527223821 971950092 201168218 684403213 921797080 940358699 953752809 960941217 991541046 999879100 10522890 434911457 87741923 568693681 831885367 975250372 481073841 861382575 86280344 527817532 20522955 733071154 578268587 822022072 834729786 953326343 550374628 997029511 673677090 987580404 541188299 647175168 618945951 915567104 294106825 301613164 32898149 977239039 503132282 847021863 242347841 838400229 423103780 996776191 858526463 969901298 787503769 878158630 174112053 857777907 270792288 919295049 597705421 965991392 48126412 399106355 359766905 905787788 996161522 998869394 388166576 503713430 503322518 760726490 345285410 402628192 267348124 366298041 459827088 601340313 796808869 963992730 154285947 409421684 246441410 346974074 746991879 966977495 517871961 687527673 423591043 674812591 882148833 932821938 930704918 947431464 466334754 726373196 955889568 996822876 327774805 866733017 570731382 754027836 419657418 427241827 543955118 749201987 941788755 952371343 637640158 756349338 632194426 677086437 52903502 693360729 616673347 975604662 973108205 979491578 182972304 519977142 166296611 331858638 477517601 583124379 333582448 847216840 416983166 542918737 909434522 929704448 752765949 772662206 105057064 638994908 111375377 305152004 71586905 108897385 963904635 998281336 930082197 956651534 454859099 623781041 594419161 991146610 669100485 696001430 456915956 930332089 233814427 903713134 703755273 810634287 983038772 999357243 315070478 638094123 515183317 703531714 400306358 772481566 748074665 991014316 553499559 715343487 902832551 919028448 167392592 290752749 13755590 863107186 1177897 365304682 12986492 72729200 945793096 969786724 881030512 901518655 235886117 580910520 942937246 945862706 242294257 616093426 215666504 616603259 980636099 988446103 963677221 983560281 53011271 914803978 274181309 402593744 213641144 261763412 871869490 905006941 287150548 938411220 25839243 368759771 254270655 789438661 9124094 91278950 826095444 882662729 807113966 981642175 898591754 911175058 731003409 853216361 481284554 559199015 949697480 968238204 150516668 763924760 275023234 887051865 752843919 822428708 986865555 993254503 524059618 822817450 856291257 964018119 99246799 658652340 209250667 230204014 671027296 884216184 266095795 288286573 144348065 531040963 53263463 705204662 133652090 413731790 812301076 894598262 478713692 613933176 551871933 603315625 34359565 989531730 522446589 764634958 544968107 581534847 762357229 942775150 354126624 833611051 874956685 886250316 249086210 346513929 32523766 456604452 119049342 881352258 116745262 574442256 674321284 888173561 465208857 681317472 127325623 835907369 276415469 362256307 750068113 826971027 248465646 673403540 680843581 757462007 854350891 997821833 231625861 959475673 399037437 586439786 405381312 827819062 89302591 749205869 776901808 910556857 253143853 339498655 288609775 825732696 37076342 275707944 100513504 585576126 556738604 919851503 498209770 848963386 705517523 849864293 20516110 351629994 115449708 124848964 731926041 935729731 864590763 947551894 811148655 936964765 668263187 884123990 280205012 802377990 595804649 627601568 289277402 645541400 803464919 996886015 366613635 853479565 328538327 796724331 780543489 964461728 832757454 925468972 34247342 358971158 931386919 976154817 800536433 990449608 473436458 950182312 734065346 756895522 38266555 448389176 911338646 956434542 136450947 993449001 349759568 538151420 627047319 740154021 22717773 413320193 360394751 457893824 820232437 959007586 655770937 724307018 507988289 633468828 88273553 330728302 417741289 908795355 37903702 414841432 930803247 980671854 954048675 986039148 147428499 950297066 487127583 914504853 426307228 875493347 60053015 276090718 769838787 804307116 629781073 766560997 540087051 575351660 58485011 314361181 816839657 926744409 797257356 948988030 31303945 927272095 839451189 955946813 295375823 725910860 93122217 698456628 733234950 799900358 263055719 349717801 562602980 581769516 825769115 923390647 637613358 901708335 21005959 990027138 652711006 851399385 984112365 993665197 402922525 847667222 858483115 961987237 750533130 872751803 243722464 586375253 300684257 829101247 578841344 632075928 415324781 570012558 819409160 841885919 601274267 624152934 637274189 857931888 196796734 698977077 168120233 189198934 227568750 922592609 200703849 223896140 965599740 990996582 95455164 480316647 120127598 439749052 83827595 276646749 688345274 799512686 730887667 913030640 836095704 925648191 210883163 902000259 301190569 643836567 593717684 633569455 924764579 988751580 319389720 859500295 749981726 758326395 310284815 840778172 665450421 915557195 392528198 437054261 606382619 882403173 855074330 873561555 700971688 799586879 233058049 347224635 470981546 918967305 899705527 916575859 91813320 762146451 100117262 716584504 137930211 415995641 456979954 909356739 345504378 356267826 728171891 987786984 836248148 980841037 203882598 719229593 198255810 582368207 317731211 539916432 592333323 785556158 571669992 841096041 413029587 905366142 665618709 910471876 106791188 831679204 942845023 957872306 931632180 973406363 136278827 557338042 74090060 461250265 36150419 661512191 884604747 904198539 826074970 895913419 738829386 805017758 95539532 959926806 519763404 945529038 569850624 987041563 933076304 998562936 397539822 943033290 205217539 861936534 903701583 964549995 640172928 879280230 443542946 666754309 910098962 998848565 412511491 468340699 251858171 780681122 979177383 994261131 925954469 946728794 760368809 787382715 823782461 901160492 149253843 824105864 153108022 604330097 272603000 988204342 662376500 843823255 312740269 708241405 916208971 973743596 240873618 554546003 101325875 810531369 960868914 991074951 297405567 565548692 558202678 620784366 449399882 872229164 325122628 647172282 972750068 994464018 174219140 237780389 283049800 922245617 484956480 906532682 169085013 402297723 449224422 572659270 31443578 42862820 748108970 900088922 500747942 652319074 821904156 871210736 513132292 657867996 221606403 568916949 72334337 970819580 707898072 932098573 624565766 729701921 754018498 980519960 281721710 474331003 385106439 820438901 270853292 534206841 124644250 730221799 807356533 815619702 95540340 884411880 197777722 801486409 326548857 596605994 189669729 299130187 838402046 933017185 951856308 992483272 518621217 822572545 317948633 534046568 768147838 891149684 386410920 556900583 84688024 207156783 361488920 494999310 176703435 703955622 869792355 962884663 286656511 508623460 64980364 273942408 141604387 375787914 36281849 196254661 851204616 974376949 969646665 990573735 111779564 259446919 22765729 153358010 157564993 647396871 346480569 868689591 804035699 998190775 672459865 743441240 289650439 365829016 110990389 754409482 74695858 392633363 23577706 183669944 567299702 642772495 292022620 812246455 486832143 906738998 296997830 663541397 396077165 535053433 599682370 718248049 292558994 989977794 52257707 843631540 667365094 756634764 929109100 931995085 875899781 997332267 137453238 905333346 506570055 767321031 501498311 625845176 114789559 402141894 302252008 848719110 139028490 358431111 733496526 865377351 747856994 757395955 773145781 800897691 491613643 496736116 174456100 742065585 136186507 975831259 49394766 752386136 478096484 661872939 287087821 378474903 674685831 849527610 100238635 804431124 258445359 591095918 473656650 957753123 483699993 634423944 416252900 806451637 615062733 813482971 970885538 984681337 65636630 570410679 842048267 863302903 948005190 977732322 996153190 998952455 828035669 867217205 51782578 822592014 923990317 996432249 722542888 889071075 927711832 966778052 166365567 478365782 466591349 676856705 309564044 423591168 486777358 545185657 22298433 228185270 488145636 658012100 69674333 319253710 813799197 918565957 278884398 675445023 769217841 830703507 465752644 496606152 555842392 582847801 3539254 589938073 132207166 889398231 761310269 906315375 556473111 580448054 220794673 605223475 632838666 744511384 562614546 761833787 519990486 953008927 648790293 835639081 202512079 830148482 619652888 879108555 108103010 376642875 454413005 485954557 60736802 957516962 920597040 924227165 817980310 847286024 901242828 974385690 82806970 481393160 831601433 908476100 995990936 996253840 393118157 567704774 135448939 360823032 363348031 648930310 768758904 932572348 554773244 566449153 955521666 984156377 69613210 645209031 233180710 378615657 420347818 891956923 918710829 986103542 523608688 691825445 622892843 916035634 752452238 813848614 140770276 964087153 133690831 729809672 800761535 835945813 821805613 865989128 241863213 516305586 599207696 809672648 28610279 264406482 545875626 995486067 664609301 941271849 563400204 702500723 734688522 772123770 868436720 925656388 514948870 616679702 994413090 999394666 139364769 412867221 697467894 903499395 793315052 935963411 809500092 994824667 578607841 730967804 420231011 728792529 181604126 871321005 863431732 943780788 925174220 981317743 803778378 862726025 394247391 838711561 313658721 393554369 598279187 696454211 93976544 204846881 90969910 353895603 294157955 430438096 680812818 866795385 22091587 450875731 710032444 796999645 599166231 719552837 782497996 969622523 250111625 754764271 946026900 949871818 624276073 680313262 713714990 972626627 729257896 829660565 579653498 853560680 139230377 307177329 394445939 812230855 505831450 656179290 582107055 951094149 112000020 547862635 355726403 479799289 982823254 989922916 959758923 992310870 164397480 213706367 169378847 193082397 754257129 770878207 672271602 699932030 156327788 730809030 51584830 696234103 307088785 969444108 381147473 862506546 7341593 471919363 404740016 607948613 95922116 401416260 988566186 997524925 964968662 977382720 693526717 817304182 431406272 720162325 203143097 824528929 653176685 713828047 520137468 755597988 285914074 933567142 750091976 777770343 632215644 632712133 76716580 915198803 416719330 516581245 763303768 786189118 453870568 955420676 63660713 947843786 436949869 573886588 582970924 908352322 429156268 610464181 450175778 783708923 456462018 915372989 375126772 927918702 683296114 974797213 804421996 912828778 235079610 291828207 614730438 779102009 195021220 707333893 908760252 912395802 963573873 971028661 407558529 643802404 233243446 558647990 944662032 996632508 266905503 340647703 108292776 929979616 395832748 410882267 778395254 955946557 425526507 596449211 76844499 329917972 856070450 895085406 802854200 933507864 402062561 643648145 642569437 902594957 504242571 607941824 242471218 410648310 536776728 882445845 643183068 768138674 718123092 916081769 113003270 592999588 551528639 858013451 59818346 989600473 757510265 809161506 237902036 588000613 452575580 935924017 352827990 791880770 402706002 446067869 19131318 393979919 783429921 996681893 941748939 954607421 356236530 557484968 905292923 906972650 483189796 589252099 308439620 399083228 214819614 345335570 530208868 737168053 714540024 976744361 552794886 852298529 342778673 599265742 326773541 518362330 685112143 741428585 402431729 956961209 159407745 323290823 25403193 522229710 140769039 298169782 315031722 627029274 554491989 726454791 376135755 607050573 105011653 394552341 390090546 987466224 411683816 757170307 908750343 955817599 518761762 885923511 531284999 797064882 134098676 731595959 361302277 454250229 584176101 672066856 557337462 847457597 31572558 806000930 4541908 592818502 365969617 572624282 608629616 895943348 412789507 637283249 176665269 355037631 37609404 133380569 989825774 997979347 627605804 996759026 990918637 990960209 551690575 764607619 558923213 638597132 985850589 990222218 705316968 960476497 842389997 949753252 585071221 866177419 272272990 382045794 598652251 856501529 536447446 827582171 821026829 831592480 434035164 435624023 144069530 623981147 265208773 444016201 76517855 966319068 342930554 372483992 657200658 897993004 721933440 914725892 932289746 950211262 203146826 997687200 232815775 509522552 397453691 489436917 740535158 927924649 693515892 821664134 863398785 936776327 133672644 439282056 736143778 949608037 920003577 934085248 370427542 537293986 832425487 922793794 53806527 469082593 641932711 775927432 115892143 606404188 259444113 306845556 667353635 857300469 594793694 823195471 415438577 656491662 555577740 759988056 22994200 336359500 756809526 999264045 838662089 994901750 177257848 278193823 984839793 999937860 531614163 853344167 651884590 858347970 128128744 218839529 101633715 109120139 131497254 762385313 271955249 658799837 374603319 997889113 432715460 715622068 789411812 921206790 120924503 381164094 189832697 721182697 996467552 997643663 184879124 724321993 828165978 914815934 963769805 970615549 857050519 864054228 852758076 949850832 813299260 901749256 116745451 865208519 200750305 670829184 648774880 808485594 335538561 941888771 592186848 722747236 240339011 257575262 854047491 921615897 964207162 998980709 683681810 892884912 724581757 768573141 333868829 406213241 649688700 666475561 911737377 967183219 975499801 997627378 911418155 956948870 85192509 530363591 748526344 843036770 772058394 841868781 351008863 855024115 807839784 953775038 708638918 972754871 295781706 867173041 342027260 647429922 706182427 765009030 816129396 873244324 294384086 434077316 723488760 918534327 744176959 837287761 995450023 996263784 526900538 570062248 502020334 535058302 440990843 923547320 273490653 791666154 670524094 722029413 529950709 905581649 811368336 846107451 744298427 795349195 702490029 707713365 22549554 144951710 893654098 949738304 753797842 800964458 593332920 662704978 271076885 365244898 33519624 835895974 635082146 901510088 417366885 494143598 216389818 373544239 47760222 81251641 377912279 486078170 595000278 861953038 675167315 734302390 124577224 503762353 312868894 829029651 645937088 649431725 627739061 861768653 251683979 644776500 271461572 580353815 491276851 802663822 872601318 934727607 80885602 815593752 580962498 943330679 716560083 812872731 7007209 699002821 553130485 801439458 665187458 737869170 249741964 847234662 349309589 839156953 956060469 972500060 401603788 445354609 346313004 961761358 361276053 403051737 72259387 472911170 396261338 766014402 367474127 852343469 610330112 674382056 18348417 46399196 809725355 890002084 253650213 670809680 432136791 500579314 876893711 883844151 912610162 914719219 837097814 949171821 443041154 662878833 153728775 600119701 271787767 807105814 317702524 390555768 314873436 534718513 84298579 444147974 668383360 918998872 901640544 955809635 186225420 845515920 797178234 885770008 10374070 663597108 578714705 859320980 338841415 820781789 834606467 878949454 252745835 548221919 883050093 975617351 848122973 865793078 16029249 20423230 749646184 806184194 648837732 748515635 624637847 748659765 558862837 866040849 610135077 886100013 29154158 570153442 910493393 974298772 311015729 396981779 73402336 155295910 668796695 676939586 390348167 611097868 191167233 569183353 759444631 939772461 425682270 619382443 405814429 685183962 966675842 990703982 242577508 322243838 685535632 892081076 317159505 858801757 138675127 823088698 487627461 939710577 741392205 780882335 243250077 901284989 825765978 927427935 122566663 232662690 456419585 756416519 260433787 488002797 429696255 544187955 626584416 757752862 338386553 629174434 936597789 987853492 68713722 204730822 43428718 126190305 124370618 495057385 690447273 959361683 11700777 371763247 556342236 814672122 758732361 889555469 348446779 485158979 469284976 883449161 16549505 272374888 396107525 723021796 300222172 978349299 643686557 903667303 999453216 999845330 791305911 940688545 984129407 994846702 367350445 783039662 992632987 995338374 482609323 750754838 805024282 890403302 69431292 475174762 660377011 718454577 540464913 794930199 872309242 909061567 531308116 684005226 45905169 244681817 288431406 817428190 798412133 979289634 598108629 681467033 979061184 983525196 499180847 869131350 751697846 954690874 895867303 957611758 695710216 994237464 155091451 501028283 171193810 289571217 404581135 487293326 780465222 808981359 757678118 886502529 910941820 936424295 640065758 807265090 575680185 987208891 604183863 869846377 819786684 856415634 852724528 978241377 804027336 978371751 675841990 813826663 481229162 638638946 560885393 765324060 8242494 217954490 394564468 447695601 42331800 245948081 789318981 958654621 22066983 885562866 757428413 992628446 128575487 308007890 949365700 972833610 751637006 945719109 189663272 647065912 13059597 753497706 917389707 978696028 169391002 322877155 87586867 868156251 299310197 518704232 599600009 709415987 598781599 983741102 500857013 522351987 888040161 975770938 430796735 811286365 717259377 780718751 231569794 550615276 522038613 995370894 821372111 951186286 509394594 858293099 769969912 909227602 866701496 942649337 949427542 953773934 309733534 641011345 388086663 668761884 616759421 901556660 458567939 467610668 791302433 960739494 661219081 904693412 568977768 799549753 14941034 408104384 703803761 826995087 445779417 569855918 2577565 83672083 765228389 823612079 669752536 804662761 68350946 667546049 694276743 888102696 439564643 488519184 40244881 863043454 933295597 957050573 609180064 652847006 515064636 802701282 883710094 889465272 285215970 522992224 981865527 990283103 295125478 330277502 771488503 820446307 795784264 834261598 146046999 432598483 951581803 988570095 922237103 951204534 849229986 914380955 353504778 763153796 542460641 716323489 267716623 917032315 775825838 857319624 260130403 958895849 439581854 681873953 799232661 941453394 950565542 973742853 355010234 767191156 245685878 445842751 668564457 974513453 566780656 989200278 495705208 521298591 387176214 781076665 663004842 921598297 978591924 996501982 335329867 384980241 204741193 962382738 138993442 724000370 588080987 826297280 743449678 935316635 289864564 966910401 718099534 845269054 382010120 737435369 951923845 977595307 65162639 146432244 976546100 993294761 508218208 746063751 348376846 816591676 159177020 829125574 626059081 643355130 1668714 548377883 322505183 831571724 775962699 806291038 757995336 971491552 580274145 729197635 604879592 686791744 845190328 991533353 688623859 904136526 614635716 755535081 100910540 683697223 139369981 482338268 943316449 966899206 587868488 702680598 796144749 952677838 800106221 808477937 991410782 996198795 836653236 902427125 473849988 901042093 395350057 731125184 835731519 992377057 893004764 998532242 816910755 879737166 525355837 839921442 176802853 582108406 721271364 767840707 857972893 885474343 522913182 576973023 2176131 510584709 965284279 993536048 142994498 376505742 739596457 962079122 112666346 242566731 55863404 209332576 871053113 999854409 715915048 802323443 257575812 734143995 629914365 807211823 851895985 939330636 558748268 909993856 990275541 997850047 339159835 876584361 951941326 987433803 978326839 990423346 255419232 932320879 814237861 953548388 275745680 733592654 878911777 885471988 756226811 881526632 170519917 869714158 247563490 802601937 720747015 837552093 953786906 977816945 516027876 838407037 196800572 833163763 101936702 168781340 128728145 395991352 651365882 954608963 463576918 908012607 890247249 991342041 815875369 857442970 957048412 997992225 755585736 915462471 992855241 996992056 794312304 992184309 566317732 579027123 475280221 802398238 669068009 784621175 271193208 531650238 249769893 271529820 448513702 564323796 86316420 119468963 452959831 773707905 976695924 978028940 18442792 958002139 278884645 968380455 460942651 473149471 304563638 567498908 267031919 356025473 563706157 977619711 57643307 759170680 132720239 337896548 813439772 972367525 315522251 953377895 595582387 614888087 349622555 937587856 253440044 891172683 411528271 555676568 344798929 938676963 954705208 959219331 713947933 892835299 638669190 906083399 368063123 914574129 697170000 953956486 212274784 422282241 791125561 953781216 666873382 895954266 870901134 970488694 97997202 747279829 87062571 333946310 116468027 666185753 467391870 947969463 194602124 848574370 275004441 737754247 698402915 892936172 229731904 629394017 906541261 911548357 176812725 328566548 856020453 904783920 708607458 996716175 525968770 750466845 601261805 737234855 11583457 506490681 149195573 977826707 486099497 665685321 545002914 847851428 643978150 898534300 284023118 903004235 162032145 692341516 152001320 864718023 525397724 552506205 659851218 727401833 258528527 519603695 218440640 904529902 514934729 859406414 916144029 975616318 767649968 812364622 303385183 851354550 386456997 400674216 520167520 975622493 430431674 691031089 485831679 814765751 29830916 810790866 772221373 849878692 437039656 940267353 284213879 663824718 522176478 712234275 124828680 526480473 162529440 719899524 495208117 553206509 712102012 788889605 350665579 364967239 403350715 786087500 390127306 787434640 897333766 913350410 485107428 862126678 597781083 881707137 909397666 965222898 438937625 669854135 495968043 510351282 34154881 949136512 938360075 975073299 997468482 999963678 463678476 470858885 928220033 938070292 210567700 590353047 229448359 954745557 519901580 925698948 470935723 843010515 531224962 631310563 580463034 750912635 178864661 246953231 811702795 986465426 512818464 935704263 124662785 347804217 292218475 437265940 52910364 351070657 166096135 475446524 910838533 943814431 889262622 942095458 524786095 697184637 546341785 818248339 116793971 296213898 104001672 958062177 529649689 978496177 216096085 297959711 470717726 529473041 425224424 591385438 64643065 249035032 864126672 942648085 138695838 917886940 4774278 718671757 814382133 922567695 572444923 897190904 816593348 913241465 463193401 843713319 246990662 671704914 261440436 808691395 675789347 774875129 78047415 474866450 656811526 893091319 496629268 505027422 585201688 634098775 879736258 921566241 451985579 794358743 769892996 945881790 6697921 332272181 73332807 512170745 834688893 937615613 804015367 832957697 458175142 838428433 58329766 471522426 748884853 754894049 920742981 934800995 628101093 831442817 393908129 640401149 323511978 944776035 120005456 901700734 183072488 675143183 135760637 940079813 23887306 927220411 42275306 48090533 138260407 168045005 295459325 994263664 289088031 833001460 921659259 954487544 967717581 978838347 124644988 715610828 236694409 651687611 423576389 855779077 556297203 903929139 738343964 763373247 814400323 963619297 862012597 941279422 816656276 976954309 231804884 381795070 191400554 391345938 517233523 597986782 468233670 961607160 39916605 302580535 859533040 908729727 583815629 922472329 789827398 936254378 418373193 897508854 150517763 739534645 462607665 539381522 846600622 866623299 936070962 953134079 709112485 872195100 339470176 929790855 740374534 783155515 388248365 886407587 611232040 892950875 813101796 961325857 799991839 942462257 641912684 880223113 777301637 892668540 116430021 599235439 624015111 870343471 470625020 535219557 403698694 670014521 246116305 450861345 288822392 888596273 440479681 679227963 363773562 373142544 247017655 818785507 931168800 939529869 374120917 734718870 847409184 963203871 60197831 742516505 181528847 958533286 419527834 526515670 152972686 444371511 250416784 523989987 163765677 610239510 550306392 911332101 508189783 919862250 209088736 817508894 912419901 992062582 504176891 964601111 249052606 421852192 601208074 934086219 978990969 991867042 71872846 758835259 35123844 152572491 632783193 704460176 999617586 999999749 955960426 968794767 837621580 913691691 143522456 576009481 430834863 794869773 493676955 921469802 134446829 397571836 529823601 852678268 521361551 766583535 208805756 698795079 587884297 921325455 885725862 920793555 430366609 921737323 464169538 743803081 204321095 530045790 655185064 668003015 375128251 688506449 823266395 939035476 533256843 746621677 404775031 656735317 988946476 992577461 796115649 958676287 960466774 985581525 891788527 918366006 465216110 983129901 685997195 890708868 277145419 622064533 360262148 572081834 394322070 858091802 126667152 295359586 840777931 852868091 249095746 471183342 960090524 962197255 840141267 893201035 530757564 850849707 141145819 713705498 425493958 438216770 522167408 945053603 948752527 989995652 546837189 881572236 121680343 188182255 721294971 846276858 823498462 948633483 74966866 492966796 923546494 984681163 408612306 973564506 48946892 501258357 541363215 641054826 347447444 677315975 16246486 163846110 346471660 807244926 156355518 627006335 397222401 427159562 118575548 252858361 937697605 950423233 324916170 445857040 991088036 999039163 55212611 745099944 952748766 953501131 729675899 842998119 984444420 989488068 708367245 771411142 489482307 839096203 111849603 448704492 773751644 800846606 446376840 997438768 648850257 917001650 529976337 635821264 636805054 827372984 14921063 363633377 548611631 729968465 655326059 879506527 811616609 876746772 207599263 879995371 986730866 989175532 974772174 989293129 513164550 702397135 121426674 501918802 992442492 993504006 862807421 949910326 23482024 284791088 641837655 912006563 344587350 717111838 596030321 659819943 779151153 918528675 675362418 755422211 867970718 877674652 209365326 822927820 780569090 783958074 951927917 985420203 82242704 721825233 800207030 906833853 4129041 782286223 329831738 792627434 173683165 923731869 250098511 989076037 459323926 514928761 864785954 930315623 841630629 949876361 734912275 771066297 864983856 971467248 170605456 704414986 697105716 942902191 517057513 919312743 873298279 906890567 641684040 825349747 208722308 618576601 147671149 672831315 263558773 542388005 471072291 877083840 345034057 750812429 226721303 363957543 830847865 949835119 366698891 709459383 588058397 946924014 405124218 713619344 783843539 835532794 968045349 996224097 925975548 999763252 102912910 949820928 459033895 852842800 21694077 583279888 540837946 880493111 504599205 614941553 726823866 939080022 802371682 867608243 168045139 895558696 555012202 815326846 646755480 911469775 890390409 923116513 442615566 587221961 871312755 976780406 825984578 884776945 393630694 994395834 147623729 862063052 561290417 829901450 314990756 584133585 418811063 942680779 603396907 986889968 21370987 362361022 839895700 946926276 851056769 915972466 914447747 942009985 58530683 918682210 686161663 821447161 350199786 713424731 378515436 438961242 281194993 959894809 823714010 935765389 386842049 649360593 334013013 898750460 12055829 415558949 233813382 758894846 450326602 631623749 342097456 647089474 92841695 147005154 363475427 680076938 843933848 935887052 653491366 708987835 724263483 833552507 28475952 912255669 894295960 941907104 692662210 826942342 13837866 538877883 850297202 944735664 343257093 576372141 635172579 656459652 458800122 560875042 836014477 964914638 958634660 973873304 152305042 372005660 880156376 918038088 196407935 359595896 90236910 516415628 998617594 999123715 840252655 909412013 715075227 810877687 779200798 829718599 428105167 649144072 315801788 975042248 418384070 819639227 891638168 893491449 825318709 991911499 414483899 746336766 956752874 990511995 273053993 293573683 561945399 804303926 263815090 396121758 96447302 106596479 182130961 221096654 25757800 807504780 85259030 400783046 194509484 901260815 782586240 910073564 809594558 953000603 274447954 620049777 244711193 860529266 818293794 874548487 637125050 740957625 261229460 327990287 238499597 630987494 855013176 995707646 643836223 662258949 128377226 751245716 128092299 488472552 465814309 487168595 698524584 887427100 134436008 875180366 648240132 909994592 678587573 853138552 388966346 821045315 459686405 787777488 846503141 868031188 199924517 216263961 823446407 949632142 793714339 830345577 481510825 857324468 980442610 994159270 638108964 831389557 536803031 609792959 483024985 668143882 620234929 857328979 526380209 813815520 983083260 992678352 440589677 851533957 229781972 813957126 424760229 722930674 677832884 758364637 93604950 971243302 399470351 978637818 867665567 926327327 705475928 983304870 203071416 696690332 833333750 981694055 530372095 936935864 143288187 178848477 502697340 870088377 456193618 722015965 703785600 858307992 387525355 908732609 933534837 981867297 7675784 910939417 920921658 945523211 145146547 164627053 242503771 892359443 721273085 874816861 64486851 309353572 21443586 248463004 763984851 831849109 989834444 997431766 904734817 992707113 298948172 567219131 316560493 789955389 806263124 988721053 718072116 827467001 467050599 605824349 250898504 407799063 356974487 763523567 661379673 960648544 938065492 947212029 951129469 972901117 720997501 772583161 741628786 980651299 344744826 503804055 56379385 571594664 429753779 828208901 898578245 932265804 469058622 615784567 520958864 694620151 185162717 854488548 8700412 778859195 524007546 740724335 378009167 620172085 610081894 904563422 956336331 999299255 198542290 848045719 686600561 950516617 443816942 472608032 697997491 781435247 571860807 724340722 668425943 992539215 118761044 597630040 504574726 864216765 198632068 251060802 606813126 814794462 224423956 639914017 202240330 884688506 820510936 989560394 390296145 631847980 166541619 925776450 209360542 963780882 637426376 731722872 6156021 578778071 423645605 490290833 367430088 662108896 797065872 858050615 983639250 991806670 228511710 924163351 371256308 392919591 569249813 984597411 587711539 969159059 180287685 503754420 621469090 808293371 52103274 930959367 82541498 478150720 522554822 820510434 178586385 694861878 379837528 463446403 969501603 995799238 478523008 952913752 974672766 975353840 210579096 962301070 294225486 735207681 994553135 999833725 535459247 736802503 878712140 960770934 237475683 389520830 351786791 763193454 106112259 794270342 15934171 476179914 861758693 863963853 634776969 854520186 151042362 695583619 518972747 673328275 388412663 717537451 361702531 688257860 287688054 559538856 86237696 285130126 78502600 902429961 91115799 287190298 991159548 996343122 202067584 555126358 756956666 892628147 342453721 360885229 940950944 983316217 370783548 647879283 448233568 506043112 141654947 855826325 384354543 852178770 443893288 904401564 350298576 731377058 748170997 857403497 874966923 948949585 97487655 928803099 624205924 942235770 900780855 987783393 321252837 367754020 850749340 932017078 346676738 523534492 336093867 476513279 832704009 967237010 937462420 975508865 148444258 535619576 702542354 920396052 335108540 921035438 366683988 423948344 390481301 509406933 216863773 507430306 474684397 644406801 715834041 982032925 42799911 848341928 254514643 995764043 531080707 701792023 17665896 287428894 989423180 991431631 653487569 683881621 880536472 990085215 995853462 997998274 250176630 688620609 105505869 948510815 609483304 804120313 175602938 181551660 89183553 515149359 830517384 975633360 295527487 711825232 217665669 620854202 700733016 771095715 847986644 873202850 397908669 532264317 193136272 549662252 446518828 876051413 758710620 954644819 588544642 725831385 826077721 956735151 943522723 993483542 17227368 183320553 337321480 371259933 935264960 961180006 71848765 448701924 646908468 862004287 769214955 793719504 427983146 695918767 134183855 819503477 304352512 506652527 990018750 998775970 718077571 814914876 26704402 329414432 917474639 982184449 758303338 948950110 825512385 870078961 712573750 890827783 98913537 435831952 746337662 958718419 516289275 925886275 228824821 416159163 977975167 993326043 177558671 622865526 172421395 439934793 252452119 641122791 394219071 948359335 842838580 982388658 70955899 934233244 193384030 782449986 319917101 981260750 197272004 289788057 905906357 953646802 570005497 836116124 792852578 820238121 296049663 453579492 892358797 980208800 547396846 629114341 313095003 776254870 566514101 740510629 687710218 746557772 325124120 476228464 773460301 915389345 853849444 905392737 406942089 554835737 657729798 731483957 292101231 569327211 543500858 856996940 367087522 498546344 700375990 830742036 46024605 369777643 334576858 903159710 572275415 717778170 168544118 276832302 431990760 863749627 858568524 966658066 832517672 984755843 50194721 203055114 900309044 917857550 79647921 447675554 300815107 306332447 656020723 751143508 944190403 973172515 981976662 997961763 544809932 747960384 281300385 346045511 940432760 975676129 972741633 984397238 13319578 309129089 618752460 766073601 929168673 931152653 200850307 473505497 647069234 858523537 145195796 661417927 87382200 252236699 856473212 966418096 321995817 653534876 749150159 774954615 336932413 354551677 686854627 819565879 266084594 865465977 635047676 839096754 343358172 412847389 581315236 906103480 418365526 914697464 466344081 764904156 519198752 925323743 134024834 809101898 982653002 995243402 708716994 911243432 898704104 970071678 398541529 539080951 487798392 623344494 394400220 862830837 169281068 355374909 167682761 178892878 11956909 643573037 206811848 773400034 401038939 706660303 957326851 968729849 647958497 911082789 336372561 900176762 527576676 567025463 986870074 996131882 120699364 911619846 639232609 771924847 893326251 998811244 632257432 763087929 556305505 745985835 52084619 686600845 857568765 906915823 418557986 638897599 779737223 932850849 88433310 671744616 614295181 824778875 6180167 623392638 262446291 559830347 884479106 974936957 462213734 544467865 475225326 826636769 607761979 964820322 341919352 590360399 354453446 829940953 582847208 690344095 368263503 716277785 961738362 980013683 853870518 922708518 18568226 664399074 614112981 648384159 746712908 844271988 237993372 792154852 302954796 623759676 176834062 398843087 28969247 364847009 484443461 954198653 69748322 729645272 514301550 561789817 244251981 275915133 766753633 890198047 475868957 676995591 717082062 774190040 448787301 530579645 198674671 344973830 624050397 921208786 910782348 967793213 308863240 398828894 632780334 779807845 482434795 777133056 117574187 154037152 905271488 943234943 95606677 343135566 217346255 581387330 640688609 750372773 352775631 524860264 740798948 913774646 440592732 592115549 998720230 999694557 428983245 679706646 894433935 992138750 892082024 985695298 442799389 500343924 741312552 848414279 978673954 986904357 375433360 464858251 604902768 776705682 915193099 919101265 324400905 332789604 750907838 776966594 858051024 964500248 104545245 814795944 187970433 644381012 364014566 544950577 157649323 331845472 321649429 976597563 203852375 356914517 144080601 186912343 700311829 989593993 911439462 964247708 386175260 540349256 466225506 686921164 507357587 607819585 299464311 585026618 596292106 820606993 287281009 742732887 361291808 892760237 685901282 715488726 241552274 789662819 398775120 485198272 833491733 901424038 202746590 392131658 342038329 439194544 845900884 857796198 842744168 858391477 336971829 654156156 172189642 615535191 26686272 342711135 135944314 944851436 993665099 997826199 8391349 458256641 124943693 999464277 101281489 594163890 953816784 955964741 326994753 783218542 954735764 961348816 404565316 802378809 689453955 986878194 897304582 926579549 571798161 804441480 665476292 999448734 709679474 953993969 17308450 430992820 746503355 902483049 183119887 771240291 657485577 778264674 854787605 879947712 999447856 999632024 694222019 817309046 884807810 927945098 351207733 777973168 373941670 914566952 805217119 901785827 26568896 220642911 99430407 847089342 347886102 953337421 906984204 992728997 534708674 542500921 738221237 893896492 38719429 886396441 206925879 812537557 605557178 663492672 693915972 925295000 520325173 765706367 487023730 552292943 741466333 942743654 947176792 964916370 606986139 794927757 294280612 598446471 430236964 725172279 464500075 668208094 259669480 649295033 107501146 320870219 813075163 858481277 539453856 761687727 733397009 918699501 352337092 856210008 504130810 532026229 945572516 950286728 449512338 795050400 122942158 243670294 510200949 681932629 678407968 692521865 665596117 737507568 124096237 302319709 343533486 515214518 566995026 861286243 714934975 778752279 439758234 460636530 577024923 754660688 164034296 577199947 178293904 865725852 829239640 972805439 65512003 160371276 414486584 580531347 823246164 909873528 519274143 817906005 315364742 948303486 866898225 904514529 748583893 782645343 157997097 365542026 690335422 913056461 490256657 943856612 193588498 415236285 343998241 963399218 930448418 947767032 418534854 971482492 590555266 823185814 974875068 980899003 674739641 723025748 611389335 905281846 879772375 923590137 503070642 814883504 698737449 958469410 715165019 776337717 685482562 945770242 730594491 941643165 341631655 695665584 178241944 606974193 105457859 575808929 199825879 946472063 894421117 975018666 105955874 238665656 177440803 593808600 510353447 684113882 975638281 991685988 773255855 828464903 690307314 937185976 995373934 997059340 179928376 801175671 341701025 870046616 845838075 944429578 684586954 866562860 37269805 596063937 456079263 544949184 569616256 680705154 894654530 997612472 820224676 997578374 704374189 845024086 905685254 907043866 945727029 981449106 546452654 679913077 981067048 986867036 932169438 940988376 646533495 891195033 4808293 442441643 34119620 363050958 819673868 991230487 177049951 379905924 789089974 984845546 139623472 795559520 299660966 549154126 699102566 716900155 521103304 921717163 443464801 522702583 819160073 835282955 333448055 932102868 920093704 923865669 156981927 269797915 690301739 928977406 193068982 896117315 365543467 988872516 889687846 945646291 159478497 527571818 194192639 583078063 611370543 821220779 65458354 735242670 452792382 524288357 596544457 814836254 501426221 751417799 134597153 928282024 411175499 878863436 904285174 990611341 561964353 823982410 58948943 172863560 332853473 747643430 408957797 983919069 611845540 934333928 997450115 998994840 747148766 840564292 272806191 446099824 477807453 639104289 402809517 404764985 347240801 598916655 962297160 985833736 868124476 887102553 842230691 977470807 381653653 858025851 635825250 953774012 474853098 494819808 6297620 939349401 647063211 769435196 884161623 953940900 395073360 407021781 200681244 909399769 536230156 712627452 331073797 701390509 836187382 938830511 65790358 218689212 885147556 907416008 204393644 770051611 636944264 779914045 299751787 375659470 212943348 768282419 604990709 743819276 41269334 655713075 58649572 483283047 79005017 517384601 938765244 979481537 943063122 991367460 521419665 624954078 711127776 899812607 545869561 657641759 315882501 945973405 662100902 754405362 672314632 768095952 117942022 273108671 200084271 799170858 862625513 987518357 332591814 706213412 989238261 991655455 951014590 994795449 399658402 437358036 71278731 818297419 164186337 869047132 570771126 658842508 491082773 727406124 962146349 996891506 182301102 925917587 783932137 900413396 537800604 871313782 223280647 957617260 35379329 921565978 891160266 921647422 534255831 542521598 155077753 769814353 797773407 821146632 161754625 914751567 325991974 398692012 87784660 993082060 645909855 848199290 637095990 783924531 314752952 603761397 40031652 744781058 111962910 156689615 335737212 962001612 598746263 710910968 251705425 513976081 901269667 908271270 315782081 630726939 688804657 895719412 162336760 911630979 597013418 735478965 225393562 358658768 89489279 719237281 661329512 889553835 661424161 993451935 17510810 677862684 631689933 882052142 520960831 869408322 829412757 982709857 424762279 761804202 244295625 410570279 11631515 412478443 233526411 417198736 232542738 233615527 630502586 930100460 260395256 424193100 643856367 759856406 589515560 679951201 138655706 559241438 200617954 938901648 255449266 860302146 267970882 749527728 504926350 527345827 306893251 680588830 206005936 593911974 384072435 518593707 205277898 951055220 283921423 576430740 954974278 980059454 438821184 904737755 718833490 912417710 438184291 446701694 37017716 137508678 940768114 963050648 451941660 712203557 507288141 916213555 873207138 922732321 507965744 714416687 945369281 973485409 748241679 878467461 278055597 784312661 847658155 978315938 853059701 901323962 750941497 885267967 836338120 862153012 418098366 820162347 664832832 998911973 38107416 331422709 658486047 927239144 395094293 509914738 177167274 763767715 576192992 997672178 332092117 412096414 602529090 849506022 611514217 675113058 391028308 674340884 984229247 997413511 925457303 963611032 744961813 980127263 488592614 842166211 110296123 720820652 715014552 935778403 412997233 465455470 839372509 989832962 249012295 587256075 813790315 878220107 127806105 893442218 278611537 561482924 459683540 971519688 455647603 665179328 533163910 612507548 14772863 995877578 89131363 560309905 924073062 961217474 50894488 937144688 216403166 712715672 503073934 731394000 523438448 855381849 497813522 653671345 164771493 628437564 57816216 397562862 412559405 616730448 28500034 850268396 541401447 789818319 505286162 644786700 662946788 934258538 587416567 616127631 511293195 917876311 482140922 785789976 499248843 765262220 404039016 858155171 692005243 830353104 529360389 962983844 809050253 941796994 328728352 452997495 321952464 428492031 747731719 943233763 873881994 884149672 994017344 994930300 429849039 766837615 654655417 796421619 658913120 750277870 875433077 951393848 164297713 624458978 925902291 964820439 657178767 952367228 65124716 569781590 705541503 851281235 662657036 848691072 830079255 913487393 938276080 976167282 160843190 297791660 172891625 958352649 87005630 981224413 981478609 991480765 507037187 789764723 263470099 582630511 947513164 955455050 542587309 627479066 996240439 999637100 365408153 700604024 869788404 995122586 685368484 768791145 527189640 854378002 636520327 683804464 606977870 939334618 29844562 734864246 779014778 874358832 195682308 901257433 996916114 996993246 476799690 808466563 426943166 701771816 995427580 995791223 611814935 759294174 175915872 480817025 24999149 49388311 840456585 950308460 788267135 891605844 663533804 941097989 522378608 858724656 740040892 772463081 975354306 977040055 536675672 745072909 297404987 915837547 637149343 641279362 379951548 776086361 956421732 968536965 697199306 925498780 519136061 715714202 683995915 996537132 65918120 951891904 53721548 847714629 147544586 175159339 675713168 822760968 429652806 964817103 53601689 713933485 865346793 976107606 824000485 955782606 524189368 842646696 164243738 598738391 162011880 469695430 281462632 673728568 114297570 252086760 71119800 703331670 229165788 410250429 575624713 725662478 170659610 800099034 845038400 953321812 289515721 851025924 268092868 313868901 166408111 726763784 910042172 971610311 987159075 996055498 780555302 793357561 357414455 473317149 184476756 754125644 387404085 565372761 752208682 795660177 357295724 973637489 702155477 951898384 339538726 664923953 635764735 866117148 655178490 876186388 721187005 749730221 139434237 251885035 158560140 370522874 582307724 756968769 951290786 982908136 102165312 776781109 154809362 755355232 707777996 724467215 748021144 947522434 178094795 967707888 927193455 977326599 751041360 876152422 746478196 821178133 539869924 976204641 198879559 804842768 555650141 762189818 623779457 966230326 434442146 479818501 687123152 987329316 57324964 551397563 243126992 672147530 347149736 548188266 504965200 610710475 530781008 955206647 374282978 661735419 383864025 588272290 786149381 810114099 609759334 686964455 648799875 855762632 813810520 910869652 551581023 737178532 9170605 992792110 561544823 843442436 495169914 558286903 541348036 911029145 739663951 883448237 922109488 960525453 532990567 869437778 368828957 674101867 932295520 974675296 170690528 294335891 491123916 758153340 249141251 272720878 332177308 841404261 343732299 988853912 829729745 992290536 760674244 934899220 405335868 594100658 291714458 831923514 155823553 255331237 791430855 961047861 443701951 724804985 727926946 849325143 544996840 703286637 227903524 709555113 737589437 932456917 146075112 293641696 422822823 862142620 417467055 913685238 291053519 475596464 684611772 722482342 65072882 752745814 456648869 731280369 843170355 973106876 705302090 989356193 298626326 529638656 268587860 826441834 956392199 983690464 449409268 929842747 591424583 878141501 421768368 953483766 745501150 879637765 461204484 474863531 996946666 997026937 432925390 589325178 969773214 996811778 814252568 995006193 618354556 797141441 314806938 998872650 77025531 639922397 199586454 351767580 923879915 973946323 882251816 952676696 923308058 975534931 482712904 614971302