500000 2 414942284 362802746 108881396 156269160 584804303 372448171 194235507 170131619 864020567 429202373 592851510 285026555 325167695 573073544 370732827 577063419 87633143 733943111 449516637 791697472 196946038 826448770 70424611 142041344 105639254 94001718 182788221 61570536 271315405 648744332 519743571 165229251 160380030 955910220 845985020 312508078 545366399 106879886 617178308 135343029 747324950 947262028 288672692 474027177 968011264 337511799 737961184 877953386 285038101 696423027 543340072 365408563 284421476 230506325 3121556 5122692 996518353 219644638 721792444 109982080 206383464 104368087 447109175 51882424 646798101 303287820 100351959 7505236 866561738 490597520 253729748 330936424 299967420 342333018 267206647 900660885 638901133 3750335 172099453 551219621 77019866 370411598 48971228 273611896 685721789 287927740 420988602 983413808 848200587 815277700 723802381 841489189 26722161 688306459 354462858 578617725 475058097 849317560 243519713 175614371 723661318 156493389 557039507 456346939 62662710 568087018 390992505 736937901 290788297 330213801 200441601 478520464 165959782 20880807 40993763 950934862 284067231 350911471 592419980 621731234 334478183 52103393 5510266 815655068 38938738 33168584 753153753 41585593 639189898 934558709 420581097 62989186 636152684 131517829 474721868 695068278 103915796 27686523 274441908 276066322 946870642 432771232 942607570 881672740 412901886 278821461 67102008 842008439 886675534 963964287 86736416 175507589 319132355 573887332 641052141 127979452 968974221 118734485 62936924 484868700 610689039 790331767 539162125 33003547 120205694 191328124 915114584 567537614 843646703 194756998 286259200 849298816 532188687 44308302 868951114 678010593 646453007 847798132 376875501 226295644 741559505 936818524 717277493 701670576 418942630 891718491 290008343 879875405 435403030 528693374 55230906 318681848 269103600 282401542 503024683 153289578 169806165 26808999 295186864 740311615 139213521 71323798 774483909 751378794 881886645 917782322 894379629 300930295 980868863 992123836 75238424 940101167 662919854 52924859 917215867 5437610 675049534 461595799 504691285 908376280 564226486 710659363 934836643 56911080 178612787 277130548 537238867 978523375 679812786 4603289 923208816 8691152 172005142 880566416 170449163 944142996 424579599 428447941 882952667 103844320 29109421 28929175 474557380 462900738 867782579 386705972 715687291 358851592 114129874 59487731 682854687 136531742 622772091 942843088 998120556 317308951 740713443 984670575 878537831 645225136 239457263 634769121 990388950 721683016 77215694 289190519 482207374 964609642 431319286 347777346 402421925 386920241 435175975 135714264 679357585 129307607 493700889 491586511 316501467 477415773 602544368 619418369 429072953 183328238 595675292 159526540 81976201 657637089 840867629 794710204 541605191 1165862 987161501 638343221 906510914 496131593 698661269 412996507 105807604 44016170 122646674 664813233 761508882 108815936 306754530 935431068 911840735 965160502 465605550 363340280 699594625 317657040 976838317 643275072 172967960 490736808 538168803 520858115 781910090 392151418 861875526 718246946 33641701 780292830 532804522 594746265 326160929 701487983 299835134 152171648 267621898 116523171 483735793 12293747 878205132 185569437 624084421 416537585 297284453 697167508 324912287 844547545 222334233 32319123 401644564 763643844 560752873 276782163 63467939 253166987 110620295 434922839 429774166 633661948 485641327 958021853 678603178 663771228 868331684 40690800 548041105 103384201 650553504 561639255 425815455 521059756 589995396 335880728 306566135 736825156 920029828 545587296 519484208 422616688 185339204 922214515 22719814 128755503 127644594 532211911 879776125 543938109 479399966 930283051 851679366 34280083 935782302 852495214 599788743 269004899 554178453 462053824 803768408 411718393 418675391 800916568 312971393 117034986 364817424 343788611 481228159 487524499 321971202 737577670 41540007 880523019 808267586 764540911 788271108 605827481 536740514 753490603 955954569 307708628 581148920 265520767 464219089 619091151 992555122 882691658 190633358 418967945 376679585 774236276 278114023 461035428 593738482 802153750 861938868 670501755 994112656 515512069 609418316 460236516 528580741 445720334 259483982 182211695 784021285 392686331 932112155 155550457 2349438 897814979 448739212 615374390 189739464 162434873 55849295 575778066 617832213 328243881 36074665 475826427 87704270 459122859 31607913 423885154 155967196 362458661 835951172 860398396 275335419 180981920 406509556 128326634 852515954 976004985 338936048 595711309 921109397 838702833 336836232 602548168 716570237 888786708 917720387 671987885 933436065 964662775 555003840 197045257 352611723 703348460 401441263 402008875 958069477 979481514 572130652 870873732 570223032 880786223 421791440 740218416 338657914 978169404 616416838 197234915 298066346 257234109 403237738 67305832 415722213 40686957 723792055 810946915 312957223 189817351 503899156 825376600 671106634 557829758 726414067 6649669 52747843 328272817 730258463 804357382 421971792 324893413 32158674 849399631 138533412 743705320 160442841 465688623 907033556 887345538 185633102 763701730 361357655 974028423 194041056 807641115 664710144 228645262 618881257 941481237 98138820 43718756 612527513 283990108 680516987 288925621 987977055 399255892 677202969 365997130 219849437 715264031 810255260 159732528 355163880 373470005 956808822 394261351 143105885 491534729 896084774 439217539 262915008 986746067 653440425 75970872 173568974 904334511 881860637 143830172 300755298 257819460 938183564 111977548 54613791 346914429 690007496 888848578 441815936 309142342 123797815 361520477 807037438 550995219 469374796 862370590 297035742 314385298 944134954 610863853 732266851 48426764 896290026 274934798 737906611 838842890 789059890 597489213 893261311 112189899 815673712 684576281 8779221 520119518 408617021 404406087 79300294 956194286 752021376 995662748 299939808 639213045 61477575 78002994 882549209 378840293 687414146 846619802 571201154 51292721 236389044 36379226 120507248 750648609 920237932 943010538 963540496 691816766 491955922 51261733 9582689 403575341 425787735 673426766 893484776 535767822 516423340 503787481 637904502 31977974 860157227 245315860 756103144 794034927 825678223 983828954 461169437 750608102 489212745 656995882 500950417 730063056 16448386 702017695 9218940 445654722 832504213 362233809 373924665 85675536 605518026 346858896 861928998 821725171 222573004 919546102 975344057 863099059 979729461 969400393 155687978 883809163 714410555 236221355 971024769 629366017 242581765 156033859 332489463 115303693 249365813 857500657 273523822 405366009 739082668 850127079 740768283 847372263 680269407 637688033 880310473 616339408 671234239 310054084 479426846 474556973 218445618 473890779 966675474 937053557 168741917 761452239 546468751 751992180 957591180 338854247 801501422 871378633 737380584 980032400 851632596 825783934 359871241 381587966 874435070 891549359 718418083 497582986 16102275 890989603 360089885 864486378 175547762 655004846 620488388 671166778 239648499 750304379 475853858 579434835 792542782 650102807 935934995 215638846 60480190 517261831 95471080 220088095 541937330 582348001 922317382 400395467 206342058 284756526 293339311 969709544 471334067 198712069 868468407 612633782 892245890 793005523 506712141 480997477 601450636 77914637 576829300 77721563 944315427 884335610 585710191 936435794 760177681 439288679 139029489 712024925 193291926 313759915 639604390 751471470 857255129 678641630 69864788 619885283 955292261 793283543 338342739 436164179 516480541 980878165 443418747 429572159 91047759 600686134 759146939 248475291 354356877 581091686 934616347 844599770 69102075 10124894 559157198 531946210 101737644 370546648 91181204 85135540 559955020 837428715 954650523 215184268 669639768 432844113 702929960 777477584 251669396 86707360 668434736 364419475 731924291 884063374 831732796 27522376 707983920 586211436 18023848 847098904 316802262 881817173 520361718 598041062 623696455 866963984 81885386 605599500 43287331 887341965 44155264 191562842 235431990 895397526 510832821 156403168 160880252 102859012 662960748 716818237 96586136 723651386 484951183 902194670 994473101 493639479 263056659 478604074 147593493 296160064 727362211 464602915 10810304 236310473 890076218 736007698 382720580 377824359 388900983 100837695 694838688 954126661 684507914 879427102 146566283 784061856 245208226 791279782 722887138 142380121 612648855 594074836 975374205 877546883 367129976 579191364 131578367 960922750 956826155 228738038 302090347 362206254 783336496 626132985 659566172 947967602 671428598 411324917 327565475 818026399 949783860 551329869 956977926 753697371 499809837 58330186 739645471 527932300 657589076 701399557 339706021 27636415 313473194 951539752 66966008 129570802 745568516 2374362 37716506 510580905 816563869 628004066 825989280 553501524 640362613 771792141 617731222 937031071 215799385 562525507 563716753 487006387 880646084 311117333 570669884 695013794 599966180 88223919 128147533 127654148 532121228 739779443 596394973 191395025 755901205 429136849 70461214 170268786 469351068 377642250 763636467 71325722 355004557 756903566 768835523 875544335 555148632 242708694 295354744 615777747 720384957 624938315 893767121 909450647 761981878 999291154 195341187 384509533 134623122 624794144 656721012 222313701 399961472 301536842 53291004 236746347 770984103 816637462 92532307 882184209 746020203 700725173 846193522 793335837 41268601 443840882 894410006 148001114 811730429 822179429 571873722 243940418 324922276 624078024 353367060 521684763 128928616 929422661 413913510 535551538 428052360 331255861 462359286 959844680 430556718 171022303 347506646 558358391 173193878 92908684 372255749 319105248 797413440 631385100 563921571 153353238 542030683 875229978 551223120 301789376 658376441 685987707 586367463 451820392 762721118 950912295 68408821 68662009 762092110 483593528 689989110 336467774 890969655 443336928 29925514 729685779 454724919 116702081 740268681 439490008 483718147 452037252 139308779 286685568 233648234 366660345 235481429 587057860 822251385 506805256 394312071 807558199 567501503 50220991 454925323 10942998 842104577 187513652 597615500 486214770 240720590 368674081 416551981 618207377 54687777 56528119 850254660 66525402 384009999 836236496 902898451 519651683 181483830 269932638 68625759 648470759 497658563 815887556 546767393 688852049 570887700 171621313 533150480 580645723 421231871 546364742 524575296 857225775 610442443 491995455 778089292 318795064 66626623 77521119 221678297 358131919 54179516 30933172 15362761 792922504 379656759 561232022 150743937 153098600 42151323 699101606 179408600 450444478 806042040 899427685 606765939 632237474 302913269 55827598 216974840 24011154 488144309 333082690 317338993 228621287 531122629 826434095 51345258 138791292 477967857 425312119 735765406 396231956 214017552 838016245 503988753 426059819 870083279 716368740 810130154 547649820 154476241 323468028 543689523 944016895 162252923 932180073 254029712 543425529 882901551 416070997 802948360 31754444 408658034 730465604 616542681 658068626 91285705 606443775 88298154 994000781 146515615 542466029 414085291 823302002 640168850 682015738 872679111 634711898 375527230 392428091 315160587 148091843 325415469 764376047 361362372 982559053 573986609 909424522 722762603 836245684 722539412 404733957 549704889 546230119 46250641 672197407 552346027 378339149 925860546 650225796 811286659 177263388 594751497 201192749 178647685 819926099 546963594 61600258 327047956 934957969 123273075 354937674 383987665 868306121 221034672 981247411 594246871 194563111 209424109 399835701 793526482 324190684 790943649 621676314 132487409 231132832 925193860 233833870 777850974 187075131 483049161 392737836 330301820 29582604 137572415 750995698 670658885 244164481 312800061 872749086 597500047 131161984 193919842 526929004 289157916 572298608 437164651 572260922 543705719 833192932 827124149 388980099 756167731 507382831 330421697 656841086 698491276 877910654 238339805 688627006 836467264 218925628 284046264 566941956 166598611 31860968 387810255 789830156 274760835 27541473 162262022 641164503 561367064 776522657 942523566 906356322 558870256 596684015 510692953 446122592 274770224 386061062 192947596 911622543 436210428 210618656 586526757 529850301 811794311 81858825 145065359 838369874 135276274 542884712 428288533 397978448 651939073 155842857 562205273 710141375 382736874 270041479 445430496 531907391 59999475 691209492 662034470 989290562 394659311 2002535 103596935 360654907 829342826 242206923 115002505 102037813 443505915 283622247 14200172 406257793 491171445 79508336 799689388 977059287 761707102 866383954 450680741 649590246 872067560 939696453 442075924 1400896 155507845 874145474 738283694 303459936 227146811 838246888 909712783 281045589 417931354 229793358 999035475 459981426 40970958 282038398 290475121 337027689 118098970 722391419 393291381 963600606 354638565 81723029 135557539 432017084 260317582 992886165 953561346 497566337 916628855 783405872 298216815 947753390 236566908 508684175 344112134 643581749 444214441 387400687 125243169 11675480 171552023 111109085 994336587 488127490 889403756 379683987 550103904 899827997 843858704 356314569 699769782 431573957 759959994 701746684 614021080 696068237 789625031 213262576 379226428 519798462 938099096 525803516 304423448 447016273 500827475 190054000 365197746 434873949 851931296 693564374 728590680 152658550 100097836 144085514 82844649 47075299 435159951 137835608 195076630 514917361 97035336 595204485 967548530 188200609 770977737 149188841 417712424 598581447 303410832 334120151 744488753 387717596 148913232 301421750 530398167 750693649 632552843 249353578 45418813 453768976 437491371 246119105 712153929 111842796 79811505 671634594 47780244 880910152 201091866 23977141 281677815 327959419 933537331 356500677 4869974 6727972 348253037 898390243 752547537 289715012 882049617 167075081 174609966 258514612 317694074 53579677 753473943 120261931 464500549 659879017 996501373 118692659 824196457 568618900 763140629 359714938 815601442 55040749 890248573 290643874 580770838 217208937 666092319 855364006 343527723 266443648 501046574 847021821 889449294 884545339 120533988 329344531 590228525 700746178 194587193 283514678 636751178 392939712 14074576 332547895 478367594 353378234 749224750 418714229 841397159 978831465 582363654 534135015 523206418 463776990 879443398 732006063 868516458 630462914 803240889 443384383 864687009 520761366 420207191 400103802 858385575 511088057 428507661 474696046 28513722 722089125 186730371 159788717 60755779 400170200 727538659 962367284 636660630 350993418 845744629 462802189 535095063 600847345 549763622 978740797 106749590 557826614 411380244 39454258 622917774 648447982 519118084 636148916 199532454 963840890 714976682 720336674 379070804 540756522 682061585 704303047 67145268 246951743 6412242 615750203 189686694 453349333 170341537 477352493 709571728 608163160 633435718 27520169 86251579 38474876 333253573 809678766 726868774 735322835 43463431 958532006 833355237 295677180 100942520 138839993 563820672 2170870 442463759 362315034 744039034 945438398 565217780 902643824 766883749 960208842 591124067 425541277 869910589 807461366 294915763 555736758 139894799 770242901 840643567 17901550 436437902 287412692 284822676 390496414 556509541 735078750 278622987 557450337 432637348 323225638 961814260 140556133 297269943 723700918 282778549 643611701 296606045 927958281 72885070 343445440 288236299 869426107 967637158 338332702 931056613 576783253 640631969 889691847 703053929 626811313 697745362 318601051 510223508 663430870 250602105 202263717 842126491 91777903 91751983 349674666 888720843 822898377 223009029 682415455 41871081 687526793 584806162 68311024 357622932 87998933 835866543 711815815 223184230 456584659 97968529 266965317 140805454 380500367 980687928 306833347 441160620 473612016 765078092 168739067 298103309 967966447 600589593 89035023 316921265 770577087 29442004 901376804 726449469 953681004 707923813 808859132 783025143 325511778 981815320 46751032 339539308 707598665 565887959 460121398 391782390 232570624 805431627 170010784 906770101 738461453 779887805 141255159 59821649 883986656 951933270 137694671 431186165 196319547 823650757 857332627 458827103 384674795 67282442 662946264 982100995 583396151 118888826 257218431 900167311 350691046 623852006 917637898 19481979 311186931 885746656 527487816 331811641 902240814 663010687 328578959 227586895 15679051 754555434 169909909 68470794 377301689 546996100 434974279 533100138 384787859 853973865 736182124 661993829 716220301 389146894 270406709 901245149 539495591 492252576 377914579 839578986 878727840 420863929 133403545 919603451 505735247 939146289 983522717 829256136 403551888 831753586 970329285 388930497 333423293 988215526 356489930 763811942 924763038 411783337 929936472 555941800 452375014 164616099 587150027 677846477 806909853 143527131 846557400 770623331 800405363 467577573 622123968 538104280 59184475 274370150 964259539 24149852 335203461 503514829 370108117 768037848 304815206 202662825 445738960 345243816 108045912 686799640 933531565 992137519 205355777 247706253 989512431 327727411 607661355 377753796 464812347 778588942 994173964 966673167 440956996 347828216 514729677 402885061 865975124 387828952 556680682 515495310 507288956 735861972 286277566 426160909 935502273 120806486 760212142 417985213 516070511 176035735 397406939 545568827 753742683 145247180 471817333 237676377 228171235 660013049 695158179 533185043 535487504 523889744 488258043 170239026 310021143 315131711 402617612 355986795 867615732 481098503 444216616 327460589 29883654 961470070 618270327 771995020 834155228 492917447 978241845 131173445 749753207 311533453 794870800 694979549 439478426 354906243 170774446 731418807 414994041 515214734 280496806 92066977 713753513 641422681 779241080 675421132 768546834 445238942 130912654 931806596 770842089 605599768 607711877 308520984 716011356 462869529 428162652 218904713 964834003 601813871 54644019 61535550 953982469 252528269 751153518 53543203 952207819 384342814 655582014 275593914 603685055 445153446 574837012 878837320 452156345 978062698 105066246 84705322 664138015 387256163 832380286 433857415 948790457 825390365 638682880 25731231 453281470 612336800 978132567 224163485 14840567 636381812 849146615 950540977 176629034 388889523 981637069 14402188 160079224 939977218 921254920 248384384 828155399 554120875 390300900 864442752 307490910 901409424 639782297 766033761 667848583 892142103 408375095 841589920 409023423 794669357 26493651 577566649 426805620 259028152 82931246 265341386 535567782 446257652 986129766 789903637 690885429 717950025 347137846 8774339 580276316 740165703 11914289 427276642 350232665 724283190 16504238 875453337 280936411 543397639 936580130 947632029 950901800 441473057 500235630 43521858 25618490 28375990 563028458 57761961 478230599 290102279 630132800 35088926 878059948 4986351 640580461 179524276 903972564 950691199 949446815 236039402 341630155 997008474 818200287 183393441 695946198 223930542 203254911 53322892 527862418 863515183 7960487 708432708 707100973 685839524 618335203 983524643 746173692 134544364 585833450 167748662 766696143 759890809 474943634 101739132 8099858 822351466 227574323 642081426 25565547 376532844 442951449 793320629 297393632 724279315 491797325 351305211 547306309 927507850 690388968 269396118 391807885 847582022 34936329 517881825 940132520 872184326 772812106 929833418 283855996 572236507 944930142 270004816 568087380 724032622 670740972 411059379 644414967 20649223 177005125 845097509 231377088 575779122 242449719 267023159 111208444 342619548 789481985 905002120 773180167 393749345 191399095 707896866 188085815 656806966 442368509 156418177 627603641 966506613 366516199 806497662 788626223 340893697 878810609 423995547 322945726 7978171 1092005 139847080 320979427 46177702 858878314 855022257 864152385 124686791 788637746 113814797 258997862 852344536 375513007 877151178 712068062 985882128 974048053 307974197 460863279 542997191 164504076 767051753 766557111 5785568 4316842 133122997 114052461 84774186 695973865 115321721 929766849 174739771 70983860 237224541 848280385 971563673 347541411 629740233 865042987 627281334 171860071 901645542 479913832 267213555 633477260 268788391 346331580 964577677 793901687 635703151 624514953 887512986 258530437 641292107 246528186 432098313 829307572 850804397 983498754 384180029 85439486 475134996 109135054 995655999 452405933 925184853 840182187 752005748 384392103 870342902 98892429 390271953 28230033 195597709 597594083 927897963 2344201 110427261 971494460 125028101 557233796 414192055 255524157 37195904 878103541 942378321 818370660 132652491 228005819 784751782 38816342 795986822 230642512 636130901 822026804 155799993 779569884 263883016 109268364 106981125 402762102 861236910 946573292 18335205 300205445 609785238 562223983 361836910 152072722 605996209 150675040 539024086 804963261 660944013 963788379 723121419 588846827 796728384 621751298 937344032 622428475 82948141 350172336 997815441 276604718 282670105 134445654 526526285 560261940 144036157 332111073 264221289 215405954 16020981 302980946 798524598 794375338 607965646 13812823 657989166 32201077 22338035 755675171 358766728 306909394 851573462 77175178 945776549 184317132 167041791 489909120 929595591 621282909 942545882 731643195 701088030 27331864 616358015 642590408 336378854 526872678 822079486 743074541 818634878 71628085 777331048 553434653 997220033 752082251 931211242 456166711 226762478 759415493 315645007 218897052 492985356 775278821 388796586 243967258 374511899 206545159 634320602 764966105 477841028 703211232 215131390 155309066 503076769 319029988 331449929 796594568 780259916 410709531 760643882 413397070 417471157 423751426 156324083 991923879 30002300 153644278 246124173 916938998 468595301 656040112 45200531 781972467 803004225 398025610 619245409 480554593 103426605 353226811 764689539 741580160 672235770 441517207 375632459 38653838 984044306 50568463 457721877 365551107 284521901 237510584 733861442 817445112 485618282 201875895 546542920 925972938 701087518 301232171 40477500 478622172 268908951 778336810 972453386 668213048 603182749 923761827 676992622 443559123 513557754 964900014 569013663 700356799 454414615 325478707 636746598 991402286 887755294 166495896 233534204 706721592 624597684 472703069 323720473 796110883 907810523 122359190 757931421 628262441 712121270 181259328 779791537 750657394 124484563 639466568 248747292 705261340 677592492 852655792 929889699 352906598 873758879 26890703 825108019 174704444 433435807 791436686 609486119 421782469 197049377 365849809 235728150 305753065 495507450 283270402 666620478 792839700 882024323 379639702 326604013 895370022 455665868 226821096 853709631 4966141 217839334 952662151 800812684 203275587 43127036 259774876 138167832 969665502 947297014 128896692 183617941 909992105 654791303 654902 627606455 83374574 160165422 961110967 486801213 904697831 679515504 991610048 932729313 243691695 860001755 183343377 64993193 343763877 894508925 948709058 306177730 474216951 960511554 236698553 200259364 868824645 526053629 908920570 115817905 700823932 287000767 115297499 890333512 967423597 124681929 355130435 108848637 256683522 193841916 933864830 335460770 450776548 570053221 713256336 99188990 94137333 73787536 911615185 423398246 622062151 42812937 264311724 937602064 522642407 666320937 862020023 407163181 935691698 124970483 271142937 313572095 888348596 82650485 88883100 642733195 725979284 565950231 558291284 459731845 84360562 450272908 410217713 437260552 883970451 408063033 200582611 823753106 951155672 373757336 855739404 907677100 634630124 802078006 719410659 678436260 844566944 187195007 851288540 418769858 993980791 700404208 306016749 461790505 966294615 960539756 970359273 436626772 899704828 621851244 697056345 18590634 424645376 673062157 100017821 878795066 988104538 130380171 921954331 328323926 441473509 841284658 267295799 854950283 69609323 301821598 225485204 239375222 364177802 954468291 747148003 33714673 338041395 671827604 778151396 575772201 418401512 496063452 398919957 907960780 603891556 767342722 353967153 478141483 209847315 668059226 42242935 143358522 43267816 469091588 830458467 946766123 99673061 460212992 959028038 292084214 202964272 29998936 217873076 167463120 537698583 227695132 518144077 902905644 598687828 239839406 622715347 377155539 399644955 758343901 837936435 675023594 492945671 711834147 829815239 939322732 209671875 409996650 719327760 409816994 30871149 823054317 110887974 467840329 609250965 49631867 98742816 314949577 748025047 768376148 525947755 492062809 954182965 911738256 940986084 264495529 709219546 580931117 97293738 749357455 767831631 108356542 458772868 651805937 705090115 350052507 564297635 572382078 23722359 395184060 463557671 836630121 530464510 65214886 62188823 298532130 544912492 926623301 116658886 767007410 956367549 943702340 242340655 707512706 539529651 293801577 545077438 856541357 947912451 561068737 642043245 63440495 528119015 955026646 355291402 53953356 173845613 379447844 721080298 655943704 108583553 95692233 658289268 280021368 161089146 362996685 157558330 661158436 27935686 836094745 104367663 67941940 130408102 92663857 940324265 618013315 799614655 529183520 732294569 527114611 902032764 112948470 28954883 665751364 358882658 625637738 346445928 552073926 319293856 781644502 112664911 694833955 707123395 435326175 125119706 579940235 907000528 844807752 739687076 353059953 834531198 16360436 142932981 502295617 113642966 953186244 373480565 348578478 741049888 779094556 507876467 743511155 822240484 23594032 590235095 974604191 220108323 980536462 112733331 525179416 138699324 961301870 706181411 623879634 873370194 332815062 755951640 856995065 805416859 177557031 301816986 164597677 841198865 964082546 354684333 594720773 383910240 281994462 70950653 662278180 577832542 522528933 691410952 247371977 116710065 593199271 645774626 473519843 782526670 401501067 63923154 986946749 489017788 40554841 484615109 782363847 526117600 696447925 415602055 698110664 693479628 873103774 590696496 384044662 540498241 95564459 29410419 461141612 499089916 398118638 786305366 654543628 925436186 247168967 397897663 183258455 247415225 376919799 484218304 227430068 382588683 642421442 194314779 676215305 834298613 971526050 919510315 905102348 171087708 263094234 814404463 57183672 263338473 911884665 654999291 450836994 483027296 641943921 623003333 898167475 220984817 924128991 436538758 986701324 385218897 583701747 755190366 277628577 278895713 726698383 139554344 825112196 704379357 469998714 420874040 575924299 714701098 148974788 434015095 6890066 40021582 741598131 122744218 586316149 378673532 993776876 405956562 257846621 217768469 915814978 542056136 501494218 855054979 461578774 15857915 542781651 106060469 583856496 621660298 198336036 59039616 999963319 894816348 449448448 474728930 927094589 693542155 361168961 539945073 169508891 809600061 465489537 426648691 63100886 361171702 212442088 368595514 522129962 305696542 779672690 224981859 958915950 921915453 448869556 564938962 367611420 997788608 63355451 740040513 460715704 13072274 355002602 645026364 880266947 62585396 740233847 751429281 873341805 23828142 772737385 597884930 987564242 62913135 13133521 568324061 721557360 545808166 576627769 794226166 63338487 42303006 359368961 983782188 107047257 298111999 604241671 783256017 773635804 341225011 240948685 719620404 146383400 888872869 82958545 315774545 447435035 317652456 531384472 19850693 860309043 584937962 733779764 529655378 523485021 912637246 58401879 867824713 289864358 976058207 518507029 573152764 570549564 933917170 569786275 876835733 557845244 607181000 378556512 786982431 105876518 755410850 825521384 770052783 519766803 278816780 995453508 343213867 937972759 86131088 315599934 37121781 963081626 561643150 291158862 470887415 407246200 374946005 68323365 421176650 697156044 32057807 479272238 132769063 952432106 155621566 38357786 801155770 951134646 9589771 256384099 52769929 257549799 696542421 256914991 755682453 878111066 967519760 686522729 511396723 573091225 1752498 809701707 124413561 983366825 652007286 581937693 252252322 560200735 439934168 328063486 821567380 666074206 418821523 169655311 857252486 886424693 438062255 842280829 760987887 603376254 76934326 388557477 796625372 947486597 53841959 987168264 926469089 1512730 832547453 687329880 553827361 546867295 428792932 664033013 150453550 92460665 344225982 418425991 450778341 242027941 516669635 835754905 346963134 710686118 977457081 993917003 252130002 798376098 913424090 468477931 679037402 285521918 905305872 218498038 174174873 112281412 800610086 735480521 830028762 427285322 600193265 233909967 602654819 540655709 721507378 229389605 412004293 283539765 634187165 171671043 972768060 661735386 251518742 482026259 213285869 141853140 425274623 781144862 69569644 696085009 69989001 169911047 553042376 552756047 903109063 672260642 983121374 806785759 8676915 579867466 681659788 505624946 241384216 518610403 874782507 423134775 136984714 391011993 178520134 819497305 793783337 912750480 625322391 510644703 658947801 900811498 386466023 687636071 536372066 508035985 961621970 520893680 342828354 787291259 943889084 31222275 134013012 518471513 314250006 20433595 736179512 877418756 452440803 966338397 618782588 633096329 824096739 661002318 374183253 372497640 58211287 651814469 593591051 216244582 987102111 964273112 673300049 698990959 591671232 971839690 902099436 643707213 62535267 441530169 343918843 984933779 396962332 366186022 790720345 671577935 427382796 227784498 65941677 543499839 973715079 863692854 282600510 726653113 991073476 332866862 658233390 622438148 109172048 804887781 103493682 474466840 258532848 771171490 737446388 901848915 975698077 358621730 305809240 510432826 879754050 673202304 650967391 178583067 367280328 968161770 742106001 680168794 809274397 600711257 239518444 208353992 577620281 821330601 48161573 105045530 55812798 626937087 62445754 820002333 949969086 543740455 714532000 191305776 509839634 684044981 706561153 703942279 612655146 39290978 950061456 801063146 656668773 51663078 117068771 612575721 88610198 919754861 362050502 67586672 608462031 666167487 592591710 816914801 835366296 441244446 485961860 423014690 319787172 493581712 464607884 681117155 14176194 984306930 203493409 306389678 249937015 135176875 561786321 717667716 124354612 131756222 32063481 3767483 520719082 732719436 997909421 57163522 748372443 141351435 489582191 56492272 447625378 620150652 829143371 115231997 280669227 526482238 187950555 935563188 869532351 2630572 713737564 596740780 786877792 6660808 663024315 923844693 926223488 290791209 167702949 938882537 987865983 48944378 15621586 391400791 191136983 623357814 733977935 782620489 128842538 7680128 6341361 498247576 628151457 945541910 223915726 550551729 994788777 405517854 546081453 758581275 309810239 256105103 254823695 300983274 52022522 504142088 826822012 405104812 632136504 952374857 566721415 188389623 33389048 720107915 366340894 442519628 875481087 936657185 343899816 965893355 875500236 595549141 995438310 197586720 57058177 906670446 604052957 685247373 324477513 899081297 228524608 962406514 974250389 176634969 311637376 736198492 477394325 404263728 432794774 522305366 217819519 810274369 655056985 152633399 646295591 790182160 33439803 528131882 801028018 782262488 614379915 994044000 163335517 348083040 309259498 59841387 167135103 274109422 185814502 308424579 452721850 867906790 899211270 211952102 211067865 534043807 876363576 92652360 447819732 997430111 589956896 736960966 522579379 414733217 735019378 669936163 524810031 668414078 583235862 606091132 729056087 812391029 681210831 97359541 383603260 757689713 683308814 946003541 7101691 796289821 903315425 555332243 399464012 303971269 924863442 414077645 994747100 368112766 292798905 503422337 739992844 972688293 851378531 736060560 587715195 616581792 778164477 587604345 747348477 220530046 266823276 19905352 699693967 779359933 971699436 105161300 772293574 390803160 167502535 398491847 918004251 386011986 65968943 496685793 772151107 149210853 838941559 348135079 945027558 792870206 306029156 798539633 1811560 455764765 62886890 405438356 270968807 228858588 415918807 344911790 745225684 736519154 588573835 763149783 105835017 265768630 702885141 96891143 229723147 112351632 626893609 419411714 550783990 424077553 69582911 958537328 206920723 630213107 723945381 141092483 984756559 914354102 962429494 841493554 305703466 947672393 13940754 605490928 680784670 353368945 850939742 752411927 981625746 284092681 482959816 592886319 203666573 978740943 322189621 766967960 648738299 92080650 21266072 452397380 290275660 478125491 969597686 110099057 22480606 236139024 894543413 410030952 404258397 42440936 301763917 628383699 186276917 928788197 175884504 256523620 945547791 390679649 984119007 651516139 547200112 352096959 227412604 978748864 576322368 157209919 590826125 550869980 746732821 896187613 968462704 411830793 209010248 762165853 928574027 950591660 487596958 524091479 34876549 203106271 326618777 122182384 865857833 152074828 948871720 575373756 584706021 386465353 650978519 790223827 269382311 50586751 215155829 599649242 514501761 350458973 635677135 603586031 894847846 106588204 656865990 442190668 34457940 730436892 351753299 303186454 344881390 949346046 637519612 782434584 411293472 382234640 227321045 28687779 671339651 953253194 360164460 213164368 865492100 304672591 785778358 632205342 872325331 49923738 103470257 261378277 78415378 134550105 456082979 729683016 919152059 229277765 393923926 803337861 941685873 441056240 193400775 294332308 399442348 262595601 765358698 916123035 991633210 433384276 325972114 529334454 86662982 601748099 355310186 535282227 163868456 855407984 532065457 787889241 384053493 515270843 8262602 8064138 622488852 828377691 363004710 645745737 828095792 736509233 460770398 902624900 30728730 556055507 904532867 630712287 58434139 440069464 158252424 126876289 740053199 351620633 137579386 628927754 558253008 983410377 256242020 567427923 42422927 143215963 677314432 421003842 815917644 437773506 512152675 555652756 509656259 940651775 445945040 119451918 450167724 660370865 943142705 563186419 252722403 565260895 629559288 902563658 843338793 570625372 36598787 482589547 116091666 625524442 51118110 307205730 991953330 910553669 98599378 96554057 684901470 83413039 606530808 456923023 566275748 171263068 740976291 126152215 96607989 309773791 129371082 531055893 902401892 737998536 434361903 515934791 841398041 872029542 765228803 722291016 489629280 500279298 473204975 634890776 862985632 62796136 814802254 961790366 783151074 217627323 97470089 304717418 797070563 135290251 885569684 833749470 705584541 327597676 47413767 814464243 441910775 301285957 575316100 403047675 458961653 708913663 153197228 447450131 713012228 17209810 379986863 89222244 3937676 87089273 270515204 30049478 309740856 430508179 362433313 629599515 881769268 589795940 828141108 965516426 751031420 620549762 565345194 925922906 273968574 867736146 216951587 913386546 574774706 95662339 951725542 844949144 512696474 158258604 20081068 291793883 629917240 472924377 565153671 984959099 106808864 500466904 303082131 573965077 625332029 404126498 618069201 404121867 62220644 126525481 210290630 708994487 24018541 30389443 425603761 428831845 16518766 237360824 284505812 910357493 139986293 735036804 276583829 645014949 912979559 773197565 308009681 220373658 703278032 954111699 623430361 866825283 495229456 14095031 79077786 755468974 189304761 768957167 519198473 161743326 340496540 462668909 953380047 33077024 755318510 494644929 11823705 658086769 92428769 1654533 75656764 816507136 505116827 954560966 871508698 134031752 865814480 855389641 709324335 901698492 337182806 825588236 586759368 780418656 231528758 278788212 651014132 300563221 787302467 41127928 293263395 869195078 226661142 673909081 77584724 691289222 216967282 681026650 492323139 431355122 354062705 670315385 390656012 933820934 413493694 542604689 862108484 399094464 965727700 402072083 786928291 553995371 933460865 608033947 719223027 912486812 761033208 241102436 63308743 116318492 871461017 883991839 953043292 833644364 52802489 418971860 253210029 343078647 662109814 381806255 335745322 710641431 583049439 815244310 651520429 74816903 936338461 96266600 41155391 500170385 229119138 243578270 998778356 999944145 616797226 345066694 84826824 266112276 785430789 684519637 630848606 686454799 626273417 90370175 627547201 29637716 973954537 716307518 891201518 9702367 822965252 426798143 293907927 637707763 779649421 596854868 644407997 482397651 754346335 817889769 799579159 500454878 883668989 382706068 383690358 170956283 251953360 57140232 469240510 203491268 697673213 452420630 582907730 548742015 98416669 284441755 898676954 842930638 685774897 260401915 887588175 542848740 545701681 681320531 803650756 655448704 457726329 206742650 635490433 908062235 816254108 189340836 981699472 152996602 896730739 867625621 184050020 110384564 631098628 716529379 890095914 29886424 628241576 720065760 986095833 687364264 652808599 755293292 914463265 595900183 240950894 721048885 78661569 358262396 319037867 697305107 278668259 533111743 568699271 934575306 12325268 36657500 583586529 833912603 455958018 472584530 952061556 418957338 354347614 221398018 220883112 136685839 35626767 754805603 165723976 874677225 761209286 315025061 400384654 841438075 256932563 572105761 673233911 767830267 985097244 145890538 25006201 913424803 78773957 656330625 270683022 667072369 257162868 318896351 127631500 985459435 720862003 350986138 750458475 150333032 26415198 335608999 753425957 133927845 407513773 398806419 453543550 841416422 217780374 408855300 872652283 299636596 361747223 309490104 68820515 816266761 953393179 877696276 483228927 384579671 259504241 793227233 671922842 41533274 92963917 407849263 594412102 774112560 512705940 544325537 469743898 74550725 607942062 614765024 377356176 515959688 300923028 40080756 285716530 383304483 549055664 728121507 148396545 824567183 158655647 894239901 817232075 344110260 451290968 254492576 640647070 601382157 164834950 897088936 555811970 885210491 494498355 889016134 82179002 179783616 445566762 86007414 616778443 205291610 548462126 473304974 530725913 859801833 479981270 506670554 654210212 422602573 109076619 358631969 51155440 166122603 872160702 762029243 831668013 631090310 987284518 503979983 169194157 558779604 741152125 789624195 176035378 852988611 466782224 919126817 685305448 16916483 140562965 776299272 213377121 921923802 161287985 16088790 305648383 756928424 393722177 284189063 189019543 792865420 23241753 516413573 304616156 844509708 636702718 4857025 587463813 915578465 569612005 110642275 334545513 924750976 207169626 485863446 14937925 396692037 593195096 21007539 958634825 688082199 610128256 920034079 726178506 227545927 532132212 673619917 46119183 545268799 729840121 877321632 855227180 535371518 594482108 491050513 395176822 311037789 599233903 317543767 237733561 861482121 425399961 669764446 145314768 265806734 398094487 133651655 719672221 212226048 428980292 82110134 508072866 791004212 269732736 436581822 277552547 444661646 563527058 805749969 645282337 704879690 323012369 58907960 299794833 157653699 467496742 686624561 915868101 798419626 930132607 249311813 593742137 797455725 761802387 726654769 908246384 318039898 324462441 322969485 644829207 21214531 650924059 471634736 776397745 923953780 314352333 406168708 432115948 463292111 510250942 791518019 295113036 577824020 663423947 411651594 663328133 21996915 571049047 627216567 768283764 829210660 634611846 398043470 870712463 773371777 775172265 652806061 989518551 864630804 634237872 576633583 760862660 752475993 194403917 285875225 690941303 335897118 976349602 829176525 43074920 807759990 133354134 543371190 954041307 72764244 906499782 102103860 224478926 785914164 691341859 114794244 40841861 472000339 441483815 118656916 698221444 565308952 5218238 938341227 500827138 835049186 8827762 67452113 811302170 281281494 191771599 882922972 308317097 272372595 839599373 369269152 850202328 721523248 102851477 501862757 255000252 750134753 383819455 788301798 761899536 906130660 714841352 568792878 948035143 975081730 123253063 154789197 315115049 113320819 819837484 299417995 994534992 683750226 921045173 771696340 341452443 185935928 491394794 598704013 530818496 71520658 940392291 895979824 442047200 337868420 841809691 966446046 159943476 518385125 377585269 918634734 852540003 196532267 149436323 221907634 787330760 278430340 452484671 197069339 497425961 693518801 247714194 321815274 564063496 790930016 825639234 460893630 61738597 87744669 863091990 512416016 100519117 945211399 454630630 561352586 960533791 722686262 519800538 712340622 379532885 487621911 550430045 511506466 829606798 95008406 815354884 126313363 307942222 687106996 491539452 906380234 946744766 826264984 416881628 653238685 930201407 827365453 822367983 140687631 266286177 739058188 980089505 556794679 990842097 183105870 975203510 871648950 626995791 635758538 52702336 167981045 703449353 142734289 932332376 567870183 900003098 890473465 393186919 974521555 509598000 671819972 587001116 828700335 461948805 927772091 810836507 131824754 664339400 116809362 971346205 896444163 15263825 369982349 157358263 705868087 680510148 997321017 967680904 733131374 940222208 111000670 306613678 23146436 17982199 132254792 341322821 170974573 856824186 293085482 164105650 913646125 98867649 295311028 791748715 282457789 521895982 403928889 508236387 127568198 774904612 88467960 942333454 792943401 168719811 709682827 294272118 168883215 857180667 346161006 531425442 226368395 366115901 722590609 245343681 359659060 841315696 340213844 803535462 952890921 5957899 928069418 482576236 516503010 250753134 524765176 481285185 647174744 968380054 917948366 540716931 869189253 398863228 270884927 9175344 808597907 305936997 857300881 117207586 298235111 621557222 898984525 602735278 643414082 494396804 345078422 203885790 487643041 701338190 288644484 122594846 819303578 560072489 374529022 182420202 364377697 881461006 772232531 402377249 362983695 354161231 310959966 641064899 97023145 974828112 176195322 342318035 905532812 188351381 129501494 877006091 894209486 940669728 253087878 610123874 483003309 229427393 841327250 869329363 34991589 942169133 362112924 28371033 446877306 78690468 969339198 190774265 560268399 777321410 128412257 486832801 517296489 59254985 734851953 463799290 752460581 358608493 816925403 584323283 363102836 50712935 651592264 919652175 333381354 915410102 109661082 301330853 580524033 234070035 179535362 754255063 812257292 88110196 800071298 275265892 106850159 166135786 451482308 664328332 784861785 521656614 550591139 547961464 936951942 755139586 666798359 777938425 11387807 293902914 457580038 891926808 909265272 902600584 72580794 616365441 365733391 698578902 611364935 513423380 198679183 763922619 353043932 284079725 107248965 868610210 542543766 381546064 926762833 741251313 929192723 133388566 693098044 312044003 109830359 828176291 391407230 88362782 695164990 579026461 111775105 458281117 68185746 549340303 453210681 894378634 289229870 19874942 244839081 859280101 549308058 947099791 157593572 68003079 213825437 936091878 183969957 515399437 95105688 444230817 292163747 38101197 453480809 715697817 619990148 335291012 945276311 205835001 120562334 528717957 169336621 881669029 104179011 618633759 98914616 331415567 349672403 839319601 274325876 454397259 501267686 129431363 83270892 479028686 199552439 366114715 287078878 488148717 808305134 412927129 712526765 474700892 291099413 539395860 437513573 112502086 673976999 305933069 787505735 248615587 593632683 548433600 643758243 885709301 398729460 454474781 57912321 32873051 968200340 991022671 887700542 571653716 815461796 841815171 685471544 175690242 995443355 747060363 363722569 760171448 73493940 281905237 591076619 154463145 268890945 437060906 559023297 6017757 973107742 28923218 790741842 867274944 18150915 853228119 939131552 639713016 261619514 986638915 517425256 362548457 886221075 81282205 479101861 844152205 227256657 698355102 162500549 431297990 11722546 405492324 816534696 900349847 529090504 395187405 238658900 485878372 606264032 913534188 660451448 371001010 136690710 609215500 813436276 405134675 374421855 230740241 103369292 914309742 384154286 540978511 257490532 484285051 148496936 397301859 237253406 403606708 592083882 625930291 322397341 554945552 59063519 724300142 533343715 520482342 892081018 911574785 513741632 2107462 145113179 841405151 286312558 281260287 581469812 616434119 689191379 952129376 914958387 867066417 318036946 469095436 382800784 322301915 320448387 693041401 945481004 331115564 738439683 729847852 369058017 891275643 561812482 345313789 792835936 772344515 80494932 151734862 268968883 386131856 999973527 397259502 485708162 777794825 69662534 961103131 425660293 740012897 279344022 811018988 523376166 826062741 715318181 336364733 633218126 136231507 477759693 19879037 268202443 417738223 606166505 280409178 363055858 71283815 992804254 182697372 95969268 468116914 868242873 241463659 284546007 636613194 363487740 749072209 195580585 806410105 546516625 533863539 586855039 191989459 902437275 905089985 262457547 767065338 592910881 612916394 153952380 624972440 816725545 836033520 962178616 856754607 669772940 262606302 930571734 321262135 133888687 221644084 240012405 655944247 16431569 441711720 672962035 435242535 262197948 564007891 246581910 675265982 512821291 483382515 317820051 815986098 769502808 671388259 76883799 602900424 977619859 675559431 199146806 246036219 485243863 631038055 911852510 983659998 563949732 878463956 46627722 789724204 435441257 128504886 637333352 205364272 607053039 998941570 899678799 760913826 818624843 187125837 822921913 425103757 102000656 780171133 642500747 914796168 862583801 798949042 253963826 262790883 668933726 653592884 840021604 30973151 821808579 37599835 392661088 966030869 715569533 685286727 247831942 354156349 396237730 833126338 798424496 650143711 562554620 708834614 213041870 850455368 115937851 735072798 572751705 643886770 891531990 16136278 748629627 623308488 395520307 635957644 329760951 408966949 954074567 341912502 74500118 223918705 336192934 205908268 505870349 224010729 980917853 273785887 285873214 807959842 547674254 405490623 974962620 179001901 382139543 266796146 470904044 551333056 642660769 491920284 935023050 51322235 154919946 340061368 705769568 834672227 38220291 747988583 804299560 782260124 894034087 656280169 332506055 239067578 353126845 958514667 993550735 594367322 326978041 507723828 842164250 499457302 901423914 331733193 103996449 594940683 139095357 855936495 229030695 477738617 419439723 58964823 782061371 646089238 733361012 264889379 770648765 337116450 763693724 208887542 557576965 446130659 550306750 4224905 415594595 819092320 626036466 590115273 606885548 87996036 480721072 30223752 335520882 50712974 722219830 763489460 480029835 388818336 274140846 370804059 792384742 760107682 566175096 795812032 820300675 875455866 851938684 355255258 665336364 945934602 436108022 44701085 462701827 130741856 236087422 676530216 305555877 764779861 261874468 65190187 21297329 910072489 191604305 890599606 694343600 555148101 64521888 484169440 341540858 965834881 532715589 223705120 189014842 156312560 511627025 255128266 72512460 653700721 456762801 600029015 299913581 762281352 946521164 318418489 418081356 947338799 505247474 824477104 838634361 415610733 246270471 110898762 108702718 109099590 388458643 146171790 324457780 882509186 316298 254128433 886057941 641469398 518160418 61594136 653929252 759530080 890310210 121231441 475079742 145565718 532643034 789615316 967372613 604291496 839073624 185057161 301687597 788833887 821822891 142685588 63610778 994316695 858336752 391658336 859810483 256699374 226613138 524244052 985133045 334265692 204582726 96132162 967463370 575672996 456758613 728490019 579155043 422901623 419839800 942143982 599540774 881389 513180490 463583339 336597834 196763985 463173855 184527328 537612207 187301615 516328590 655143628 739380050 401926188 791702875 440546128 833099770 868642164 98045126 193588504 350673610 237251216 334214298 889771491 502407417 457710951 880846061 601698688 943611426 395297685 437108682 380669426 996750359 98138383 114219746 668258287 351956471 585876282 82756595 208993103 91105738 551035631 95125676 258955628 451980286 782954314 460176037 80654340 5912048 466798030 470596749 4981080 919368996 14602072 37004343 678794243 452867230 910834932 838732161 876081861 124449296 657903229 273141012 91742273 663205837 527196334 590059056 52159501 758961912 1205338 264161392 389827453 589813513 66917904 890187704 402326951 219251010 817195194 936044425 355082638 594749638 364087061 92179471 389268803 378235472 290594208 97223260 267809887 37106236 573126549 622993140 532138349 447520604 806602484 332502167 331092037 120460403 531126109 118104561 330725922 558141535 117999695 254615488 590278781 930479980 704340490 724180012 581217149 137184719 149808266 602788247 287042771 427228105 80397175 669253266 909804268 366183770 970486262 932816002 152805050 738088197 492981487 797406919 209860361 483511781 814000800 605652522 738797264 527505832 778170510 92919753 901857317 174987240 599486233 400247459 891870744 83101026 418279376 832302670 82600050 317768151 38392637 634755393 73850663 583167499 156023577 770040135 444234484 499348857 806661678 599020810 416987047 674678291 739341919 428372787 59497704 410486619 219332053 518355118 889704063 789220766 160344935 934566084 864865361 537554816 679031619 326576856 246979268 480466371 561484757 18966707 996639438 196218128 574950131 742134842 1286720 394436335 939626120 753204710 347297867 144384185 667003930 660373482 548303588 89098161 195056060 547986246 244550697 892277414 987636138 618658063 533227102 144162856 764981061 308837368 236596251 55977640 561195944 645151875 807775725 997616162 638759441 903460703 25084192 981302752 318904835 163687916 370874254 187579214 43920260 742538626 844331803 453409258 501780085 948680161 955761845 98666583 139773252 58827005 977512053 684398812 812261605 77233260 605653249 379882790 156051923 258783411 248202604 987750483 474995264 319714140 860311949 41932720 666094745 986989585 347745517 883618097 794169309 62415956 275382801 97734784 669739964 168255105 427878668 105870124 819524340 330966448 946571502 756769801 617013943 712208075 605303172 188509709 259544031 5962641 880576709 377187131 454218052 592477564 665251895 142424955 760487417 177564872 487268761 268085215 68021363 795855684 179057384 386034846 40406023 134955691 979340685 80486595 401068850 855260814 113754178 50742490 642030042 658304840 561748396 699044448 782106228 539312215 880827890 341295106 610494417 941184702 745740412 56854585 896463660 253108039 863943390 11730779 908170827 657076805 507347764 744423479 907652502 247698283 109983930 325473655 654573103 574327622 42768366 76064213 271346207 530912657 855781911 73118035 637569191 490560951 717118317 597411627 422166492 530910208 417494244 390714502 612979626 360731700 72598532 288300048 686689192 355938067 805093500 631150780 575164480 41617525 204494190 524233630 863641131 623401304 352983454 128392183 209931372 103742344 304617687 107654033 949888717 758046810 563180977 64990826 645805145 207069236 541817683 856698275 826047425 256736061 880272792 890311477 277714917 671024785 164527387 458720464 224501796 806179055 123135155 400676934 620736383 238312699 522072074 247711109 347694316 800581252 340599830 257802411 302774792 465868858 71857094 524206818 499202333 417699631 29910939 505216419 538018776 577338536 797634252 711904354 395963353 707874654 357106783 845578188 396982992 371319695 162653441 792351876 319200081 126877569 472202412 437786545 238491110 241525563 262952184 483014650 649709472 632745624 163125390 49585016 257126453 111202208 162347622 818138654 304955152 222397597 997902950 593708675 439303380 91609926 509602848 457357978 171349390 938795722 537944141 290970657 899304124 854411783 247221723 695556722 32609674 716890965 448156411 148220899 403405545 160574582 818501817 450776308 309824860 300285452 227979022 409611796 497911318 387092763 395648083 53953008 84662955 473127473 251449367 336602060 325653774 701200486 943211642 645118669 49638166 890734704 247771908 93029955 771420193 252274381 953275926 982441320 184125193 921968650 941737040 107658441 777299139 126494392 791529721 506815519 353274800 341913505 821596975 102548045 347025079 904345392 10269905 886015709 315259075 495615310 164367422 502022025 129938870 187373368 733247439 82158 58070657 327866177 351597770 438894410 227658265 226230728 287139041 661698704 934499183 228295360 30853553 278250212 764509768 347852426 746702595 717007933 986037559 768180356 552885859 589353588 615350781 700783300 645882917 337273400 487344656 292313599 954073270 782100869 896046723 794645515 207244737 988128087 844845410 344943068 926652608 155428575 160320994 729644930 645844605 367681131 751126464 891097396 652208181 184249404 36701131 909876400 925868749 821105980 746065568 191569181 967806051 41977170 573076543 80435938 876228902 410599179 55000028 296196484 734825169 705309985 978519492 31582303 548646443 130577902 694141535 674260382 946598405 683453893 103920916 250341839 552705558 503494937 922084346 129472572 144537019 683315714 610714383 720916042 571621602 168784870 910176967 592005131 81696898 957917171 200904037 228317950 709449239 2096538 915773403 837977200 799996768 176191837 624261211 387927563 591571812 842503580 563098187 629081239 410400418 652901355 57031256 44170415 441462010 935193126 904365927 299904038 400944747 588289233 804716297 398718495 217954770 410907229 826659716 787490255 551169197 878363534 36778348 535708913 716400934 523676446 434550040 268668635 965821149 370236660 882637487 445691598 513119602 701199985 827302356 695561113 48497071 733696134 862383686 306109267 718299384 293783247 396058030 117917342 937972439 257759904 543283352 304291813 215419665 4798894 562765256 539995316 887566380 100005872 992969426 719535803 254954985 635189063 422608196 358776622 703496798 846202071 864095505 240377858 814867789 334111923 238948224 121069459 956689356 512654455 872741087 245218384 318932241 321571181 643698603 153861151 604731809 552885516 49610663 252112580 3332636 669128506 659860330 651519401 248153400 698998241 605604440 177466285 186238604 523640054 910214328 411663505 526344348 348572927 339525001 612708064 95046137 793599384 625722999 279183816 270301006 369043559 735965504 742346931 145779805 870523104 483830633 917773427 947906074 895761146 366333696 417245738 279347352 347547773 284613076 399630868 844442195 331423780 348049743 99332598 895554475 713078011 4910812 439682684 194585295 409400571 893418199 241870937 710579533 456226402 911175567 433121051 887453939 466812501 890976686 34388303 871638962 617851927 233915225 496962553 683999249 623333107 327323672 533090805 831497184 620677616 822580544 501937480 885181226 52442832 367628123 262669185 675357711 373251160 414004298 814430829 878309570 505202211 64599132 781861134 246309200 593107358 346479535 314136791 465681984 191586029 290096119 950376813 287820177 551892272 729467122 6547644 564372534 116859595 512899559 867469832 851970746 645680611 645443734 44242918 120969895 801642332 831760989 803391459 699749340 564384014 948127340 582231297 535779358 661876135 308760119 688948783 935526614 521050996 111602041 681110394 429451415 812752132 639515631 749530103 529038089 382743925 597260004 878800877 647313124 484894165 58591083 575026796 26943709 540179390 128608171 77457252 808622961 657578389 224016559 969258537 646874685 245272847 506203752 512187974 374435102 81497374 72932218 582196770 442723229 601159048 107763789 40425130 466651544 106325925 738960502 604750797 513605349 346349425 270418091 2079555 979256889 615461479 60303536 929509211 724259393 654940914 433152841 619636386 354636312 396552769 278549775 431918819 492495235 501363611 651627231 314915114 84097058 803668156 535220937 13239887 651878576 437557514 62374462 560149038 952968292 467983990 402346582 262640585 109007221 324162363 534844880 584562504 744228256 547607489 225035032 684403463 220333611 297022392 346791494 691670550 70429560 1896386 129062489 531037581 436126800 760688627 846658686 63884092 524151919 647875863 81225302 21421786 233514504 108039251 676251280 312899257 437208692 101566428 112646111 517170362 9108878 822810847 436863258 138176878 116381865 504988125 786457113 234625938 506142990 456061178 281828215 557844085 563976768 257086563 546634792 537560617 763691025 453314081 55353037 152434658 494210297 265040766 797802737 232349401 690096052 879086048 779014048 821142395 649449656 463543154 755388566 510394 627143284 354404998 916677740 374674130 810962908 628268441 852745676 253096222 553476468 846759496 248841548 970712122 240092454 853394012 170549433 374952027 594963878 166048696 642484254 329244734 201214684 617336985 532740904 803952904 965521095 367626301 982837230 586969469 506099313 919820536 829383735 343759596 221930641 904567100 400700545 833450326 629160977 966935938 839805924 268495960 428094091 359117656 926706157 373506628 505979121 629209537 617822160 759679180 15464382 31479545 699052561 174025465 465033539 353402085 542686657 216430428 51480871 388712425 752785895 909278830 810988520 44020927 611653152 361460646 780801789 830619560 877161819 558343163 591782779 676323593 202997086 719456297 486025839 618409186 116969323 195157372 195265112 726654261 341793074 54893098 485877113 168069730 392350361 279981437 469562189 381701477 968538182 124146249 938775091 817154128 920617885 154349793 487575070 140694124 14921645 665896404 354246965 23942907 597944998 706146525 407454236 201141514 747166881 921389195 769605706 704068089 44282835 465027354 392390855 594874813 505263572 13790061 39905701 696529737 769227107 4142758 520033391 614646090 2571602 247875667 554001084 217535908 337318872 205642172 872764019 707195549 947854877 321859046 137872238 482625704 981635877 796218974 89768027 814017809 5030293 825371554 583010886 483145266 219452343 216161465 188573397 392654304 552384182 190591063 422510398 320813263 95889111 919069174 782702564 9000489 25391039 591012362 891082381 807267649 659629025 40067573 672545968 268055138 645133994 402432855 364210821 815175154 303697170 583751441 752294071 100718307 791195454 526388580 733032953 775913926 291144579 373820074 8229437 299392582 443286004 914259053 613176665 654749918 990491353 737747840 381606532 715867351 491074411 53566461 410689147 725045658 773412839 915087162 619715212 154328273 863613916 659733598 554089735 322965336 500936974 559935189 186835713 5788979 78284849 853847620 897066500 503116582 623475208 366834789 349631768 187610998 254886479 495930895 719170762 862828856 862323437 560337590 279520782 550411886 64053151 85017759 979383890 313389724 826258749 282046817 552520117 135852521 400447759 957965326 663563417 84384846 881878971 877696036 191450183 772623180 300866001 997244432 977933480 923831527 22600614 801874214 399071826 525356582 65653529 568775196 412565300 335252039 80507463 666932534 922804222 27315527 433121730 691246925 748200941 455708732 175278682 122136914 136941676 450199965 127152604 370779086 99231029 888670054 173500279 721748099 466461917 783141824 293125314 516078348 394422009 52054572 678010632 296543472 517703979 350522167 135824939 204818450 532762699 519667151 516232804 337001280 111749857 545901158 526431256 429956136 496685089 36413262 554453194 127759412 274320673 410059397 720068581 316326196 482065729 482633891 544508492 745868875 565243351 512332962 520638423 22299573 721284323 936190556 841550102 983766179 955962050 116574285 959793182 452752046 581290268 465915509 341648515 893770151 350694177 707462780 493360280 127206185 322482599 756639600 942380165 678402677 497999468 618215439 518693668 691753573 254575984 209518952 583129179 554111585 494394772 75046121 926864028 124653805 440540009 632573092 221555608 238105793 808894470 506555575 762377371 65589173 575954332 55992496 3499152 3886437 556029903 109624001 44252756 122622819 78853600 611639650 163052543 528636316 31834185 482236168 231006143 744659874 718618824 78040736 206702772 379807416 853092523 534384638 671540028 221837876 970136831 325443966 825295689 656369589 638009460 31302251 168722175 833143114 860250366 92879096 542006338 705482199 24938772 58158004 372286546 178025964 764117123 539136703 587309090 595200844 103863127 339548434 98878511 6466890 487851142 934748639 860486311 182580902 454607083 29416956 351742358 246102609 222223900 750183854 396143347 265451757 490537479 736172274 731686831 920273987 593214935 177225918 178090910 734047579 293807291 873493377 25173672 310558086 56568490 398084049 430237751 561123777 594104993 471427496 957447791 75787092 769431708 865079972 940660406 639061832 697730438 728010568 103623614 106987542 528419640 738466382 806374361 48875287 544573775 943246727 41687384 466247850 561811158 957884327 164066281 827609285 732447989 983446484 309459769 307992088 126786304 267775834 446297422 684206322 573669747 831077695 206680096 67363823 452322431 891538607 984551219 186046950 595923922 388776402 387970202 710404156 202273804 354654470 919547563 862460019 807404804 217343859 44829113 109153500 691874256 707905088 69690670 457704046 350128069 863949051 604483378 708145926 277441597 407137584 48512980 330063768 905497802 157204475 921942750 191394137 150914861 711784336 687222653 932810684 881516673 265083107 10451997 804779467 817506067 29620144 114567309 919201286 813568071 774765203 757491786 169873464 928323079 222156084 910290460 362579764 710765188 4994902 895590574 406701555 590181539 219750872 407105323 393888967 624734459 298374435 275418045 861654996 984124428 613736708 558293253 172093082 479720158 130225998 462002601 428690790 600909066 403348983 418498071 580754504 341569078 104066776 659602575 130176060 432869097 483012804 177109220 523301939 645189469 950541896 140050982 398132512 751163810 672202454 368305650 561027592 549605604 33896573 284614350 945557336 38657996 523705020 497184626 265723994 496418779 14832417 400993354 896421803 678115142 645970663 424844838 612353638 38979278 729074723 770205487 65993801 877509657 803486222 171707241 373519844 295780602 280040183 110118408 795464419 404424703 612614177 189204826 335617453 286068170 210350394 519323462 471528881 249440884 51988454 942308594 473209308 257079304 116656875 532737846 233243413 63378871 495568813 939749960 878228173 730025667 517106395 487997073 718218047 130182253 238864713 394779524 165332161 640371911 854185452 674734137 20638253 673229888 796553026 156703376 1913755 448523598 983511144 308395395 236210328 141417096 306463801 83769899 199760433 280696397 730636540 899825968 864408 542047150 591792341 306809583 704110005 905180371 699722455 582391327 378834710 1123971 274951124 500636856 947180968 560224180 434840903 492315245 733324720 599011464 262848344 472646355 278686099 907110386 683561408 270982336 697298210 899067795 866492566 143154930 501122967 680498044 17098102 810573171 955711305 643604454 397094936 114901020 176208678 405343738 624634203 613934535 358361973 431428671 356801242 614958338 711794163 914866611 779750613 281472778 405913885 975333423 902787759 10323309 673924738 147244022 231260731 624545927 705830784 760484682 907765142 274649872 699196646 430752657 195293495 970172991 648862576 200667876 341608742 114588141 639318516 353203936 247299934 916131403 207585939 229439273 889635805 559860068 575972431 451244814 473122400 116857102 374320413 413653902 256548141 902758966 964202016 273378653 753296939 751264805 703467986 480596927 775611626 173547449 368389909 886736837 555074688 38300773 903655544 979168923 480014811 323809011 704383530 196510331 155956222 642502036 962998501 169452600 832223181 887640567 298169585 130637346 948926187 562224263 305892195 819200218 782636872 339665140 106245478 33278158 157077584 482610193 882084022 906643858 567991527 506434953 551318487 377596588 541655810 260409176 81313450 693886690 741666506 103517223 626196353 330982399 119499651 428667350 539459368 129112449 760558942 904222488 436013481 319728374 664497576 429253664 128053606 540388236 512254626 774775009 38087915 873073917 213712217 980165504 798969483 443792233 397143185 429018464 36215161 975146211 881211162 997999888 844887560 477791644 478241933 77463901 814701789 891434046 855796055 144609969 5934551 773691385 644575997 770522972 775484722 565504935 520543347 33591730 139546938 985589189 223564032 600214208 655811836 119454489 677314783 914087140 62481233 707566614 490005338 195188464 929805954 858321218 988119378 327938188 972254710 177964926 48080184 216592707 547562202 593722956 83899669 387320309 303907627 577208871 491439723 914140671 116051552 477187061 570677992 817033828 249203855 227722346 871893271 918434654 412986116 224594397 199416429 396571687 248017765 118344636 528869481 648161101 881614157 121087088 335702172 109212505 598124359 598868887 69701054 295427875 802966351 483373521 469024258 190208048 124828384 29349300 844058161 98090826 321633071 571002520 937299261 788404997 48146113 1951255 512587553 573315148 339219450 839597166 257499605 816350874 744736018 537535717 534816179 161838810 8199454 265858603 71594260 944242600 627342887 123273097 664961314 657000131 441773445 135609707 467364221 786006018 446972244 499894970 137894037 832457675 134179090 813485461 958811970 32744720 513513028 160687753 945964147 736161822 923395717 925891814 870216053 344483296 613375876 619586779 682244625 558755970 234810347 970832927 831066259 578257281 298098712 86751858 410909518 222596353 984393078 303704190 758675374 916786681 154895198 221979663 920993089 588744979 869949807 279130768 424593130 470757336 141473740 624216783 315313993 189772790 645056288 354416077 7447867 469030514 537258196 237094676 429878610 947008950 339185953 520472131 558915749 575333563 916278714 83025378 267588297 111616601 79652453 560145278 725869919 518212804 826866519 403319628 800879754 986591602 462606396 77769474 924190590 337009432 538380244 669984082 405958414 891127926 116368020 32584419 838751559 106246629 118862742 426209712 530229870 341282035 167354965 610625002 265657132 593920718 9415812 405689562 801272443 681747315 230863936 311145809 729841827 126411668 164391862 284935738 351286851 519966499 704219125 651174780 220045242 602656043 271175659 251540128 327970718 605492832 760105841 713037439 98934429 52406356 747789214 442676435 324076465 338988023 187901909 324327839 838457012 747333662 716693558 51961729 821396118 251402376 696511701 206842436 742286915 834745730 131840489 490476849 447389449 492906229 287046189 815595501 827233083 591606885 926987614 759939056 365334346 247268610 102902288 531802308 364581616 593671228 737228910 314015782 380560378 281874071 280956541 959073639 532781088 892981059 38475162 984608472 913477929 541512636 40208586 290983813 991996010 850123240 39647728 832511276 209316130 665408227 354497887 340066114 326036641 605465711 372720188 421209066 191905514 413690191 603664266 529622540 169901661 935257521 491617771 963301007 427362674 629095629 899063185 35209704 966485300 9756266 537313964 218782976 48487567 268814869 505212994 750796089 781995807 664575118 735563554 394791253 440601956 438292577 81783230 459406569 353759236 571990804 147435062 308579675 176010906 37086919 186758947 853478185 7520207 17399451 58793431 303717168 254270738 44836750 894136322 773843477 664084932 367108430 807024354 618625094 386990231 647386111 218503998 741315186 453914850 63691174 325402839 101287582 117343556 344859171 194798516 285406075 424947780 743185720 316477252 613329689 665584680 720030412 817304254 749359093 65454055 50769738 810895845 511436092 812744421 564745672 224124182 454085906 976507650 466108327 446124633 500869618 59236411 796454365 77139158 596929640 80672600 561110027 711747687 162716232 842396347 418487298 44063813 206567488 495085318 317746934 205395956 390088300 172190111 152650264 261624449 777683928 904407001 632242850 781289005 303328329 796533140 143939069 206535233 89056890 83463010 946397221 535319756 418112711 994893342 237200645 114700998 215373074 444431116 271916720 74998561 673265884 467672623 105818536 283010922 667556326 95794783 380290313 317697205 429817052 907795137 35403874 103180367 352696919 135880306 296489102 438368104 118302907 677929015 402331722 55161395 744233014 172050409 565536902 627695146 699812923 590882411 393743104 679367908 611107994 864981663 918103385 984168728 639350681 674777156 638006794 270075634 577999354 474317326 871312525 122244144 272236204 666315187 330455439 69722842 826951349 161096888 524140771 654150969 69169877 466050311 474886822 560983446 460930531 356071222 904198895 116426170 377022253 613787752 964183733 913466160 687214134 207027208 753209038 185811937 808620462 280696797 277814716 625254911 207502545 699383601 626053317 322788935 952387760 247199148 703760676 178909859 705757131 547592000 855497826 497794385 636815591 664283584 131285395 576694605 523417317 119127312 844458442 132504046 37600108 347996496 784088405 327686208 376769644 44605048 786554455 99215871 463883215 165400284 713657590 406541255 208005675 809064817 688659393 621612099 743011897 566511090 821291904 538273679 621353238 189285197 350623663 837093589 654962458 285660812 41541528 480430418 616423308 107898574 655691698 177049115 982514016 433304024 61417451 312993357 337609766 999571104 838953542 563311283 851317397 68172141 760903555 105917209 221308167 11366309 440225001 416276146 85869453 240123014 223142202 607880648 304176474 265929327 967438635 254692200 972396137 689339868 619664579 619989642 503173172 591992720 457618475 965359710 76928731 144296261 688957889 797751721 512473546 215733536 787323509 290034115 915144028 28315631 433459150 776002823 257620259 515077193 68374632 300437204 988618658 484939754 809182605 105937689 759837413 353036503 865037131 114303769 505963152 30051382 932491187 659312116 934957975 254199961 479690722 731580432 177513025 60203481 500280903 294951799 294765628 134884380 585145673 422389617 126687079 261516540 166659629 469032716 442410262 562948071 233619365 831956030 993407161 899744799 507540275 518312821 355374611 445935059 554858390 667864353 373870831 826380087 157059631 819132721 205608587 324421801 921776032 765204495 819674711 764784983 735938853 859416907 77992852 967168342 804610125 473166130 129656237 17140146 996767858 445226358 378604405 469852 592979282 881887069 264241120 703508704 704455046 96949923 755857176 528801436 460803064 706299148 490381644 592253894 144831607 326643127 294996910 566684828 450512599 522009984 129058500 276528106 393265887 287437320 438886352 673474277 215768262 27686028 653462979 134296547 468942976 869408711 10627793 592567790 115864987 893232219 960774795 30862029 848199685 261201579 637698340 369429189 652817756 791728830 58629002 376419003 166246955 413336956 689645084 989674315 611392449 33551798 80390050 559351188 253014417 47502483 446821393 575776013 162838447 542097770 588340097 905398860 334362645 270901310 918581195 304829730 93741236 843529538 995535495 122057290 599943202 58213854 364106995 126247695 184637925 852343174 850775932 672961443 31933976 652515787 989152702 331357685 823816057 410381033 732271833 611332391 164342163 755334967 563524701 815167760 770318229 571716083 300450047 27824519 819321070 759978147 195339098 590029882 967045045 734051788 884741073 159223354 427715765 634170722 252403231 6930667 100519092 729721585 970509998 565257485 554792480 521567000 888714007 370118278 131031308 89868991 945715425 83248535 817806427 242178134 830366382 926143632 398083213 68478418 850995584 871963959 353831592 122920068 387661787 698302209 89984138 78418059 990269099 68463397 455891807 866745290 618079623 200542116 624563041 980679704 51249895 44800862 993372760 814901970 382060117 182892496 983098352 806051229 348582788 431661142 513025229 171417856 111961887 536511910 763356071 222989715 852504768 175639117 542796069 760579963 626287124 859280191 104025894 544129518 184759113 863676906 556221618 254078379 222080136 647375882 971677817 612014912 455003271 478564294 519618000 695037136 624415514 40375725 410747796 507750272 432949501 5984988 754723875 23963853 460822347 937187411 541719469 138534589 722625080 928140529 122510465 934411834 658382941 552892373 163457253 130338238 242365717 817073326 854972774 977630009 428481122 916238000 77261602 114615232 639400988 804218962 813943749 876283360 61125810 75361348 498758687 323774838 274007879 557043140 458070494 688058765 768132563 895849225 92483603 481904102 52319086 648935135 978464018 347743341 973976094 259792349 134995653 705303373 334775062 22090779 71218354 441885633 167261836 512650156 702138452 705722096 824890757 327869137 497071424 596202754 149836726 95926187 898189600 867211293 595751379 295310433 711918116 116575491 614588003 322490281 174364892 395825699 852914419 41185996 945219588 577483101 347428870 13343265 200844775 845186825 39430315 961384238 899166295 457363629 898756102 1348239 695684732 833063402 764033697 411097556 290218501 621289277 95441911 149865190 419201965 908875119 371822577 946290294 895653477 723778938 242267406 228542651 936283510 370804881 474626137 920664462 483715176 199591851 340137264 499700158 927797558 936969679 733536802 530616790 58297028 711611963 547815534 192774507 228469065 298565476 980318742 668902976 793384733 774986338 849239420 406947879 290079207 328146826 719047003 855956793 535142422 598964804 959910021 816070356 372116102 113716978 616053360 597795429 649912061 512203920 623831220 674403293 365226894 563501141 278124276 917733955 957064616 901566832 775528637 840055582 640910426 928241599 480834919 356880146 140810062 111808570 555465064 727530131 567043469 991508821 221663105 90193607 301636371 978787657 831570328 569740695 262806511 404618276 552150703 450848492 695102583 673373245 598283061 125749045 133726229 843074951 967429014 221648081 415087829 63811250 384317670 693264278 969178037 393335512 757581145 18563825 716787626 202134259 772820477 599262513 453628278 640585634 292993557 179003008 742561306 15238926 724390263 836448471 672853378 427253606 47735061 962201773 897238141 447478030 921164696 231548906 622659861 490196156 294535419 175773301 111388691 116209627 955027485 146800087 643195560 99337817 500109570 601921982 440791959 927209708 57834150 460807132 532605607 393842202 949157515 324486334 549995400 259434845 201990354 806331414 925031834 340114187 588092039 414375612 88372675 267491587 977231881 184991608 710867464 330567850 627697254 536780276 867110839 730201449 108788386 796041002 899093353 989892522 111576046 521402316 615060883 753912995 680528665 643540217 590713907 142043579 940272198 741840323 405021513 613687328 845921230 226872034 563767887 955693368 853954764 93644414 984703676 253005199 6384640 992799947 392016021 384199632 908499992 493746486 543605215 30862574 213848396 564223972 903015920 185947609 218578519 985464182 149386797 407869286 734113801 98023694 298574252 181019615 787397432 4735682 464072406 782034524 740623404 120915419 64421179 81453312 857421879 539031237 606128658 681997883 698075737 874567839 107909955 245557041 702660399 754920328 111775538 914620818 986950530 281734576 518432062 320824335 12392374 948966552 161752267 466417415 602943128 688649968 69637667 720481915 895775350 405785804 307741270 343197469 531981429 719670377 63943663 652388558 238775172 503137290 730395388 68216745 830169495 368661238 910416458 298666810 289342858 764102666 45773979 428422165 32224020 970729845 522638696 817135636 612823021 770049257 114933460 973836623 632436201 338799037 171523717 510127367 806945102 367455058 250213528 56932942 792859246 290273909 118915960 649106348 125913856 931197921 272155442 10817599 403710491 320646067 38486737 75724532 385375844 853627245 133811431 866413936 851079920 629610071 633417842 654162618 922353500 255096514 136002150 614151160 100375680 476380560 481735010 681177992 471315321 391350024 543749048 890686029 553729126 304550217 185968996 647120368 713253706 761662048 653538987 725654509 112701672 76321211 132327579 574819420 230980779 537744171 578108199 501564730 359414898 949478281 467470135 714137045 802898281 100218583 471505787 695849427 428204251 379475872 461191166 303093980 46270289 728424522 7614182 178827132 744788781 567957976 621155559 784566667 393165220 562268812 337704522 673027324 223780694 497015208 489055129 30492643 27289857 365104960 770143791 915231599 126914419 73194165 527218462 423672578 892548755 497304765 963895642 383202154 257416821 892895579 940315342 30112695 984135549 518833326 813401666 52283919 34804705 212951756 168080711 916972543 375879365 423732521 590784190 891651658 191925567 962586338 257260880 405893291 37551678 852884571 799754861 672752037 142221958 912736696 477186152 728046083 617027613 294600568 343525760 604761492 601085658 721544770 204539101 388603472 278229085 992374057 838810947 317882608 502770866 953942771 499788187 840116259 684228569 158450899 644368903 983106852 65568700 454145657 28829299 156718157 333461562 370614395 101715006 289653281 576419909 274496107 419288213 561655757 803141933 381958110 297835158 671370934 447659524 549835474 248187855 400589163 639892403 397796484 411377101 833189388 247557111 171968877 950339169 793852500 884120849 699091683 506473163 493037783 323802366 531414462 789688940 424090229 632257944 596242754 657567226 153822517 823285975 126170838 241292410 537190750 857418303 806826677 49581910 449135705 30452810 240181717 162689792 233563555 21942798 139208923 399192625 251852774 835063483 601249566 140783153 743910604 53628335 312132004 116689508 268729945 214552687 944679223 797023407 608480638 250449053 787047742 371149441 679466902 890305544 688755148 403296434 263701164 672939459 716343859 863757682 971177636 267001664 705450089 971779003 591762924 261611513 627594651 188881851 529399103 756320986 321838303 350712175 527026616 968255301 704037807 601856252 996881975 186314384 450095056 492510724 334937664 632342368 169260219 716759412 348984828 613913613 956604968 47684660 152325836 478525799 210200985 211854646 186087459 744469582 295444497 372852273 242366639 426550140 845953413 989404728 927119535 143471502 123171418 884345361 582709846 385251666 607715576 479156118 20348532 739438796 964284912 556163927 771904237 214089203 49614670 887283607 464528207 622389465 605139396 612527528 678036521 879020318 869901310 679165640 316916399 77063689 311063183 157262957 33404733 257956697 370759857 856016131 362937704 253270332 235592838 557363687 746518725 272515538 185697503 566296985 201855189 364692738 81748096 139416601 643899181 240069267 603645526 571267041 930821895 973272452 384500099 512260716 153713555 482878462 807119906 522698546 497550239 470874716 200682703 309892678 605824289 802736796 847176117 814106323 942175503 945118100 96621278 643079256 689816445 390249021 303021870 50131428 269578210 433854637 981248825 665973118 852465288 798786890 496959862 103850891 383911836 38005153 572130276 63406970 186784264 218717583 888757434 295438936 391719528 984547599 918854111 146215040 597179089 567347600 454799719 345493311 20686692 465692232 624006204 854820921 896335236 972118348 30021248 973349491 38804233 794046538 192516917 930118432 429582790 250861885 708271810 515089565 569977689 461055356 225412644 18939878 928476281 498215780 943228075 688528073 148670505 708975998 573513409 878703226 96664718 618372602 438435396 919928017 108686976 562369778 616765589 254420898 866215624 210685707 226902040 541451849 149330085 390354061 756493200 743469971 947742945 610594771 830986718 283613071 91903408 36156766 420814485 614608003 735682088 31603532 232805412 794116940 779843399 428564478 671703252 66725674 110734219 90601159 633350074 591044429 925800181 735820092 867628323 884767506 518865076 610468207 421005747 212414497 40873891 919355047 369024464 221227057 510152922 758087731 517871340 343401579 899725766 82263831 163682946 374609876 342782523 943365529 182948049 308242479 584263729 421030664 551324598 325856207 73431938 379031654 974865376 886115034 115643412 868838693 720701294 743843489 733558565 6070675 81196889 794577946 487366154 788579649 251819658 236939665 772634249 588071723 398215396 738009795 217055987 813600230 266688990 504389832 904269112 844336359 158340830 313646754 276095801 334859783 740472357 363546802 848106059 863627354 802555066 328549569 479192381 936588563 491482979 364076228 857637783 451984457 75152310 262560563 625303630 879806072 197598867 875519329 209104193 717189809 513942923 64829049 573543706 254549562 408264683 98457040 885336480 458720790 412122142 11283369 150683136 452123019 986408474 127524425 865095283 174535747 758724080 367145112 760294483 623224281 645174495 741685871 794657386 279785133 450073074 983711262 205998566 180935099 969948513 428928127 622216093 763469797 650145894 339837529 828323803 557568939 506832456 51658233 781208374 660551936 481965416 426881921 703274375 864451119 47587001 686766598 473559843 300272216 311394759 818900498 51679932 964263260 392887023 380466763 371507186 205886787 147948116 288421621 832935480 145653305 186907935 75035133 211547386 521016113 630624967 84043074 177766861 143117293 619090536 316951846 760396071 419138496 830475494 825629850 670179172 525934707 188409141 21371209 230281959 850945322 381086243 208075334 269610819 447509345 763385128 280822983 863459451 502354067 268906120 940535763 463901946 287744722 821164536 686315381 794746500 220763267 750724433 310375666 138497690 537361457 959447113 662737983 771791054 134362919 32533844 240533337 327047983 677755190 78935457 158643224 415279422 463141023 80333269 534816068 753772992 681901788 712784801 807384024 916355961 231675056 943569710 146124206 342589186 969025471 272329001 364448998 683428059 81283792 1629602 143882389 729634065 486033543 185529333 384660306 819996926 615892960 85485992 787418984 906389643 46296124 174050911 256066718 604560199 445949985 215029482 1176604 757653106 329556038 855157406 812686489 785880199 716951788 447753399 509663648 964172207 536113690 234042302 227650996 337831690 995165749 499233786 651390232 902680410 710914605 225586829 516633711 675838398 26797706 703712879 516490682 512236948 699228355 248942440 498161286 404924168 207989671 305170976 325364060 113071839 704427109 277395213 656804011 6136132 299597956 109735192 131413133 653283356 248777276 505462932 535827758 814762669 443044426 415695632 346833051 687797587 643404402 333771272 858445865 67858417 605238303 812761301 303568621 103865315 154297823 833907483 102851199 57362396 299999241 569397663 76907686 659238980 761414538 224283688 812496316 223079246 238343896 521264353 213622556 849212607 478971282 997959102 629878484 245855140 833838410 349912693 367130768 719253398 254503646 198879024 989642495 129723238 762834467 459001034 237996397 833924341 159638542 323368402 643629324 742429397 557189028 629519601 244259021 605950306 494069041 39604589 218622098 358623266 49074357 717921705 207301720 164696468 334554690 453983950 22623924 436790586 361121038 303909172 475811815 812853495 620733030 685923662 423211837 283772010 559418152 683312661 461930342 789495832 161028430 93191480 288711944 559785363 822073256 347254722 828765589 611126138 709037626 495751539 476029169 314436647 222063973 650411507 974812680 833987889 184089475 997239882 928666198 236949559 792545269 153019649 439618344 115738404 35443571 831432337 949199179 671136193 683667501 398659092 530203890 732928606 800420863 792974883 140109136 496744226 531405476 165867775 942277708 877989022 268489458 103628738 655506812 797193908 175145049 384415338 916349364 1892888 577240987 157269483 721719469 992253126 366949904 245352564 795300231 813852990 635882767 151203750 514195844 401520729 323518640 65300618 774693376 547024181 372585156 575363421 64276752 844910173 506146634 908989271 821918783 618520312 454234570 898096513 948538035 373070708 449924015 352903229 566335171 29123156 836392600 31403978 289255072 258827327 923109178 699371645 778333357 876025087 172731723 587838733 564385222 53994404 996335851 316280467 624243336 811496449 731514382 19977048 10053492 101597872 773003259 251376331 879709513 42789579 511620699 587893739 704276231 956620798 750505696 427879717 251972659 205882720 350627178 836839008 515672119 899351989 415576048 123438719 957591801 253976885 729208393 685204606 496135390 864059514 311711882 182744143 301295471 746424748 320280391 723373416 978352272 134157422 930971594 989212314 244766319 169024243 101320961 394556985 332511282 813141180 56640109 332085163 866231160 200747145 199317537 679785356 180796812 798987663 799610241 893824370 936642024 59815093 435313912 504810302 320996462 952434923 88881765 610384718 569559314 67424292 428736487 667507099 681768821 204846797 430811449 73804008 615096254 200749522 211319777 902754600 856751734 701079539 447585556 783998641 588375438 352020786 185880221 298254612 740904159 502658791 215018673 880725576 138989961 160637023 298159945 110969495 616525376 175387319 845075647 924662817 385235781 454963625 914233123 884394276 799492496 854750113 205009287 855335744 379122254 235057659 427128595 278573021 165675920 267901955 415953562 17412952 517633976 875851837 496742866 940458172 674344200 37903207 40961134 631062799 423215896 854178807 99816662 861435971 664439562 854426229 680609672 117749505 648325054 160596036 510405998 808168734 180290866 852478823 84219396 781105990 105117502 287016377 757876762 141300626 378834710 392403080 114175739 364976348 818107620 267000736 16221496 657702658 824320710 602293470 558408402 645294213 207013649 853705692 332073850 914315430 187855817 319244636 489107006 821060858 675087548 223883985 183547553 499416638 762824728 905118859 58745272 561060910 303806573 207892676 781458035 798468043 542088978 709256437 883369770 997864944 556598689 116315688 364337363 213914833 753257479 413507310 750662778 406202110 549615100 708426605 773344733 784909029 58827923 894768152 50130786 910288942 32153425 749353318 122734071 899124411 430789401 235563758 243120622 16948291 809425372 458399036 851598481 929654436 982299451 586380796 667980894 599122649 440399596 213227480 873886569 780721362 241884075 715924931 350509530 815104742 857350112 666918864 837691569 353646897 16968706 94095115 902157992 726635903 458822057 644040252 135624938 304647024 686815405 278695938 65608804 774963225 652394249 918327695 818725427 597867213 504810146 253382954 36355254 139317863 481761815 754030399 479250816 43369642 586270577 500974829 274710180 845602413 21618212 899087585 495160895 342433941 318445962 959025893 301794203 440841055 735994662 675061425 17664718 110167114 902341104 222530901 720934807 687358446 304292537 47757902 745293846 315701595 730443839 917010533 752227486 595227729 309225766 917142009 558202828 825721877 815169051 145777827 599225866 870716559 26800912 799597679 227040282 431555226 375536780 259922434 90543970 290187502 220580796 707007965 594533208 477093724 687656024 298058936 638333048 543149669 371335322 4358017 678158123 359678052 489632036 989125734 769660859 264929895 742482277 866317473 859143072 417405888 743795540 631074468 419774044 914198813 419737410 953390896 851972937 985827843 6443984 223874664 747435991 136860073 170973494 943657616 801413312 434709676 931590291 812061158 520332876 681322757 129372348 478343008 639727244 887306193 984109595 446199689 848315960 225668913 801238822 593001584 968313979 255587683 407582920 172435746 466611552 434504882 998527382 339219702 752072264 517232768 814740206 234406225 363414525 740738789 712802593 713398547 777219284 808875087 830186491 890394185 598780422 28715938 739981236 750197968 452219911 492434058 185538271 844277909 151586206 642328013 99808240 258240496 607492657 520843244 137712276 105221719 800290259 80104460 44476068 549358373 53038275 649888124 512285511 129772357 107483926 959684565 786373749 133583634 770351748 56520449 931329169 752557075 150912897 360519456 887749350 477403001 101840500 350022572 265910357 993239287 824038355 704064551 486293220 414034644 29725925 342923001 630755138 407669914 406032703 71168755 419409415 72817771 816879477 332259937 381221926 169262228 579760314 508707611 229663928 300718807 446388319 982498473 450842826 217004305 859893579 996932582 352907253 368179194 604303338 903551046 321339559 955400461 199055069 770115923 465187272 915969582 262788087 572460026 360174109 572577113 206524225 399377540 172803885 536679904 821368278 238871367 31593889 249108735 710763144 791273123 488401735 58991017 627419812 912622858 54251242 464867983 260705912 829824483 331736637 826920984 481263697 383849842 957230233 37212055 212161091 853116135 983920469 830119896 367576013 821786058 228360617 63489615 808401447 994672137 56399548 361483279 843228157 619976677 549371792 791399185 693406051 613795936 813584624 539496694 922188790 176676788 552815373 870446134 247483476 375952883 607533866 977630571 761040966 169343109 731175079 775663289 655440981 558270113 283390634 960593364 127357224 627604880 302994016 350664228 394515889 137462460 298432886 602501257 800479567 594016328 116167465 569551565 679781645 571135039 570153273 94527283 820396791 126618651 992104860 411604824 422922880 876461810 448616502 232412629 669341042 543744791 863333619 103003857 736955524 917150 880124262 891096437 101164246 221053365 826457439 627956690 765758605 606964193 514357007 407750092 161052494 311155661 277757898 375829179 13997618 151348171 728225184 22783263 619311381 490108176 202836320 354733544 524498570 415221731 468170576 930308348 236384286 280825222 597864299 418025132 806302242 978714227 989563148 266927464 187892028 100216519 555409908 460038246 386686792 605208341 217502678 175352521 928643512 845285491 758202584 3695753 656899644 689619654 900314216 370170218 56889486 648182962 254854733 777824889 950506773 541923493 151363762 429055618 486578200 535646515 891959140 707570807 916347222 160097617 535677051 678471791 744403902 983958486 975299308 961419311 782139134 893798760 29602958 841147164 371639267 430062376 477132417 280059671 881124742 89054730 343179922 818143383 132851636 796595598 625873629 441090010 626379697 661707950 559147612 429751936 580952792 430065887 499006794 59117355 483836199 298872789 591727699 604909532 427431427 555621895 803982091 97376049 730818485 135317796 225414778 465820227 18414151 140918375 229178331 18500333 499218684 515563702 901768627 802110477 896925033 524812738 217563772 738958537 612848517 432190929 150454271 780844362 446626773 642855409 682755867 958249500 291633054 433893561 130929338 722856070 789650115 266149308 519904230 450486923 88261641 84438476 632890819 540114650 526375627 825253001 281423846 348074109 408234021 490024602 663966640 128054251 102780521 276489587 665407525 426837641 260279698 368149022 680041928 648545604 7939050 306923553 450330083 224082626 361129105 267666151 798065065 273537523 11791962 806951794 248163767 74020773 680549221 503627909 883685913 755205533 381547874 217307551 936415872 237244966 174151794 555246088 767623095 906352311 564787317 230987865 543703611 819264938 433677265 986773022 990958363 78312196 960296950 572089822 789931638 150731566 21808081 307064832 670853672 365951562 727012327 310657475 919308427 764690793 593322011 467121661 863670088 467317754 803889906 122916896 394201913 87474617 416844905 609794390 415274068 523605986 147964295 915857844 553563006 935936526 567642024 838820805 222448645 173859840 222757731 111316141 76397432 681827505 787441117 770580597 637576479 92175822 720941958 557844727 907888982 442709422 390164157 619267325 565451889 115114962 826352720 135228004 429942286 849516170 208795667 807730772 618251626 56211408 1676224 267425261 154631045 430300754 846242259 158401422 528177320 4059936 999923091 755084816 37648634 663952961 700402632 167918408 87599901 859141072 602851319 94702372 431483028 890928749 887162348 204993160 429829676 981558974 883300009 276044316 802733279 387165806 802051060 784189019 560548854 433119411 787226798 13153301 141758587 758307647 972701568 395295143 556062334 518373178 306068261 63253395 989457972 520596261 528041899 300835803 822138132 342775384 800884698 40963338 456989776 501847435 5796894 870327439 154901378 209681431 458406457 295359961 345880254 314004986 630091641 751005659 958207404 998282962 303087160 497878697 843337206 176757762 752710176 414294735 723185127 802952645 93059402 538308424 254310768 438665292 284717420 208902900 402448774 120150663 764077295 767107813 830645781 335418948 306421593 73683262 113671260 860199103 870967506 575331031 370842610 261135087 197878199 824354634 400671099 504889819 838241343 196743980 912493324 281071490 640933133 797048139 125537257 904019624 155539906 498852276 13503668 168013000 812344987 160010248 936278893 75001925 896506452 196535806 956172564 365585193 802459856 97749385 627736323 78752809 679344755 255234454 778414470 520582516 657108149 785268204 625425844 897834370 991093457 54045712 366226914 721203184 964549729 397134104 561143521 247825 864367544 539295080 844033435 468405714 951875250 245284563 579968495 523968900 969243397 862098545 422697524 41601963 5961070 964130331 296104035 364497406 708644669 700287785 412587562 244077180 833180883 884570495 148523369 804935336 683861294 632151436 473103040 937716622 317961444 701913485 410052691 756739736 671500336 88349038 626278412 587946356 508337820 182249113 356775537 275801767 228630605 434280501 731630421 50086876 854955104 825168045 300987533 44102538 476879212 302394535 828007735 875388973 217723589 97917495 354787352 630812765 264359770 286936290 582027065 214188643 749237956 105116727 762284751 589253771 77474328 69561119 917307290 825030148 7571540 101216666 965861328 465525652 214523163 156750851 69945641 889904586 110923101 181011898 620222128 42039882 661563874 558699081 803682703 211741351 7404166 363655084 691939126 275799247 14459620 377518885 471334987 379958778 571597006 98148501 740408201 102623501 900024504 850755814 424876035 306633611 405161709 472198182 667079073 471092288 649098714 854217307 344160809 19299639 142695331 414165936 621557442 558701037 204387180 928750524 630051305 457379551 405158847 151316195 209214737 887858913 27261235 651926284 128436257 639364084 68780474 277814494 318429154 232911940 279280814 525661000 68509510 325217742 245676982 823396560 427590203 354726003 870876025 750582812 844386240 254689812 295134245 436566611 830042483 293633924 274969755 137310635 945584243 177092134 121341465 128058749 483479365 792827358 237082045 362257813 597303908 989350205 594740042 127700381 881496344 122263201 788442654 508183681 347496164 781614574 683786635 39466329 346150682 769190168 901433952 380125202 888240205 966593467 766158707 712513729 510214087 820794764 507850360 935572235 548629143 15873079 71997868 418919231 555381080 894756638 696309400 56992343 170690785 22758976 872335277 823276411 766878357 188316201 400785405 594115539 394092521 434916773 313674703 337370309 545528538 496796326 32727390 757781148 369311230 894911678 625496642 884463899 599272813 838206669 449860787 224471736 93300234 12845604 951425517 137703898 309220455 331833595 698813933 670965426 998217315 19848130 438744375 145355684 599834429 619520955 618090647 903317611 394800657 640861270 462882838 505966140 941931173 752543835 771691771 47178158 908889367 417402239 935250229 829466105 432970973 578086099 908291562 104140695 104678224 990370547 374933718 256130217 440718283 42713 917267549 56942437 372766548 886234226 299458074 861793808 325047367 965656019 129715030 655987325 295189107 367791573 283682585 932513104 484238999 477319250 550116470 670494545 381299212 781038121 88591132 214947880 729048859 373722741 78099457 104174804 458688759 856834709 784082173 372432702 157273457 726367433 880123591 739208039 117924370 227168725 734205663 624857225 84575358 751101943 726573384 751600620 88702009 986703275 251337521 668465815 653102709 240400936 978790201 910598374 195886258 899312124 766367337 814707035 703146612 723091284 866595107 572870280 157024043 197064507 20656617 674288304 491614807 40724771 512572046 459775208 859338655 13490976 304396669 847237461 992516694 429397438 898937861 407628460 676445400 695736812 472772360 338677214 2104041 480286599 418592253 794914075 990248969 416147462 859745264 236738294 713538480 863153214 250723795 531770228 222696566 283578554 894880965 722031923 884624410 455703147 548966143 781629271 383964426 190008628 570132694 534743347 387181891 404750212 866991603 403629727 721797509 295704547 384645678 632735266 574849627 874400493 450754270 561121254 712622512 970196331 132172047 996910067 723280665 281646642 3121304 409916276 926232044 251151293 442663566 634769280 640127068 238064097 891728269 936545070 569335457 123042406 117115113 374928253 291161793 415076921 385643122 397053695 209308566 861911089 579827749 370284121 232946308 690392782 261453749 820628656 588663278 323442701 933018326 288209243 251663520 779533286 659000110 616389 482375052 342307549 741402105 828289409 736329081 682967549 393696891 37454959 449828658 910186902 475833890 784325089 483040933 721398484 665766086 691986900 14774055 60818893 942051666 392090597 772792622 996074669 119966631 40750671 289597240 858393183 780336385 505944439 906172343 401793539 925143491 534788073 556545000 509455657 852518136 708449226 682607805 506439429 250730230 99921114 215631553 518079230 78174631 890601973 524908542 906866023 102224110 244995564 698384493 556709137 412188136 73261191 310926417 169763056 622799421 956683974 191400880 218365006 755459318 807983306 522825462 388348724 372654014 889259158 773028913 393448550 799437048 725433624 255195154 610881220 26285038 378421106 316845916 798040570 278484516 221297887 592333871 82991070 107527215 43402825 479647597 858361151 786888129 475955232 917156417 435337319 729874853 325549234 545629691 656151 553511293 275850442 614490748 901762310 624784630 638449646 124471977 545852855 405834266 192578292 745460085 618904964 256057153 657068133 776752777 698117962 140519705 425382575 836098168 77593954 359690757 953787575 451646190 293030870 214987859 73061213 543982354 548940762 690759141 337479132 816846386 40071873 492372144 767330069 78097790 310127875 334825266 321656787 461496339 115652448 309850829 381057970 194244865 68896663 180083773 566808169 70601383 373545671 137584235 304222702 783042109 436000196 976229637 309918539 793085817 918596866 141653683 105860637 446458914 255700384 209592934 624927125 402743609 658918257 9244004 948464220 879166025 800104518 623374930 902852213 576608125 199835038 147205409 87083689 283525083 861858523 6990733 938410617 210685153 178933541 929195217 799650241 296744929 907288757 432856900 425890218 72091420 136223933 824482326 177189736 101845326 924929236 890632630 740907411 739534471 567144219 733126032 513510579 603553579 523974467 978256828 218516340 857427794 433572946 764055272 128666250 124297338 840928242 433697241 497037099 381495532 793294173 643453888 77335928 773549245 782932820 362289925 927958391 298447373 520087439 450760601 692480249 733829342 487399269 416223200 745757379 155884383 272859051 801720686 734380972 172297245 911015581 884252708 943071122 738970986 602564502 755699022 526385852 958208800 105841442 225898224 359665742 252644458 881581798 643051316 396038003 206799102 579523202 931527284 876578362 157688264 129658849 585408406 292527879 372379674 640573883 302866531 619433066 765544012 832599192 697421381 741503896 576866217 139610506 901402002 817533358 59593803 82271755 821375929 308475434 455771563 784749765 289513354 594866569 590554123 374459429 834049747 952993546 4450444 911172084 241237384 214866985 333228034 65985624 927194773 913570489 362192555 322126933 234157673 36394721 455887289 853885977 551209426 179903395 426118229 809334084 494037387 834019214 932529015 667041682 381421170 345817331 306060600 607854168 687072232 280731768 712113864 418492283 62019949 79359394 129166106 13550795 609404436 365540089 657973058 426355419 91898715 596541064 322755167 651598462 574604478 783043780 64349475 404879529 741437580 268304579 108763165 559778908 35883808 804106562 159675501 483989251 471662716 593031730 366272272 10193248 317923171 628972457 769751898 405048382 627338230 918092696 60278905 652577893 542771113 129222721 544806097 249613788 111403576 86144525 560502757 259792623 193382541 303468631 35112202 868701165 457125332 211270305 481352830 129252327 874463966 391865765 853247572 695805775 457917479 803742909 786866161 729486819 672258982 548958782 126556361 776602272 493413809 76057714 715648611 954525364 149943696 120780702 8229729 403736617 65377499 133866083 636498940 397379089 260839395 444085235 151055919 541808904 489904712 466404487 680193868 765582009 912949807 739482191 16191540 596418201 145121805 370353151 862150675 134723846 871663275 137027174 839851147 441967536 753995978 592915479 296889508 918348671 750851701 853399819 772329187 408293091 475416946 304223503 943528051 671640379 679084211 832320212 218719310 806093128 859914455 942943197 887932069 48135787 266055995 642592230 661782999 212753478 340297973 703514258 387652446 24241182 859123768 255076487 122730442 86435604 2781083 54931892 358673158 36927673 953412657 462915188 428765173 605076795 305991590 156213208 848990224 682352764 838839701 42129601 245201634 888375403 513258757 365572504 328394034 544812328 737187474 42202996 678288356 400898811 143067983 425282230 916707420 974282755 112747106 875279418 517539300 698987989 979329280 858629812 595472106 349385664 720691371 463196548 695493623 179605185 307482246 219801857 861986030 994103092 439360772 478457338 730314420 463679374 572015731 627893763 941264930 910181208 62186296 619448013 315364725 485160684 986497123 633005162 944599365 963564992 333874265 630842279 691785660 750671548 287402101 170583465 956256366 838421300 723387047 314885147 132142399 55355694 519185512 872700343 789223357 682331282 673423162 339431395 214528126 146822040 335126870 440303025 3481291 218136253 104637539 832575244 504259812 32143332 48546209 526352478 581723411 778264802 786429549 853088223 480495045 865467815 963262001 862499484 127185359 653751160 889491490 509445964 858665807 654191910 508647123 118187773 117303510 83143167 194300172 599899501 834188895 204438586 68460019 964109918 276322553 983331707 135198406 904079305 330767146 368077814 581650261 453976240 82637052 952967828 337376403 123434389 658014016 297755475 214111568 456475635 965241777 731452147 436212913 930926163 351900040 251305625 535962680 202574467 699256151 990346430 238246250 73690839 15519472 380050730 830102587 6681050 629896120 862073861 465526871 290265443 973362881 845330470 387737067 538256847 558355783 103327657 93640104 198698811 687042627 71071992 460586508 138478591 813592559 374319981 938171262 142683202 225284069 563920916 230803252 884031718 227305289 51236568 708479244 900202832 666994628 799661843 271035301 13361424 368894444 283494503 952953303 919722014 719961661 456125253 788212239 119658205 753157218 942996186 208848287 542393124 280522203 603344332 393939792 272042355 327274668 551371570 277059560 515781180 330181435 530409560 666435891 684899457 67887646 812095941 709424579 488503338 916096585 309621090 617806569 394726431 507314763 89104784 7294463 943046740 464546524 863115078 92560844 187092095 111732469 270493019 308804946 927457107 649265234 817174525 43843947 141210618 85439591 182953183 942605942 596040444 356269215 542597635 37661204 506912129 48918772 976835788 785770163 54705289 457385397 542216260 149964732 297417302 48941832 556006889 51318933 774098379 914822661 615953117 32318754 490796310 171481782 153997498 120205000 812366181 303509073 43411965 881690798 860418180 396673783 960193985 211122065 955589658 658759780 377112233 405944853 552727738 651096678 946932771 63067332 376828594 976941167 320619208 557628361 99546162 1824810 216458867 798309 917262027 555847289 886102982 116391711 392688859 542706992 251536084 178089671 256617743 967383053 70635231 376347611 715200309 643064679 420810796 510909000 243931895 144260374 104967954 778851658 749465032 813253000 834478461 105725241 325620924 705096789 257813166 106568754 570825045 624023629 610261732 241595045 392031268 783868914 803182655 950792788 73582127 966899642 853359501 986824498 787497566 273238492 820708526 761636478 971841286 791636404 152140532 602250504 923384686 600790328 100616658 922115671 624078283 968605482 154825629 410820889 285395995 752472873 241638450 939486258 642149451 506413061 739336164 615060242 947697452 93079224 571379370 591603469 706444283 734737475 293591592 257276194 18412661 626519748 672497238 90241144 592156894 373811657 363382138 11411647 47035502 611300936 309917393 279428063 526079787 68709180 498472333 131581458 952087315 95466933 793691892 728141482 352249323 472889005 850227248 459619389 489087646 284752459 32497680 140858853 185120921 72359496 605173916 753604429 902773301 787019676 615114958 963684209 349654000 404655864 420108138 2154678 670373181 749517665 271695797 844425328 97309292 14419533 677923599 894992882 57839524 927611256 71035386 540626055 57653082 969562295 684940035 571078429 80845575 838503177 948829285 224659759 555022504 82969684 325393693 963614097 60597787 603434567 664651279 558132364 432536591 946134509 968388821 659723398 206367666 461863097 731244768 458137930 809157085 492046562 81023619 53034934 100957450 13419101 909951244 362292708 552200216 984615790 242063373 264947753 356297100 293046802 753714365 616944685 423240767 660887567 126803086 655242912 641828880 257112460 420297151 364599526 625431216 583217570 804216432 666327743 781385369 14269248 629927344 128458311 252222346 998622727 726760340 11905954 124573455 202799068 919016110 967919699 265942141 522180396 86832154 39549752 340796397 884284003 957151803 514598537 764357941 816705838 365157079 41222707 54568754 104353961 674864818 886149379 609973168 4401444 584555747 162265697 8127496 295023821 477756085 282972743 805833275 691553020 799409670 943590153 104994114 685649630 154827213 296961433 411829716 898851740 931156556 399438344 682508021 753178774 561096946 169200342 577484559 168767397 597392069 643175057 671052210 504220486 857075857 609386341 100932887 412683157 571232235 419072898 928577080 45049992 183829885 638879015 832653714 397971350 594167083 869212465 422008330 969443436 550463979 708710989 148446711 178455415 183212887 724845155 888947857 475624549 783198928 275772773 976684028 514351543 218562483 187100579 155915642 696411660 671677722 284411251 481900536 672765491 433125132 548249193 66811905 868123443 305121898 298458389 136510065 371433122 682899623 573717355 448452010 715435902 367921828 38590172 588847993 81384936 852742677 853361819 336550440 298219679 372831099 499770027 15166255 665265903 767963535 944846655 289185501 700505817 413013536 397476024 223665907 529110500 140691405 582740629 901456905 548378004 320781708 711317595 638374476 810104453 529491390 497220305 261539418 373661350 940075909 277653871 983884659 66423979 423979745 249555083 34710594 466986316 623757742 860689037 221944443 152682627 143940394 996118100 115304473 48371130 58033675 743549963 127751451 318511290 760201613 36453890 206632875 771530524 966945527 965776560 996535176 407153564 523234677 641588007 19011403 297926863 369727940 714782653 885000704 278538578 316508717 814655513 404768383 490502013 244678646 403059563 453812978 222868631 933286764 73327911 526887687 645938994 337450710 93099465 943527634 878851698 428019530 752932563 224471366 358122433 995506237 360169780 812553559 260063300 868412483 538932776 793708368 767687136 372614892 224065453 379518359 524472138 542115444 968077106 373307958 476686744 517832643 13175211 3380075 237570050 825964384 165574128 176525026 38877476 762143253 394942843 739105970 467280669 712987617 860542767 649940645 899948016 147912774 399563067 389593846 89146160 163566923 94586730 182062356 15080857 162968882 308399509 124220940 553925122 997110952 654735303 189910461 262456164 571488799 937873873 630494253 148720348 574877256 368624340 193856195 349692554 854535072 994186129 778538539 359701643 339621438 874703579 3078459 648495427 476303357 740888165 345794880 261083830 665901416 133259443 240440416 999543623 914188610 931220198 53978635 14473167 53093887 374666642 793560112 399645318 667393965 66617316 309667021 444290780 651854619 662793436 292450145 539420054 802190813 12265122 563234309 670839863 529810889 743262163 870253959 428947377 361897435 348261626 73506796 22118620 571464810 587960174 371769241 580631097 688983407 931021062 115201466 805029597 173436218 370179822 110958892 714733218 295985955 687574446 422631700 544669359 745384242 221714467 577287602 423308122 683174176 789883971 910292415 477440163 940623181 225013071 639535816 264625408 286831718 398427591 258920893 627467277 993699617 6843149 529187112 165315530 614503159 215641593 231846224 993476105 649423513 383928357 144538045 266386541 669545505 59750569 476580986 428149029 827123816 202409200 888713890 81368076 61492058 578541084 719297901 672625637 439763069 649634166 732392912 24680958 585947188 504921198 645792484 59348165 200380066 732667768 517450110 841416044 146019549 175915837 528598711 809068953 538683618 166476701 855817824 602663958 533142342 892186896 887772208 448129057 587737114 136642046 552859 144864724 85926856 673165826 487428066 352492912 410938176 676130193 427742446 852136453 32684508 647253004 110625667 282121096 112044562 571205196 815319698 835780608 616212807 53668014 148910098 884011460 509327167 762397419 530330474 329830334 648449674 82363197 350039512 311499176 407126616 554950265 434931715 776611583 23731653 442871454 898418468 256354327 49847896 852876558 814617330 459994728 775553926 434693350 538998190 446061955 746950053 87070453 784227052 559933840 45136334 991603216 251300993 913918761 679343755 697254828 300905872 661057043 813628992 356833631 224897518 755530929 596875284 578625194 545493898 584730975 949693081 229766982 612282344 126069102 676903887 460275400 872688331 971426902 291638772 763165727 641720842 148753897 859469547 117844890 774035603 291890550 519358401 10160678 910581462 456914337 720562374 850563055 597035904 81036968 217672612 869455566 868337637 287916288 11617307 689468161 521067212 522650775 700790541 476000384 559739367 403079029 493523204 919491149 681147620 829068468 122022874 989088059 850234626 555707177 807940140 415279989 865454011 227047125 215327421 772533469 962278622 345670485 73666872 142446924 572534652 844221883 636771261 344795911 224842518 813319683 925294413 213179560 718629855 26901285 594990242 945199020 296238408 547588235 758427351 897088129 37895267 132872514 136688294 34952663 331227477 688931513 10502943 43657797 504162151 952898702 780854563 483034914 604750768 439951611 826734531 321834328 703853505 37146287 357110982 43617659 652609385 586135180 358028544 840607292 969846310 228498491 144111635 120604877 254751289 591225366 995769255 621545210 259925428 897008460 920903759 499288592 203047863 51493359 75939834 968702162 821920958 473159289 86196124 153096516 245150752 411333923 342225903 760075448 300347244 202290079 938968698 666976957 76570116 464935210 452222821 464176605 366212360 778140141 313438617 248359139 909079928 106039711 631832347 888975886 96605000 230893744 927787082 929625288 148308567 350551731 202056279 330072147 894697385 373720303 485726633 599604187 478734412 883257784 337024108 11443176 805356786 178996930 562242602 796173343 705742156 906634727 137822482 660989481 385152041 690506346 487356727 176220380 152400954 561772392 387367962 185571211 953660058 833164873 606331837 979855160 796710948 903162703 811018628 981527815 821933020 325353080 343119407 301135655 571664214 914566478 760723427 915157148 756862883 390393355 687112020 600949671 648826841 367268133 807322101 348390883 858133746 249528609 272372069 418816471 155121505 914196156 246509307 265033056 894402119 149931322 152977974 286950534 663977632 169326296 242678579 489596969 448218923 228256487 955518879 844376371 660969967 320127191 193220032 320765473 70932297 476467641 697707123 274686841 207788146 829301947 420065810 87407317 540719482 166966940 94208076 836018652 316975854 692033361 74038080 573167869 651415903 820213914 242514638 970249330 327772013 133104464 527912794 100284548 412145186 512987497 510097694 400015666 83488221 888518298 185953990 790710515 754252299 923534488 71690222 25105409 433426196 901818706 106899246 842409073 920902439 652595179 565898436 296985546 507574843 740246034 983513301 963544347 967383908 434996484 2233511 881271997 79999370 135033184 937240054 433923485 566433604 86213236 661711610 395124547 497575176 582070208 426639267 112041214 721504099 847403527 587377817 605777438 535540768 128669249 785196321 108767375 361578826 361892050 421622083 930763501 664902538 695060754 696570885 533541537 485981171 544314095 420539912 560395658 626849335 556178598 163638304 340943261 307448512 117959691 477890798 215551477 770451019 742196923 877689939 655198314 147962280 507407748 740287228 159789323 772232277 412708556 191962821 686724970 527888360 707231043 679844967 956670929 417360726 532399697 10178183 628286709 899536801 732517855 64116655 559719403 350764637 649452983 726679592 381116476 522400158 528201992 544747898 583453479 382622282 354702281 31071166 583522259 725163755 430464403 109812181 482902251 255150483 18304238 974826828 573643645 648948237 681037883 605808566 602798362 893964968 618321204 791920927 138541899 35999614 763882349 649140887 960292489 46404110 520508690 695336512 536265580 437874312 970440224 335843658 750326559 421221634 458849299 57537297 849514870 965154332 479544595 596536272 741222078 323482899 409401476 194827659 859208743 831140883 133540194 869306390 170707936 313694473 924317237 315211926 118155600 345358864 791294992 11676877 500043954 84457113 272010037 100241952 112414565 468227021 849587359 585064444 277290635 740327656 349868595 562343579 162895532 445988325 390243865 944982112 112360050 15915082 837424616 421330676 764808140 875483169 822958002 11237266 931865847 753294828 398937248 627750508 248957020 571191419 932994926 766229682 121573893 441369154 88123796 913843856 179927797 96658796 640002746 830817536 843937132 16103489 637693981 452912287 883314221 342994054 324775709 505276 853948929 882849296 923334092 140708008 387256100 255142340 481845443 725203698 470243412 554952385 185962603 69842141 188684916 769497998 384421508 37326589 254521958 500016607 140427387 631103285 117101639 265010047 984833986 924964095 825168230 389871535 889056789 257113322 3719533 637274362 422755261 875827607 525198671 809206040 960339786 177566271 925596858 714836545 806752148 330869988 753409414 773383817 293319742 445651140 371336633 854322452 178716185 725596955 107993796 265239668 974421842 363550343 50941750 456187176 225424443 621392777 744753737 247909423 152086691 179931398 310428337 735283982 378910207 531597152 355758447 670812380 673662203 184865011 938535343 468321827 955980466 685741840 581914353 22154887 960520277 148028308 43685619 453361744 619974213 564099360 437639206 772723902 202428237 149756713 720517293 176500946 532283669 837019141 169060571 870761364 36836560 101310073 802006771 421138402 757230830 470781018 644994151 414971055 73449494 33946404 665755630 732459150 217671793 220087493 26554286 819855740 391458577 14511540 988615111 998243140 458485276 756934954 643029848 808414221 428143823 816928297 426859683 982459671 395401980 646030882 830284527 34247443 875371738 223086871 743129769 876733382 731120118 182651790 139045810 535526564 711023984 324429283 226721789 964516170 261157585 203612959 967630214 547104920 236585763 887869935 95743292 829950605 292584894 688856990 75844280 425696525 420912449 538817987 241204137 326701025 471975936 257920351 857804435 367359090 97368920 313267737 428030001 552563848 372439818 38096360 315681876 956761609 968160335 710246411 191017936 979713874 942602095 562860865 608774373 656768092 46149324 156415502 891169713 840500177 658858709 264728448 671714371 813577092 194769598 885857946 656030225 832644209 657560196 743016042 161225043 543499488 101631417 526052169 30685740 269809400 724887979 805481394 384135394 242804655 451776690 703076275 787661114 324258760 63109805 333132980 682411957 591784882 375839591 752745676 512126340 473540505 280860583 932493939 578530754 866510818 284650379 827620066 659687495 89539066 497734551 17107767 689659601 600841067 236727330 793410988 129897430 259746430 872616259 861489793 639819144 894615849 442482353 454921367 973631061 809306373 545649378 597501812 140750438 575415157 79046459 884860571 472469386 236301569 846737611 805625876 441440244 846614708 227962091 680282734 320231214 443695972 541856837 704022444 16364681 124325977 624034814 54942919 158172345 124950313 708137902 422076450 672740355 907470353 233560355 31861931 695618675 440081114 370043035 757701554 951635386 528971342 454556356 766580299 426680966 586610919 170446215 77897391 994715594 783700232 648827085 82286205 581446222 593677627 676902702 468826131 341463128 471668488 786322991 31913395 97648158 554218388 437690110 4771823 41143001 33184028 548618212 230538543 437525870 770753276 714073542 86302655 300352661 763385343 677816303 883706332 511389618 52881233 611070427 607381147 371876989 670598377 456929745 897304107 12948070 53811709 414174447 794107228 477336571 158771567 628834054 24423882 861350855 850407006 404821593 325566125 437588139 167991386 887879945 763502967 512608047 70985135 956900611 744686630 939596858 837465576 601388827 64174109 487591558 557883758 137981429 723422797 166958090 748313404 563749659 427639462 999739786 849142672 406383998 796258972 109808201 679313463 405613394 274900287 71299207 12561228 5478135 242425698 509560468 207644338 933129800 389862578 482741596 434975572 581170294 135126486 975391233 269061036 624637060 50628734 460209915 251451212 83751241 816748411 297637860 945566280 209242153 410058706 25548250 334716529 169662770 350764327 94474764 106633125 583292314 318370399 748804454 568598402 596645723 709633915 634183411 630164806 466380789 954322672 60648528 135471084 676114315 806440646 170302357 247398817 223555995 674668954 930752725 659339551 126171064 786011737 210422674 598701395 93631438 430076839 397998859 617939158 198409740 897455208 125053700 815831126 477477671 235867981 338129097 9145792 586872286 530990112 428338722 7086398 120429178 446078632 594525514 308868038 200128315 708250561 459157216 165215816 893809725 173143417 47503277 581578315 990924555 131775069 211245660 597701867 471537750 477542001 100732633 270916151 134664814 365375294 19593999 363750084 542689836 89714794 126821440 736934135 28877549 23722794 231540867 435430416 479451673 786718074 99042305 291383087 559970373 224299354 630911941 283766020 119221151 435310693 205070722 131788732 417821757 139191053 408528077 698281203 449941803 617081791 409066064 73930552 678081801 209500578 749789830 815292892 896638772 36754340 324521628 171574627 316250574 938230168 63356519 821483167 60447607 642596292 980527153 155593857 497315277 243041171 152949244 218858006 965880606 588569349 611466253 724806892 859765856 826992013 638320422 462643350 639289729 268598411 194260990 399070060 493055930 211541721 542466349 454507442 731480907 849637112 376275380 623828535 14538300 184040812 423036538 311047037 39025711 393622566 681957584 646601200 492846398 507371845 269604107 464493643 782315411 659323651 335859007 100041690 420144987 322263403 43510077 911352401 666515940 653461264 838032130 165524724 25811168 52370642 249811333 98690565 735070625 742717889 344448820 406846146 119738391 409652604 320811710 33678478 185401713 373964916 758406711 206986530 332942647 889898246 270330147 579108314 132733536 649498720 614298752 850309298 34435747 350317793 756550889 523984642 795034514 734739353 576263646 713887205 466486065 242075691 723852569 670832902 45206978 767132903 89829448 524833386 123181639 343472008 121202026 644732494 255273642 149257445 722780786 942821460 967812831 329179437 821773100 663520674 817255992 587857007 419474077 916430472 720332411 222244250 268040532 711876680 20710633 775056394 222445876 988365412 485622579 571052571 290345301 353774008 398180492 80792672 844277116 961918828 298131635 325325201 997590296 659993749 361359437 388352398 582790734 842762197 788481617 352149375 195339100 610431234 542003437 858949907 21612073 457550062 986290491 251425121 713550362 506166856 778085416 85094471 633151005 997540058 953507778 535707400 360225357 233935660 454924746 550416818 643546859 563313878 809260413 351946438 929715142 18665271 63913921 917486278 748572707 251826780 874852772 227373229 248626967 88617163 485292091 292445615 426563486 904934967 266452195 970712026 51525012 607286194 637268609 839075360 909923925 928177138 35321327 672545373 415746428 52450502 367571617 321521226 497383603 50644872 649487537 804691035 615788921 876827809 732562147 814309599 987329168 668055528 320718688 145981681 101684479 200943571 236192669 184853439 7008029 759483321 248041691 221773357 187655685 981676322 495271631 787614360 994699824 772267481 530589424 563715097 425707406 326928240 471318667 294681024 563204152 712931132 134216490 243917060 965800432 57907831 737912761 731441241 840808635 809328324 241664629 761355631 121744626 779814272 922765376 613583488 253035506 970661531 670530501 236808126 284964746 220142476 796970497 385630056 806303488 407369242 621727926 490281089 236759083 209469662 235776628 987357541 852844827 688717012 622652005 462474706 216981000 479423292 603290227 314558658 159013112 531161617 906376448 263909095 838115475 713513379 148357127 214156451 104178017 257546954 190976385 181536053 191463928 135329508 143854463 460967514 603912459 901806235 605596084 853567335 218372980 999485651 322412708 983752721 794533001 824701714 251038820 812244817 684878804 584609120 140641651 966735755 451374113 64775519 156672960 545168973 160344195 478201030 680287593 748462345 948337766 328378661 227422000 532380655 447959548 718874228 353848191 170515003 592672819 428043647 62685420 114667248 336289215 298229090 309315033 302633450 196344259 31965015 631871902 855899186 345411881 66410998 79578214 783628034 648929283 398161955 397562033 435323520 816188934 715929987 934471124 142845531 757815686 825811768 182314566 394081852 738410751 221191153 143716171 60646196 688743292 972066164 160536254 4651140 510133322 132756976 952999078 791879292 359565822 764385943 182314026 444264902 182510806 489597308 409429614 434557022 571003082 735817366 461914531 510832097 627723141 264912305 562917927 160714239 634649126 533445050 10729665 871646731 860010098 471413507 157106040 671876447 220304809 485985572 580738692 644755314 227957271 839173 977910361 872756693 421225568 466168356 666611313 760953974 260251380 9822246 37802591 84951178 19324664 28091192 657143856 43041733 461827733 130455143 888795958 282996329 884453546 705945496 846208308 101725417 492725949 779463788 397943639 649194288 70094790 389811509 751149858 541714749 75695962 478835620 55900041 377963371 932690144 898270908 292745651 739357362 253912111 3213124 23806753 684798914 495684924 3132516 43721067 193645258 899553781 23265879 750917794 386690558 604682444 473801989 369570882 312337548 862712982 472002683 595464773 470455787 805293281 650598113 904230799 733482814 260134150 128946032 699630801 529466098 902703593 57281874 864686687 583548859 139908459 253586788 363002486 672596192 905992368 41877725 612743498 129466881 859564403 113798383 295226688 388029447 280469206 676915521 976857898 5764639 845337346 62341375 606349035 767587456 762720845 479454031 688570609 197388425 628360053 324108603 951096889 194310197 665663283 885509912 385312568 98195802 177958684 136166493 373666508 219793418 355792296 665765208 466897051 373391872 49638502 940926466 734231097 11838951 615636126 313429183 682479460 659423279 983129990 625424299 556828112 18546251 578928634 727106210 179784744 349176803 57799485 81789376 611495805 935649511 454332922 815474967 492623802 468239624 173789824 826508230 554976801 79248034 731255898 724811326 371634095 951903526 520961878 199296892 320353873 735691950 478115224 186203513 463180475 159836307 609755800 803734647 294367643 776931001 333504288 295554274 409755155 988198471 943115446 11604864 113483593 441917013 630768115 207197318 333216998 475292682 565429605 85639422 205566279 896198838 120976961 697498139 106621069 787213635 744510818 505202887 322108408 436150317 387436420 358678646 947178842 31168497 537386613 682282727 430904663 398280101 774031217 41106848 762269664 313145317 31312726 765022104 595664841 240804974 596682494 599925945 593827188 181534834 374806432 231865678 982897782 69491160 566509228 289087979 846460274 707687453 833228541 990132889 664451812 915511170 912931299 776715809 987527639 513386305 494005224 847999873 204381939 753337205 738809885 869075183 342034600 265375334 33445419 37867659 855031658 769862046 790404586 313853942 330246721 231047703 341338072 285997460 65640889 280901599 266723041 617148567 202830086 191596917 659745940 67176099 726799367 842733084 797521670 600495374 396801201 99860706 637545147 518063129 853410315 272524351 745271635 184038293 529993998 650927198 910721479 498055134 197161856 874305276 322579453 81902288 239506670 194036444 31656013 843839493 201976883 672474872 52697337 309839116 5042753 983415318 455863555 938292926 466698958 703987485 33336970 664590268 659943761 216938604 278758408 626539499 967680710 431821564 136612908 107167039 959253663 20427333 102107095 618778383 486311201 9534014 745548192 68070416 87514321 581795511 153866585 384083710 742381460 242424496 654294116 728132428 684277166 200139529 725368213 103642463 31026174 370784679 768598444 700708121 591907088 493513647 462825550 668961202 275746917 896876936 437211275 999772381 101657083 315071271 657143181 221202000 5363342 734871291 215166436 594286446 151344840 715175014 574518548 421798720 737091524 53874230 71952937 925721464 679014995 809808218 710554166 562417811 865197363 691480969 550541495 462536000 473999494 920892056 325782299 417839009 817448717 515807453 467025833 585550881 856999584 227172552 449285362 213321018 903139615 807395485 216440449 919697123 310813532 604738224 644409921 689120844 129297090 561672977 792918576 909401659 938512578 76700524 927845947 64990664 241653164 859065547 12059053 962601622 467358567 427571153 241546911 68208726 193898598 376533301 637005444 465852116 740633915 772804366 610486694 988325245 250140007 414306589 458658175 623928157 660930992 550049533 436007369 620066885 756138046 633432997 234574861 760262038 935478498 347483888 11136218 606892183 492384889 515431201 558647108 372293312 224656757 286695791 652858221 415108265 902519941 911280292 131166426 633681241 614156398 730586634 471348660 691800194 817424817 720629003 711972854 646224420 407040469 720318516 773040754 299204485 403372178 682652548 389504813 936478973 410817020 572688398 881612376 935310937 667851950 297892349 657609392 333779771 58091997 657007065 652030055 20224788 573927927 460301090 321575498 303767532 51148606 237033179 213670317 571582425 833434211 246714251 517139630 344005915 562548017 882769003 535573792 381661692 986500784 965773501 748451669 450808203 779368549 896733508 744071999 547955243 294218405 170535279 226007068 255588231 227809201 506046630 721166259 934061021 810615363 712274734 951038688 408231150 382941763 446087575 888387940 541137029 568939795 624729029 62469995 769718155 720332363 290638828 337024910 646491763 667218521 223529334 826730116 244365571 311892750 245195310 302401934 43645544 875637920 133178202 644769418 320237193 538962859 472501615 305048894 54084680 584042755 291983696 907556831 388752093 84819126 569248899 315100986 607803883 546160130 182753702 809585023 29100091 10273114 393462594 190395151 84895868 132836203 99876822 185992166 541742868 797464416 399168540 181030373 437881744 986640924 525093282 985074210 48001859 752714072 229116921 800150207 103238869 92198838 744992803 312041652 496093458 630641352 459217287 530048471 295359910 70095964 528805947 49545785 744133598 387962189 161608609 907053168 777599578 103958001 794011 117741330 169746258 808736852 208687743 199773656 945841751 165640565 574173175 749484255 111858162 581629644 854768979 416912995 687502845 340572385 59648946 382221824 417038218 869352586 159140645 422070109 723893036 998892126 477376796 523903625 75684217 957376444 255744382 631340024 820132202 869487391 542851182 783827103 842400474 783442650 739246262 731751864 504867070 468385206 69763368 837987996 261996599 41828824 342334785 579346684 523910039 115772534 332178047 14855934 395791939 118999926 439196142 886252041 655805692 600013596 613579317 837373073 351428494 835781793 962517526 103703647 348823474 161344703 679241078 122100598 768882762 358100227 956236562 404850529 899900395 448258846 165390138 54802747 584225082 866302147 77949351 585419607 193776585 808789299 928508474 219340915 517843958 337222351 479252092 947834104 977719051 420449083 210509000 579192224 164477275 174719225 962311823 547783714 204040265 297208104 517144115 674831315 820031991 679918305 843900457 907869462 953887652 11295467 790907810 577447130 879951491 45865475 403372755 565781371 771106385 548838610 658855142 811830467 30492588 517319558 728767024 228616289 771166394 98033780 610515480 609148920 19974681 263090379 76268631 434685894 781543477 595060006 485192606 358745142 837451740 768684989 470676015 881708530 193357314 14578422 138967079 863365842 178565593 473661716 612528311 679128243 631972838 985550661 526741743 808003098 160659036 299734453 176390132 816243140 757884178 621972610 735253794 20535096 901212340 946054143 519080995 778562068 299948397 736527810 87493283 28135257 217985679 843586074 517952289 284180620 718232456 995051254 374299721 464011532 203561025 892990633 183705134 327764555 997815912 739355104 536454732 877921900 346223565 523681379 296174973 603253371 624808123 856623966 194041361 201885886 689312480 369396988 77264422 69827944 193016878 240332135 995135242 143579330 601762890 108794355 610620969 145939993 168997750 112004113 51872838 318232054 680248673 261590595 725877705 466771275 835334217 610071671 863492330 504980406 302742258 250267098 775266703 675996610 823205240 911712634 288980363 646466046 391684009 944527600 620835755 910117337 743223607 276925182 145224971 579861347 978614483 39424335 210576313 350486964 436238721 843943989 639620283 266478936 704901439 806067382 165492514 106180985 424480106 579347775 972422320 73594530 413569418 840194503 214535249 426889965 349337475 686182746 385282196 590539462 998164385 647106184 596351924 263132042 360310463 928659880 455966822 519898031 959712459 211916672 313252467 519623791 886104260 25223393 932591360 556152592 349893003 513335670 972041451 281571951 792697523 671759384 384736975 990751069 372122936 236836349 252171339 308899071 698575972 67272268 865765598 326899633 857160520 833047413 108770864 300697685 602295750 995517388 129100753 202984543 644954411 288764202 715617810 972854213 433143013 148066306 402453975 972658665 314549804 411269080 782913942 416976626 129748404 454429532 86368763 816348716 763906602 38322889 329160855 247716652 529487427 338123588 626203273 526319029 191454770 447302989 481045726 549198054 302092450 211230709 163721407 505594113 213465097 992290951 618976535 367883414 705664690 52859939 595348955 560589232 94804436 237499884 507209558 574802376 419512389 239768774 941298241 428473007 705955459 163437216 231627251 136229595 583757833 585752067 894925951 87297922 347868186 730792257 663475551 29948278 619029182 71211502 686380899 27507794 941718223 155852132 413968602 285897903 193260715 814112832 612632519 762030632 126771992 318267140 98885075 762089611 766759949 522133635 477566429 820179156 778560346 265772717 287839454 317202238 101389472 277226342 360428654 309191166 971066213 958482774 749749467 148116598 46035496 707481624 601598262 22978488 872200124 460663220 296760350 878306445 517960643 795408548 654436500 183658369 389984119 874070402 542335489 528506182 938627089 947728836 129986823 345221242 615986051 940047975 361147055 24191628 834225344 936126950 915215766 13556001 679014334 949024075 480789295 788388094 7371305 597122416 707764768 567581464 272285104 267215571 37651384 938674331 236026752 743487543 298654784 987553824 364366422 751921541 466547314 772202967 340831237 12887105 738499911 514336510 534521933 232025625 471264521 720794013 750988472 205397011 786827212 440082474 959699134 943720119 448268403 225551127 131831464 887295892 239367026 832598848 105047070 929168697 581926553 232222131 714882682 648800977 366724063 98693642 621972317 36747546 86932719 675820465 900088654 767370239 179953685 918597826 868115487 2645745 600586067 509395711 510274428 587016498 345438363 481500539 150570212 845951672 529111949 755008810 923445168 608778235 826728013 803243 66067178 896670508 43739205 881787838 912440676 308849535 446164856 540436604 797195468 907877844 256772108 401050226 312169648 406029535 625733706 613238391 702070940 105177953 98001990 617434457 16629942 22571451 347835865 638591273 218212180 709087280 671498938 70708393 652060026 771405269 570434941 869586705 745589028 279749599 377983248 895494501 555903597 168359970 941305312 177331891 774446147 104720527 799872938 153582698 125575294 836021185 207001319 829103161 346845125 312646126 792854352 636853665 916657260 661251346 290418713 92480402 164156683 90383563 642659771 62237215 134971377 2654352 223209557 968535130 58589509 570518277 774281858 84098906 283442743 103878908 464169043 422143914 987070925 914138827 700036884 31571462 346551932 170376598 198446536 978510723 702053097 423147139 953324466 303440095 660255438 596513790 451275848 428448527 781303637 445499859 229726306 434603165 499941228 972101139 560771301 346349244 410202140 516828736 964374472 348694518 90417978 948043894 321807246 316295759 452316594 999054372 3066026 407273005 364110459 906624772 564159801 896177097 357843257 385290787 687313592 330341520 375471866 851216735 864719244 940123098 990444216 833063232 568721426 738113002 98636717 125592865 887702164 200314426 636905663 63932 217867211 92069281 44264449 442440773 345413893 410614229 870184808 189267936 684454202 150356752 578573802 738615690 617449666 4787433 63368604 291236874 642255353 282372517 741313831 608750831 381584130 556448584 36240111 215212207 220638940 599192549 940876409 278561200 436663651 920527098 465496816 624500928 623564314 903984970 640565865 109337115 767139861 725179628 705400123 266826034 253286634 989887089 558666900 622978467 646151946 446885222 241030148 254023423 256143882 719007046 874907041 843139370 155202106 530797803 136652270 598310085 560868030 150102067 121312496 555929726 322339782 748797021 715960336 253436629 770419720 730911685 982760954 94756215 295344042 274131482 191727187 773127177 93805751 299690130 662022953 394513843 917140892 321899131 261106076 745313843 461083528 335801341 889554066 434916504 546770903 425637520 238177088 744789237 104656280 608954138 812350625 126186192 363388463 659277562 740968766 81852170 579210239 613458088 405536086 576118124 386132755 878791694 224178921 38331039 924227786 230546542 445292954 481506049 280088120 56178653 935474137 405246979 457906472 133909909 171431965 52495705 327738280 382666689 997320290 300258900 594893020 119209791 727936177 331649973 842274803 809962457 622593092 995247414 584824547 489724536 685705564 316985961 399220779 518049806 835947958 384739324 612260613 569832048 612010729 6571351 874601825 923234479 272478310 666830669 455406195 494475034 353943980 313456661 875616583 103400630 610698277 410416619 974683948 240982682 685787967 190120759 976797350 963812163 71788480 484657100 577533279 62406247 537107109 463551355 605798647 435819494 953393749 648852449 751522901 427011067 353895924 430260523 326338390 31743412 729909946 310869198 952720629 90083186 292567987 811405888 160995558 464405567 810129278 299500854 144867087 895117342 983083943 107003340 420295464 768211977 201180830 646323282 439832874 128727035 961513992 363322603 325843150 980627916 557703705 64469696 822654249 122081726 687488838 300856948 928109075 55606954 408165602 6395001 127810930 923090639 940956550 99064153 901733607 442438079 421955969 14122654 895891829 292140820 712030111 571561492 354356539 226595674 426612605 851063381 236840771 139403968 119209729 839111139 314577777 118235179 343851612 526800825 511125906 848928320 281419763 121712811 401270068 733340345 301757508 602664658 983492934 909097171 867720984 289271860 841107293 49797907 800076856 994642295 352029844 474517105 257808382 890473363 625319674 459690605 709587434 31636561 445845992 88555197 841266074 262328064 415502306 563547718 609513487 966512755 544485663 680883270 599792329 388338415 88730616 215394755 498190766 213590258 681009808 333390343 927715934 760876536 289336630 542470887 48366056 775899056 470061241 240421020 623790985 495653568 993302247 585333594 34366736 969138426 409542893 854652714 223125543 149276443 608741733 924583693 496587255 492498873 89459437 855017555 152252514 820068117 620271901 660230922 3842287 124949636 326000520 106847372 792832684 26655082 473549392 263048710 575662998 957107344 690311629 482035243 762364575 294571432 890514078 511919713 376535050 282927024 916831338 238053752 783243409 94762412 984958439 319876182 645204575 977901503 367832277 742908531 65839082 981479990 16967182 267721097 564475909 758695862 229507515 955355092 158837898 319658606 669723327 854528074 281973821 407026581 581535884 280690638 631705185 821942690 523947258 106025174 309246573 163850098 39591507 170009139 340702577 820846534 563632196 67148951 700993976 935985877 438295590 338900684 61583162 118325438 886408048 385437968 60293058 653477787 272083928 742220307 440093077 599188611 53087574 52365197 716292497 775021957 381457686 980277771 205779344 277875906 753612412 439381475 604897255 605607552 891929094 557913715 792749252 836673393 701861267 823055075 859450943 337861449 125345653 725234890 422297200 827172558 130572003 170712540 731376540 840908692 574722830 128918362 596982071 730010429 107012304 91535411 375075389 730880644 898978511 868940347 227341826 637208492 545233553 670531078 876606673 14708961 7537198 521523226 714381832 214080924 355499525 736540813 312354152 871231604 173865015 419949320 45392403 303662312 518524584 390338607 193320881 733774422 545063548 776358545 159371740 978571097 728461497 601986257 178518967 691508597 224911188 72032444 458377751 452187249 69142244 554657537 609769449 162143225 524119895 475423564 593783730 466184917 110423298 419250030 711366153 42480605 205674693 142601818 204687682 56594961 59883104 921535840 529018832 609569987 205404625 528087088 402881034 388957327 853404845 811716030 10649549 684143377 874066209 655037134 45624029 950932818 456385066 552413122 449476840 229515344 758053934 660560935 647191698 633817901 458339180 316580472 872437462 735280829 557086858 477010726 934857281 475288940 136640258 744312991 301912518 229629538 613858141 280996022 502606823 200442400 587366362 502140396 324157792 914046084 376337219 781189822 366852817 194755402 116389112 108510516 159779526 531229101 366760664 108974231 707179183 729398015 258534464 39081567 272557003 781363803 561774917 917342700 70408531 367954904 503691481 606830776 832082509 886337517 686301818 693146856 424046232 276886022 326098922 584614079 93665192 802198511 739621834 839849087 386861567 454286820 625939965 770174194 715325332 123557114 100286872 916598273 446400810 877931494 113051793 453812182 87876151 300728758 38838296 712775596 804068036 133026137 851961305 53739855 408301866 804352356 177539652 860825644 859411084 421737034 569036424 729825437 44910277 656183172 58276296 669104904 393449215 327765242 301551619 525444415 2775468 335420358 715317214 194080145 181438645 253513776 46143178 447569076 950643673 842204060 442934761 199880786 589819464 354599890 166826788 174575568 112311610 163120519 951357208 392078112 832832520 486730943 603635220 713193062 204105690 317898841 63108165 817866220 574480818 190654921 490809865 960571109 44085418 680828763 48920265 241361453 645470578 169148571 177877754 841074987 427751823 168891598 465510897 441396092 636415411 418349271 494979000 309683371 4966341 639031789 204114983 290870396 48832332 883476514 997656736 457212947 902383515 952310286 124240563 936302248 390925209 498013590 318550658 22579071 438132572 775295442 340151219 587874449 52611759 109491859 333697703 759783842 887175262 230746099 813392994 121725974 7317000 161558917 481752457 324214289 272610331 795515514 459419518 910916602 896146383 304339559 929050116 224369703 994213615 149532580 199487806 463991131 685925250 476648101 197359413 432521737 311293752 573177449 351078145 25459723 871626027 810755846 947467047 499934962 971761932 830940739 770486512 707317524 460309646 950424983 316884131 861512272 590529809 577363286 106829307 419177809 550844712 381128182 131623010 662193640 824156197 279449270 103537627 611316689 289456878 700262296 586806707 674924656 866553302 275968445 941386805 410436135 344564460 332149151 502715354 267363711 320613560 481971998 551727428 325850372 730968369 130082140 826533034 78101219 187807062 835365065 704959863 22124065 780738818 416470085 852087184 37182930 63364704 124931668 922440919 231878600 686120802 760202609 561598163 712530593 524624345 193561098 450872620 411117012 889098500 581922263 396121549 230015281 195552874 164504326 680373881 787275536 733148610 195050136 942051535 967905439 365302935 106147858 58797807 676503661 503039154 613895274 72022541 732015008 561114431 890976876 89536421 746630350 872326048 883994681 671884291 203629075 854050766 669760080 876290790 591112035 968768766 821919871 258729527 406604529 781082358 296987147 585909429 536057232 187029569 245210057 163914181 939571671 637121286 997386681 968074498 213226648 297836140 726069810 519465310 208622154 998119426 29446647 488774461 698947341 657198040 831378427 466102792 835082257 75851284 969883085 628920502 925306402 584872658 543358477 132277423 4947005 103909212 806651364 217819201 336632453 145991742 656484187 47280695 301661930 511252921 755187441 578934983 666892067 359400071 65079399 53217116 6200537 198309266 555298680 502829275 453450453 147643783 241744782 187077437 926221549 256917610 734284009 538117503 458111502 955993754 260754473 948848817 582580586 216708848 653446210 401178439 161041480 693533180 874500845 231407996 406325990 472494453 337399075 418443458 43361728 314759515 378093422 97986039 847710314 186453357 194764870 818893638 705316161 349492469 795779591 182627466 741312125 422688056 914646139 381810564 666430488 218216158 803823815 474157676 855891014 924228014 335664500 858555708 186233509 786625178 1050190 436912379 144214411 523647578 644464717 678462841 205215669 813366968 790492325 550574569 350509040 80782598 338563720 892962315 679377119 545089461 420062648 10995682 973707090 965054244 552295580 476495961 448631387 128381640 891850247 974012881 468657227 49320977 18051112 2299195 977105392 472517224 664361354 273199215 563728190 609955909 739107104 228592218 375743361 998725748 407118698 10914915 200318697 98928439 333948250 943806240 679624714 401020370 752807960 705824672 663864684 342307440 374102033 779561951 464984968 292754992 96084573 46329574 441482793 228757693 453846428 251641439 273306941 746768913 527166496 739242684 530339270 338008144 780860712 260886821 142367568 60094620 355770405 814130750 574450635 563839208 73220452 697906494 117805794 778606010 28294665 640324806 22780260 821258916 602988042 997766928 560260245 684380688 638452769 78738942 296917088 460599814 55062343 28600416 423475211 834571619 468033211 421929902 702625464 519030008 21184084 67771179 251249531 66253544 31338939 492775259 147828435 573773164 193054990 73504847 351717975 826923278 625282585 374447862 330305946 114827453 445159638 970447007 814952838 213421294 723351584 472703250 793866742 82265111 782020410 974133149 551124153 58256343 674900462 970711555 574691226 969439037 727652669 654801789 889145092 439130485 148506883 726681755 748896244 267788245 456683626 496707782 213514299 643558920 805074723 273887499 965228433 576913234 957830690 974247549 42905571 981425173 181920811 523864891 953629955 120811474 47842931 339013056 578112436 953841871 857873335 651349226 109346935 653574489 456771148 357270714 105495165 567611400 60755527 191192325 97888329 551730631 710384554 38508982 504115284 666697922 319099577 48173551 738453670 162915896 237438807 855411586 735940281 858623196 28822968 599606549 426203193 85917229 365849957 856310361 148538817 705004668 955811946 830683625 948272772 115729317 357180196 403861893 346061584 153854260 969117502 859872530 619558956 424193703 513590419 225861624 667183494 611953181 486102526 534349785 673657096 524059787 221594335 529690370 803297718 782174897 944745159 596478742 643001970 916877717 138008991 883634436 159462517 243192281 164814555 878797631 810052892 292689958 43373421 911769755 985352554 373350225 957101254 658491308 799394274 737312066 659112981 85853074 881804699 599667635 505902727 717909689 365907311 185400425 591790168 374190025 475006120 713445918 771060628 398224990 176976137 95979600 821049581 628174381 731677559 778031407 63935751 837770340 342580974 449796127 213706646 465655331 425751910 599134997 936052524 89678126 495335302 941914531 175277884 887616377 647510220 670118298 77495739 760444130 483253505 441101054 717826142 884270586 859451424 139930664 791185021 141313192 595627784 403993146 767971169 878423851 918876310 313804796 489448448 48507686 992920584 576114125 616665323 417159629 524350410 739862880 882014898 852315896 532946077 471044991 672360103 424846807 863931395 946448358 405488339 554822393 480352020 408735040 262595939 682754736 621330401 462752612 263139188 305553106 232375703 557453689 836629515 32505530 707519181 79778499 917127794 682805073 880974166 84461601 167873386 98078777 847126039 863615743 643810694 614519453 58928281 967046061 191044701 689177563 366141191 268157984 952169236 117142723 863031468 451665910 580508430 900150845 377344760 336543659 554393781 764474644 911356825 826037314 886174373 252065580 425763702 745319732 110234084 977130950 369769141 713586964 528313709 453832774 635941753 459611302 279173127 864432714 527320055 565786957 901427074 498189689 916216822 437246138 262905721 350515093 363725914 800823984 87105795 90794962 259246605 812001325 853432536 784786676 628818762 905118814 422606315 378877533 534665301 964629031 908498047 586792131 897262546 403035402 950643497 816073792 776227329 505515569 951361652 792496505 266543241 857232181 78499486 709324996 311411378 801101463 251457157 402587548 973188028 89643780 97899281 405300927 446767847 564821649 203993582 438601429 919788644 565200080 419668163 767395793 2129536 19740425 891878895 309201353 564808202 152305746 259010679 882063436 760737776 320936130 172893065 10044876 904053985 622062377 133668276 739425759 294457771 710142445 744402154 841675412 671025926 253584730 589835887 622227483 153811403 744215536 518673642 891197459 72487289 192224078 197871876 387529523 454307451 698461703 978223898 173525007 755823429 888318069 958130552 806879616 354593469 497812749 170474689 81964307 276021718 358575545 240151336 571697165 708195448 211830970 893518605 471847909 432925447 377951213 489955976 33812411 17677279 565134782 967063935 505939949 816407523 468389570 26460220 692900782 777795648 601165415 320286868 131439440 978945146 928076180 147650276 286446749 763170058 13170073 896698688 202019661 482199553 423605581 301156905 691666601 501905867 952549578 602357059 894993676 473379816 64260576 622966453 394035503 103815779 970637896 776749573 308553789 589238851 545846012 218330314 383276641 358656413 9744 92539992 2236217 382161258 827244904 49278338 800556867 23087230 845635718 120199845 356878805 895468397 141789743 629898204 460721099 136066090 639645985 373841445 948484467 897792624 361045310 676104005 981147186 71185015 137742702 172928043 486087621 984175077 337656438 828003102 616857290 88824620 524118002 776636034 77990328 42776668 613067166 849986298 532745151 356030178 622022424 533411236 508481477 242942284 317662235 362822135 279411445 472016852 201927761 456064685 902347395 615167738 694854608 618491959 86102060 798278539 41223213 598803726 705017437 125799844 920506540 126441315 469219938 122344619 40516098 261704775 263996026 551343368 39632092 985859658 422352268 317333977 968725403 666088033 31703554 246670428 503125919 562642956 839473591 689177701 687259295 424640096 464964373 119930605 392318118 199494603 329777503 331308611 689213147 564252756 70272269 816856468 571275134 649324264 981238039 407718260 3356414 731721456 906237330 841490754 526230343 600517801 292763095 85313266 665623737 372204331 830856040 713370140 800761696 772912255 940672629 533546623 651184549 850369142 668965379 785962989 704146789 230087541 838501255 118271538 990336193 205167309 267411734 757150706 371660329 323720949 563934000 134638372 704233377 65701164 509179486 749548924 607516613 348097764 802644931 532032816 519992081 484115031 560414284 774443134 454439069 397810259 980841406 281368247 433074028 260996083 989852402 112702350 253334430 807590552 470128965 564794422 5595428 909344375 543461062 167534013 985625635 493240328 40052910 432011936 715366384 566942973 705449951 926553768 522307143 741444634 317951979 78319628 446035090 169017917 865696631 422090237 767198290 959768289 251054330 153542891 359340996 817515442 292320022 528301788 383663537 430676290 31416388 946019679 226276234 933765077 326816115 917954636 464840627 276612064 64675449 830237565 17796480 165203364 52331332 883246640 885637352 438913699 866190664 6327685 613920805 110714919 930411800 563556940 92506 691188349 595931950 350073672 909719797 376698459 581187103 430301298 874848734 86837104 305379409 499516009 35998548 394621471 767571930 719010511 282195676 46370682 284747941 104257690 231576579 432773825 618559272 157195218 581786251 633871470 172086922 196640099 290663232 227629985 64532748 431995064 521263635 846301072 989432827 222574577 562073233 1070873 942358111 115585134 468618044 98149778 88513252 834696293 200522347 730260257 600408580 449720494 23091987 725319901 20368665 780002702 199687354 190704274 287561490 307079977 451682158 265154419 432882263 278205691 315366563 450646130 183927453 424251649 406415598 200700539 116056822 883045611 105991774 400298670 238616951 350374789 458432944 63085065 947274046 346129555 177684494 155234785 214069844 889503251 250982939 551813559 621604348 475545162 628679621 229760025 52835785 282930975 56968239 704048653 871020178 185191210 177812451 882817542 25981605 330327995 17540361 177119694 472654582 944641911 477580402 16757535 406941145 416925387 781594304 645940638 991633521 211289163 321378553 161951800 93830082 321881339 967559708 580202121 632933994 201005821 200865503 523967484 231929884 409817944 225611524 872685028 605819898 33779966 925509967 651435986 633805864 374300409 715828331 916425059 260332631 51885986 438128812 391444446 527918368 280265973 681480014 340049929 760079799 672696563 779922975 577014688 783885475 26039588 171584286 322045955 650464065 412762238 970401507 584221962 672054957 378240035 737985394 282856058 448296002 734187472 472045734 35272544 75933640 39151729 270437688 76167366 717135545 934759478 575013936 742471819 766060806 406158655 909588707 145565299 808795322 208877535 826905556 39349116 375026257 766033526 19148926 959192679 258851982 703969357 333954329 715093006 749714225 231458409 724776438 71000705 560321297 445328329 812088469 210282516 126175292 506807930 72627793 915588821 740579882 155502631 575429751 573746316 338200054 218503416 861165261 640926327 467561608 183866684 879983427 803403338 324945873 445377306 683899889 226251023 356376723 13841574 210161155 420714073 377797532 270952238 224339989 248417581 547855521 311804140 811631227 126573984 73884880 776236080 415405347 365292030 868754925 800261131 729794751 820875685 737010581 363491862 571187268 427722778 453394860 300568122 568984419 708983164 425314759 406394830 958852597 349389291 665874900 112208113 693684644 411737973 352508724 179559026 149850533 244714563 879810008 208098577 387338855 592699328 166899617 388456673 651596390 364168994 175324204 444936779 738016512 5475293 569992701 713011070 772575304 991634271 992706578 289963689 48350183 116060219 197975861 832847863 746225484 683122974 966564716 950140759 400300881 191385609 508850376 302918392 610361771 7437747 71364088 1079129 5935902 924085324 42884473 57486622 491973297 698726108 434993006 998883387 149688807 95119162 915674402 363171116 656548180 453614293 957549342 483503319 426282845 622342492 653905532 383408928 327485987 832000055 951440227 932883991 366304277 791267517 66839532 609607970 222945482 945063924 503983501 306940407 858367160 136556513 251674306 922498155 660870428 483653947 577024727 429811939 274248653 16144046 413816887 644144237 227422618 558495187 587941428 699835930 471516807 157653905 209484118 225515217 203017489 468466695 38942678 465533202 924410326 619582723 746989115 907534478 358681607 372056315 396982185 116684130 747107530 530245891 787259938 254037961 574485377 84949053 7624045 899900173 8549489 98181530 329518946 974803332 709564970 433561381 984067321 297946650 288189974 192238645 285455987 18662974 998527849 33850918 953963613 708537523 438716346 358581486 823938457 585974219 412259405 957846272 226201966 887172630 383476141 381848591 631549273 34811303 504709340 384831185 421877944 933771320 246313314 411557311 190006390 900090623 326450349 742273657 595408218 482848091 500745877 221537289 549573308 592907169 731744673 907915103 180711232 182155509 470188781 201916421 229334479 906115723 480661111 434392517 331320088 250701400 69928487 475372327 1034757 485478493 67975834 766379299 665585578 337224789 752872202 67880656 889128446 570512660 800550972 519912298 439972991 734298098 186062262 443680556 922028012 749043459 218481945 17934391 179286949 391927621 964747523 814399941 964822261 45815150 753403593 215569676 709356024 376214032 136628775 765313488 944106143 695135119 804966940 624289902 945158521 184448184 606996489 519415238 299210302 135315414 375071107 885217294 239779910 553274196 77684067 308281993 217046618 576682685 415263782 479539606 2033147 289429699 858627968 357013423 812995613 697409286 536323872 744122722 506471059 367248038 121620612 811929815 204021223 540085646 768115339 638507546 350254190 926087476 765374354 612417651 980238330 784731059 405602201 586395814 234622070 831453442 90304866 231452992 524399038 268943867 224556927 958173136 540404074 806921186 256364382 21206241 428419938 187400236 824333231 710537574 150354448 845202302 375507419 261873675 199821623 431931401 693188484 323138720 338287106 862181453 201364051 373263198 313966547 671900946 438538254 112384259 492180861 676304004 887729879 399477201 918237954 902699155 825393414 165116247 915506148 672739710 411365400 312491594 389331795 813542402 330503828 627201402 359095959 712249013 175921733 834206594 362622981 662370754 267491969 785609822 633857125 258441984 224529584 5328023 641784784 926479694 953653310 316665144 65636502 652544990 416508078 659982179 494391701 749557241 774788339 858089091 12800243 718501405 614553540 96773056 278330035 573154704 303558597 354629975 523040741 104304338 375934424 948480682 218527948 810474753 251989418 480027350 908902669 637931164 278686243 207563432 31590070 590211330 198260822 885661006 712226972 828477783 704973475 728149562 711052409 437760194 425190819 220022276 73977336 217923840 808707476 554710155 290518414 961371905 953662432 508973677 350273935 41265186 283493723 153610703 379956758 332296295 466950748 989652407 954048711 183163957 171541494 900347551 629008923 798596981 842530314 422754823 674628300 281840583 927811691 846571016 632333060 722731472 102560027 368157732 192533597 394378505 288839422 935211482 328642512 429620647 559700866 818042879 515689723 315259183 415550084 180730062 605098877 801713558 416296937 570425438 588749851 46057189 10472502 488929753 813576650 2340639 791207511 219553365 71657665 552186242 935505176 635883207 166108661 71642842 192303633 315947966 279949363 330707420 554411604 79721944 349334131 304585838 718083814 574485553 960972806 221975618 182137532 516031033 846199117 105504654 128739895 595341179 55261517 370739831 317817247 688408781 698443314 555915955 714178779 19020794 625605104 256996507 491601501 189094564 13261973 110087082 135743120 273904863 205548812 549866887 582210635 859414138 592989630 356812352 9527331 795118319 513906324 904022061 856622325 821287055 974915778 682806936 708145420 414144817 770523234 459236964 716404334 891854382 947982951 791810432 76670507 588538688 85452526 796244823 693417408 718390507 15477221 9110023 46344348 906553952 572337667 692723129 4598915 754794521 832379056 19117551 192138898 39894283 892431058 114667191 730517689 28677506 193042525 640458642 611089479 221396943 878801843 208084870 985841951 158546619 805387157 106524852 90777366 698901721 910386944 290268389 729868108 284833113 583272633 985418465 363311837 560000555 8750842 591272413 164511911 11327738 933870223 131362596 722490681 828737269 518462755 660680239 757225772 61524374 175371347 44738912 377167725 549985254 348242125 664423019 263216061 850723971 839235490 70197392 567776310 933349153 485277039 917067862 589262134 223587521 410495061 989981012 101952976 601780284 341438313 625390171 631028218 572782945 850310480 906826201 221549926 796200645 786009730 949781643 811089189 979214141 335527339 992411667 535862690 891007662 825059134 591942881 933368622 48209447 356089284 230369823 279944778 951662475 272108707 848420533 937548884 660989029 24351628 519314892 65074818 264434849 803220819 236326076 59466421 600231362 28796815 2343518 289825369 969887103 96514689 39247676 306030579 605661191 933768307 472836508 480308059 345476735 763983813 639097583 374595941 591369642 481624652 174185462 698939483 621928180 36917576 622585558 136150127 792726707 822670372 620529515 46214693 139210962 300978157 912567829 733657856 91107756 12971109 984848404 851856351 867308047 310474832 186726224 170060046 959410269 461053596 23569639 247660497 195847167 641646457 893044152 780136601 627423460 175599884 518811528 731751434 279146701 947863201 427236305 253088833 643747864 770278100 788113197 500697464 712607419 679138710 29418629 826235602 214905596 713817219 529562727 813941667 576263928 273060922 450046722 650348147 934581091 933948300 200338423 408499893 950908100 498887711 67895477 989543619 614318673 761636830 958831615 977631444 456739948 104794035 895876952 139682277 567923515 778521450 722801758 338840451 240399423 530494377 783213863 656969178 80236664 397786980 107426086 280501933 168067294 723176824 197293383 545580470 482093674 577570192 324218212 457283492 330816025 675139462 413337684 575110696 158996031 79963781 615402146 702662552 172171371 950908028 241180 823008141 988136077 615463635 699576144 26293639 464636485 401036340 701237564 883323604 710339900 837539380 854119322 710752134 220866550 35399217 951320014 784361229 100964088 569208313 703179479 547208435 684080110 825844979 643917228 542117371 655976075 773868226 874105209 430047774 22167546 756188348 717412897 492501752 879824330 467745262 270645645 726237066 642539061 880566171 867373574 756076471 744194785 662549359 578954432 348825667 339199380 868977446 712613370 122305909 573597302 87195091 692554284 599261676 439961530 604531784 964726160 182369635 149750273 92328810 552888989 664476095 184349514 994876168 232757059 880094524 968211557 15599846 649339390 880854357 71185707 4546339 833267148 739188275 45430904 743074113 296729930 5790276 359531399 558398423 446911147 708884108 760934604 255117521 49726063 164877842 853698461 547265765 692467629 177503519 663916630 859390374 989936861 509754767 462355236 260909699 125157655 892435678 153348167 844772866 238737751 871883533 58362585 77464883 453177039 772432118 845880398 796313796 315056119 827049019 803979812 790834210 58259190 980321475 889593020 274562764 563242253 212782645 378040273 16240303 428852440 666990297 399539893 991319600 525179606 259731889 7020546 424831439 322671611 49266139 503408922 661125365 792535649 489240120 466435688 816303042 859723672 818098249 125301060 518448470 751310707 523995235 371545574 587964461 82633685 606141751 543952290 559733197 394286108 469499416 69497751 427547228 584755426 815181364 515200019 569568962 951078422 917383684 153553314 14149909 377019477 728671293 886971765 950858076 655347532 3243462 224724616 987149686 389715833 575725417 293110549 53603892 771923965 720611436 516177057 743201013 56676396 853087788 886465764 446273041 924176153 600347397 886468336 126018328 102407514 226057189 300898124 99233541 633397491 678707826 235205651 706949749 788831347 362597349 738388894 580302357 594398239 497364466 437327420 781173181 337934221 162747261 702201230 410529554 322442041 553586823 575684974 767726110 113425994 912366700 238690998 263520988 782863967 887799253 477793816 561946420 632860234 911853148 441349942 900410846 938916228 96689953 281024892 807401478 1881806 716471571 103286613 951534201 667109718 520536078 90422152 486473348 889202014 176409962 167671816 562803358 866364779 44452880 866177872 568520092 710500283 643110533 883905009 688957772 561248864 639831836 107539471 405690476 994007197 292311564 785078856 629330909 867372980 402099070 542682887 75485543 748248460 407903808 775467515 416320144 92435672 14329041 77320771 19436664 851666356 507045958 445002008 699198752 311725715 311809719 620165968 232131645 290031243 114170515 109990771 364832457 832565373 367014069 988473492 866936298 444672282 289799385 459441368 453641956 67018348 297875457 80100553 489895578 854943778 424351527 661203331 691543833 548542471 10328890 672344672 160042587 786495151 946976325 956324686 87877288 928184165 273063006 643457287 663870763 944009390 742716234 79485780 535271754 40211592 846541251 462865397 243319972 35544237 379121423 13226172 61749383 45196417 419758870 56388725 4880551 757465530 489745883 325333675 849063410 513834067 399593906 273802706 854447462 801107320 62911684 431328753 532703568 418687796 355900031 553972427 57594862 773173396 163219115 296596005 510180848 723192448 42492352 760916306 94418456 899824493 961565434 566483983 957281800 441853059 785615458 387244554 894701390 611291432 236124779 167570432 775198267 82465660 676275995 263246414 172551170 165321479 233911722 538866615 405343213 473309889 225254735 1686703 18015902 329350354 914562814 994015001 608656940 627449176 102149115 889168524 323924379 620464978 313075439 986236760 113974881 782557180 643113396 365229201 7551320 943994515 410143754 724470455 606566379 346543251 607669908 52601482 56179060 903021285 843323180 185084966 488047791 363649893 941261230 957597039 632582587 656884681 976568922 392037482 501443880 982062002 4675893 197521458 173979469 919839192 138346673 223027290 965955914 829510945 984617684 576261896 562990275 877708980 224542720 194492804 642449913 1486117 762212173 910726799 996844666 718225807 209847076 273725551 567596281 640422765 498695543 92660986 939661219 924495467 243072736 949725638 545033 233870396 782512401 368283463 616739602 256113845 303142453 334839878 154228157 611586605 335725460 788859791 419882530 94800372 237333509 246736902 359074827 120296780 41348148 305383336 381545363 986687328 868146266 857585006 58049171 58307927 129912872 874343779 499955567 889917261 796575352 656330984 514546896 591348333 932412538 771338488 715975622 717240323 472855629 347704590 148285567 500256885 111284718 307679138 485129234 606887083 800234491 640394728 516685657 188304648 443610626 856724205 714092293 413788083 944472815 971298719 554561053 764225264 763526996 854245576 826060672 33380424 517216678 471855760 166298827 904042891 104133999 282899454 906470952 674130089 58690821 569589308 193728576 934543755 526979627 114646145 591940713 28298087 26429381 299073751 419151853 16751730 215789483 829735025 817137967 188034064 883855086 956342266 305882606 926889689 445665601 996801063 309927490 957816696 317346987 734193799 696327965 886982320 3127820 528635820 481296855 979711708 542512709 324610146 747243458 630061553 902504539 505659966 142993776 475175176 318017905 160006057 751978511 693667515 592101587 698091047 19907920 762393665 248325431 942349575 486135224 372958543 586707204 796455451 197898929 409639259 684751303 600007797 811878997 950083088 270651598 309567757 656932924 320717739 183254778 217387790 965152641 991500188 661377302 466671804 782080101 347895934 830566153 522413512 258226494 258693550 310016955 270710953 779077912 787961451 219713950 383293096 538120402 263910583 108900438 886331241 83148997 95990541 512782555 407267473 125594574 108897361 679690459 570873113 465569313 282665161 617577297 999231084 591351438 820388556 430755217 668389586 942277015 541775107 504216405 481304440 813144293 683238715 321896907 241072121 250927968 64997515 928758006 776830538 655896559 807688072 927083774 756738956 799272883 104587303 18390288 388523852 957054626 688265906 586020707 495897030 584680850 612587244 654843042 422558989 457643262 41215108 583879084 21545222 317086488 631718772 251487165 978322652 804114598 155339656 175981894 401727076 675001286 671787514 242482428 415864795 883718884 626572434 60735409 837117705 158494240 184412775 142134319 658854294 107163595 515134532 92237106 214620412 327337439 577329717 871022080 284914801 82933984 242616007 655126293 470319973 441691735 929766674 13738446 457087794 808531914 373167317 818039130 387995130 194005160 307285303 972479591 597090013 13377435 53350574 236163992 372730269 267111180 154710134 671627951 566606679 516281811 684371248 148352456 249558580 996909975 10702246 648215036 917670705 839756939 617258850 985840197 156262275 497872507 679261648 745288886 600426433 262320076 390114738 422385454 236714841 587901114 634860717 735055807 37935432 451663408 318448984 254620521 29323332 1837573 206094345 973972123 878310572 157652673 387231719 820096267 346544580 256232809 589816608 120638356 357034340 939138531 233426564 703439727 119287800 612561861 369732734 354995333 334222865 597668966 33259528 345810758 668078407 783865233 337437818 658830116 48494284 249767387 143555483 762996922 381449623 235540657 308628475 257171620 223744145 268984341 12776366 73591648 904794053 316826142 99034624 559430570 728923057 37806544 923849151 695300300 39120226 124367255 899643431 89269425 583324388 590837247 889444722 302106250 64280450 526181154 124136007 126799215 718079993 298373535 515129794 525029190 762939194 509537879 345501216 996508283 603643844 17482510 869257588 404782946 592191904 843500702 571433143 387386602 884142128 244165710 134384046 247066256 939490235 836943197 66640342 280465448 256697703 238178842 609942416 543335074 873965336 969440821 933796861 273108505 233468654 996689867 527281559 15161976 799659704 240613334 885087386 478655008 971153619 597651791 874026142 215877894 53144086 112523416 634968746 89657976 741411803 587976614 925083156 563249288 732866654 516753347 885329930 276307783 445307227 725943508 66632434 343675892 370043971 594232601 688891856 919620949 106415364 587836681 991892784 105166417 636302255 813284793 396249613 677974712 33710049 178677759 285240928 702568183 103093449 519651300 406410312 209925869 983842372 661404480 848935911 738392260 46827544 509341155 463029768 765074759 211212106 4749144 431787644 489739297 373752632 122289455 525301262 238367294 745866413 985345237 771966739 239148267 691275738 513130349 273954029 37924579 690910859 650396436 213385067 961273012 205988595 698524385 258761841 916295805 595370597 14272657 591520999 418925852 740172101 421640036 720304131 404200236 137150586 728106157 171800635 269460550 649548158 311324200 127485961 23518606 888616052 396776498 541817802 471637812 200483048 866453488 340331145 529534232 301307104 395437231 280030626 623639387 810233004 803184705 849594500 380966037 788374121 893781572 158356194 77742610 952832011 823845846 659046004 173393824 546273227 384173722 752372602 640960798 353678553 407356345 78231141 675553701 465041196 813992828 565159320 489539512 270047508 58910438 569217724 401988520 25690317 925095443 330546989 930829164 889324280 441922638 44956495 744174655 867229966 512778463 869323969 234895202 984779553 362037329 445838787 526153505 886472250 952655049 800849322 522691468 13534663 62623335 955741579 203476481 854369599 843573142 135668479 500583628 532301420 173235162 486794454 270295249 821735953 26296545 500989135 790533246 643284843 126464025 336136883 985687627 58555374 301958453 872194249 529007240 536345624 134609625 290457931 675747902 214102591 810790191 247766348 882451025 424625695 374713029 33079989 270563924 601772437 856635061 786390119 872766588 3339748 610609679 985925195 890050502 19780774 310303761 586100236 97333578 365929194 808028873 345822639 278403132 346266521 394692360 323544457 167858241 579727102 475643595 828869741 981034680 820873527 432155993 2961795 761359748 325148294 595144149 533769642 761221144 181950315 315712034 14047026 538155751 570103132 923227035 206429376 729208268 574989841 759559997 599240100 365325417 348308993 560906179 955330801 103942428 560200305 758777591 25095355 76109489 978094066 9143787 905335050 305261151 544377380 306799494 946603128 798373478 19545441 910069302 322633225 625100593 660167565 87215275 762985292 159636172 714046208 775650877 433526989 667986397 414089772 488306370 53356342 461719934 362940783 617984795 746284223 322611984 914403578 109929690 481270829 602377178 109511972 390522241 211222052 413696024 239171772 143267780 941413996 903145755 123026706 795834530 577582640 468854713 814612307 161779996 138071277 265177560 31950926 695571641 822500420 162394728 735888011 483546025 341783557 418970923 663162987 334852447 137286814 131907252 398745830 831510287 634028399 833291101 358805020 775506397 933862224 74111933 498281801 758472971 996196384 158254032 427647444 162801210 284790501 629993209 809757922 629155486 449223848 460437342 639058231 441621291 174641257 171459522 528504794 59742538 825476678 697688180 124109517 308464820 731275474 374830485 223605654 740412699 285860850 843829294 234161138 983802083 264768378 671987084 639438198 902601861 748548317 265225433 113176857 136799433 232596524 596426988 143283858 714789322 733072929 284123790 556737247 282348628 119516098 707288857 115603417 173155197 615580596 918853990 120056327 401816894 641327355 286705517 537124369 293622885 67354073 531207888 576916954 520509400 355833734 946008339 398840240 355656086 335727742 819079021 306257758 207807669 535238742 434435677 712313096 149870994 787382522 972687460 418068537 437924385 982864985 747577827 64036155 665360533 795492671 983143525 942857690 395680022 846969274 100173057 877873366 777916106 870028892 146809165 649349218 857123038 582579650 569043517 694070050 272671131 513931582 47226439 161081335 962217276 439107533 128706480 836245169 773662280 562956579 708548613 965933012 741092208 230034514 157594874 236573810 342980930 354230729 162379359 358309824 736725235 925655047 299999422 948010503 564339923 817304524 598170169 72422254 265595122 45208575 760738270 379409251 360805486 998138429 461390888 321741703 205728803 656095043 612211940 177737243 982005740 964178922 176611033 191722608 760855950 431686208 822347283 59854870 84164658 608386275 255391855 579721687 519681038 838952427 61391767 931256624 398059476 17615554 151846020 233854087 294530728 803176004 974520085 951576800 789473743 589161820 589734539 240817989 530550177 646879762 524590932 458045258 786504941 701524140 88950615 21599366 873398933 383814009 849828634 945284292 964936320 364403501 395538276 265718895 690371170 161378040 938914625 692396642 234504879 510971578 282100552 836378322 587160129 745618453 707810626 654586451 948333317 18610820 326530608 260180246 785152526 109805635 842721501 376983317 911225002 389324930 547111804 595703016 80621739 369640184 958430871 239853924 652310808 370806967 703790905 22243883 923118832 265687222 689323536 739060080 525016481 183026777 865836693 319800266 975773826 661396949 411817277 857508861 805861188 299447077 168689583 916428812 667007421 89180673 914418550 102890143 368059967 558167794 368679751 421601660 129477778 906801912 161709838 699838371 687664848 168576189 234991215 201940499 360406381 722568313 944684665 969274363 455831577 725847344 533914772 183968276 680683177 119241770 1457139 898073556 244580498 735011197 695340609 338160311 764409004 299089563 602552641 697438613 408137389 30804 977376756 25156210 968421383 45231368 80487673 883259565 303229035 421454037 420323874 855853603 788881970 142357499 498066033 237933886 377503509 404053757 831966687 384549108 665528417 444431970 640409311 538831733 170278530 988329424 174900408 563774495 627714871 398744893 145041917 456234753 311805706 47475126 661970357 119690934 348134477 214718645 204027646 92969116 938702711 931871182 987748437 831299319 442024241 594734631 755510538 450662482 600353969 620688898 837697930 351247612 971362445 654807951 123517666 725689135 300598972 639051749 651121960 467378399 169321956 708164608 327406262 348775482 404755141 703504070 635359711 25026566 794826777 230725480 116897090 640466835 509663585 799142474 508974614 305530417 550250528 401344184 414957349 223627545 372606913 781031685 897611941 45570277 910112653 384031902 77682657 546669753 877018734 952229923 323324972 634333638 948294294 289390592 241137382 634051577 603171265 508609127 680319255 299020502 238152209 878004888 13684298 934432868 522165842 21915736 638691826 169888245 979866003 211875170 265945469 356008202 474972694 902130727 137308542 994029376 769271062 120265297 190871563 496528717 903251117 972840980 975444397 69195975 652710273 505375164 508686942 582320941 901615541 299382776 851576047 804330544 385773300 352651488 170155684 932847107 6227893 398302860 145155534 439023794 627049006 57540667 683201206 730724284 728902180 674090236 978677084 613976622 157136509 63701813 955553590 18269923 742772011 486847469 145962695 242079419 236770052 250544646 714191246 287599096 654713417 102780639 275810462 367879804 167104364 216805603 127935560 965309629 892875719 464951582 782773370 417847575 657434596 204960856 155982679 78786591 803595756 670364866 489224451 875085680 694495372 80081688 448113839 202283879 293237572 189180551 427066141 248518390 357502403 248381761 431064923 747210270 305382135 840676394 841766809 38000234 221122098 584900770 321043152 309160262 562884483 763918548 826382536 253947162 254532574 83238891 643322248 904147563 104244484 288802348 993311747 636418392 909302250 590263144 751997820 199668682 790579900 974809358 382080242 301386993 645801057 409862056 285205432 323077416 246867005 134129030 674144528 629775901 621519814 262993599 630948986 851361733 765027068 753989966 578148475 182353699 783877684 364608067 766721536 41890590 144518898 60252114 81398755 656617374 178187043 847947139 330018032 984108284 610223040 465202943 358168686 25096850 519879070 137093819 513178336 316931399 733629883 943701367 541909450 287708788 283446129 842543596 412794486 269381703 865917133 344382656 406630110 732674198 434291028 237142885 781730940 610699181 184803773 125194120 513594904 405709508 89851003 288470361 831894052 625328277 933868622 657014350 665087291 295866687 596113128 655022690 738043592 326307690 936824224 813379641 34153213 165528972 69513987 265165388 310870237 144670644 131143932 828103905 719845423 214422333 202689898 531235012 922873529 356757508 483428697 884146148 207467787 627301851 77163676 610930316 455185863 280592084 973505344 608050857 25597356 235185646 848793665 521155513 72728967 517730418 613323289 64532588 768970988 658515272 514366821 896119503 306987781 167527196 40694067 101801865 429506449 1555252 229706061 374181122 864085046 631751282 436963654 376941567 940713002 953038763 998668867 382660665 913603818 643913922 454928925 601527945 747729638 385044017 686478994 648903896 273094369 542131456 327133496 580913107 794544927 541579688 11843668 768819467 170221728 573279565 585522983 84999683 797345827 66080324 837769006 2291142 790896332 367293390 612007519 171739790 955374327 352633915 641008721 855367872 278707967 293374209 833125368 148990348 550625925 945666893 355918128 233962738 694723004 130234032 8814744 230141319 739537744 680490411 310606987 865041809 630098713 723011973 76628741 296144438 301012214 224073763 231564072 857438943 388046732 564528153 993062725 487200935 808890455 521680312 987601659 917721245 444395776 59641924 447895528 752164906 716394180 486828543 194242966 890196851 249776683 135549841 497469467 9808491 667556954 867774431 186131487 463943745 136031553 168253413 847854988 810327157 933250145 132475871 986476355 719819346 87684183 939423338 304578732 525022118 890625531 947988434 283644013 592971371 355741409 960128946 14480726 571245444 329165440 771105516 129166058 446260534 538937277 330324615 238802734 836621715 83229172 660043591 956802953 691926820 636368163 840031629 786775990 81774297 251327612 212129123 907347065 453034106 476278817 7228679 670183366 483019914 562979315 214437948 447462051 603400276 973240036 471101632 952662577 518132083 860455186 433257236 753140161 368965670 512465219 590739852 910268583 190818057 704190778 308679417 29112959 39917241 553109828 827018046 750673651 343276996 475148997 839971098 863199526 231216631 559694157 504015926 851304863 1891592 641100303 31189806 944308815 661215784 29598218 190670582 961621131 577069253 79034147 523005630 462980192 919139317 301327909 953461571 16764644 654783772 964731314 996940013 355002961 21272460 496397845 374485279 541955796 646235769 23371806 558781586 514659263 821627833 785168720 619031545 694379772 171460174 5555091 954355036 280859175 880286779 417830386 348765403 633066140 56198110 963302622 719428730 517768315 815811297 321214597 734735764 985675575 684131849 491199278 62136091 323650526 363764585 121779683 86835708 477837993 759476390 604022596 191673836 990361530 64599682 939390682 493412759 935902877 711576369 740238352 22201302 979498865 852922464 444503557 960590201 118702071 242949621 820571679 105945665 381047788 807587970 211992372 178114803 261787790 97653605 726665416 334499754 879505141 382851106 449457 141720836 150814083 189776343 591634871 30603210 302100190 381728201 332750819 594738839 377817398 117591608 671849771 903889241 323066116 920770298 451848205 127943303 723645326 365058435 906454885 782701418 380621067 159284049 990018889 696752306 408465994 27829231 415900835 64887206 951912187 244563930 272292548 887328063 294620078 945619302 856776964 688358643 895751376 281064104 966222620 459533546 72127816 257366397 15186192 191851996 742967418 159923408 218542568 997919650 334044364 954578509 648278012 708597715 28299856 187804537 882064132 4469363 366260983 888410122 776073294 424524341 49973312 914976356 449507648 489183207 113891812 280764116 708197663 669215432 905052836 454636385 31743440 314434337 914269918 232217471 590099867 464536186 966300581 514470736 938144545 406400107 872271338 760019905 309984224 168761152 763509250 735821800 538243103 521817061 422400590 271212410 417625079 59869968 406793827 995029561 391072817 806195167 346328913 941870595 405237658 108378827 408236430 829407544 193512511 521552018 396544218 321998954 164092247 598617929 756429918 700470250 487924028 185432580 476496583 948132366 177589599 635255852 467043878 948324400 792864880 435431859 428142410 411097557 820692255 621575534 846976146 422683224 25232792 473613586 927001029 268756173 439570306 531851011 606812954 946821360 903149055 534159629 603774558 74806135 359144664 264160897 804072111 826123764 176172477 686567016 124265099 5571963 940754471 866893868 921292875 244809691 873378204 602158595 942064673 948781547 682586019 118641863 226167723 644700157 913814646 196382913 186375118 924524694 769253531 827561172 92846633 473342469 297871604 688407865 794505313 782836164 394741848 379218055 259557232 106157260 246044122 114157019 95956767 854559033 843493410 661923639 948139018 735306863 24963165 130638320 570806377 159651443 753560566 271439824 31154684 579064363 539681131 249852454 197104651 998851004 815994439 365767255 609256169 775087677 783229530 731393798 431613075 100183662 138765167 950474439 901687051 765813624 93240194 724061391 453438185 866676007 297932480 950314361 618299202 437005423 89939964 446529472 517575961 953612625 934268711 732111917 999396427 381419252 640431201 74847015 432728649 197908683 511010440 260097606 393678552 919851877 263424094 907111207 190316702 935379594 339717095 820836711 318092062 888778100 320432909 774411811 647610552 815972556 895541767 294519788 467025071 159056228 60691186 294975408 360361511 753374049 364218322 934117579 13538893 349393358 852445371 472880352 396949383 207654999 261850433 874970710 852984696 219613425 865781345 562908326 580172848 291303050 456899529 126810002 137805702 495644050 584421520 466409215 434348217 192173236 403315369 736112317 413690530 815268169 900436342 428157755 747787286 995583651 932812076 802639537 212915861 916450461 136422924 320285282 970704637 747186968 910462148 42165999 29221265 368544166 426697756 297338694 148804949 652673694 285831599 816169633 38377922 196354930 236260844 346285396 43574095 156318158 239573120 800193915 391808411 636946622 387710905 790005769 422909337 827483084 64496923 175886534 916801491 332519128 946227629 205661356 67781569 195846 885694678 540573414 920262377 416315899 578262320 266292852 815700396 513818840 130249860 469715373 558411538 114951777 924065180 70083033 755858639 171168814 980147710 377303045 652767488 237918908 956647950 418737058 16987845 488481640 336899463 291939032 146146685 424138984 248486125 2798349 251044727 618693845 254163936 79909250 305064000 52698820 821717081 446874244 536041224 609615704 259636338 636723011 89328116 675085193 748228509 919900479 305416267 653194483 354131658 480827349 471098931 921130941 142227077 977244216 673301047 655683032 374419648 885988095 887505959 817833107 375377451 710976313 906553632 832642050 723294190 335900839 491683544 594650041 197603420 216458572 610548701 385728600 917550835 249562994 677946425 531910392 504838591 400237636 904748529 746360654 211086771 636855911 353561723 805976245 503607627 894020743 974636744 549530554 219865454 61526118 790867996 627083455 178863018 478259972 168872469 536192060 438347110 382723373 252691430 228042421 377028836 777554207 732548555 758913682 910677489 91957280 396868368 238358278 875683298 858959836 818966000 114354800 796438539 58100736 450706653 421838310 748816299 28442193 987921964 719591155 695416883 937653958 86069818 485636984 161216569 356969138 370903326 922251136 478558938 757439079 904222597 503613363 153877997 745230430 838387911 787344580 321511565 696303724 327413682 957250980 608537783 367072616 540368978 399821186 510276080 866367217 369804313 326744637 399154137 812540181 224476519 917869579 654325524 643962712 765508901 686965207 337024092 759051724 804538693 440009085 93101289 263731628 800428289 773093219 763859354 932680524 583135533 284677320 661990820 108499279 249036606 91045553 160657708 417304758 973353923 287281110 57857703 68729484 810987493 577255309 132851816 73876229 259420195 110252980 614853042 893754331 299102640 796674507 984426479 38135850 201325177 560987270 752474176 81861290 400252685 81719862 252335295 164315218 914700482 978231229 469131669 19922372 705399314 826574189 243374608 358187150 399652226 529227435 137685822 941882728 973968704 446292206 838445006 162841836 266638350 390606455 426704074 709124610 290009132 461050679 828272977 59090010 289724280 973835352 571002671 970068953 638572975 266070864 906506696 845476475 185124915 112330765 137124695 399265995 555480051 299658416 467786717 549243258 172684214 332867134 997559826 525806947 876202643 428389729 846357704 827708974 672283535 296306763 291655930 981677969 373008318 154516713 516624864 611504291 427203445 343517978 630024847 950345687 834768535 53832964 569849741 569619112 219409022 954671617 110806558 945325320 116921039 927296236 863215891 914518862 837076554 984507299 895492308 731818262 59758456 138681557 802909286 853649938 579705388 225809989 920155438 883788348 577537996 188389053 649651510 681221026 585643244 330434308 682084851 55726739 316500431 403018760 102889942 689493941 464033584 408604663 498458017 26062048 228495841 499716480 815976881 617592030 250979461 948674128 137029297 668599230 121217869 533945445 390715477 395189687 937564040 312885605 529392445 532754514 278866080 958082201 688609515 377721703 463904105 385756699 570198163 871247226 848141464 300199874 70979264 786553505 382158164 761711722 991113232 802635119 690278378 30161478 768506360 2325944 853975753 106858062 160525171 618689781 305843280 648986012 501292973 274139285 815114262 703299416 575954628 482686384 742700108 103091298 186207830 301110168 526204478 620013756 536034479 739098460 403288001 583024078 523078330 228105008 229504828 744107354 973095666 327695938 685845419 475295621 483030297 135157288 231385543 602889522 26707090 106641473 816055845 786997852 765904962 273022675 970833316 495378264 367250696 293140748 135259635 986529930 43703455 326146163 459109979 549678812 412051329 654819314 767513204 382640509 788073069 643605316 761881814 336833691 230010553 475250669 745520208 423058504 673028033 693266066 31430462 288944056 829760309 726866200 744646740 348945664 98832349 873052287 563178292 497752440 299623455 969649522 994845906 89852885 47952104 98705757 463310348 425233518 936919348 368890191 823719428 291348635 149656126 804014417 263103473 629330251 306102320 367350836 979379925 402457593 112668367 387882866 819753394 122447225 51546324 372049007 812474685 651610018 479140693 809981699 449881584 3654979 229840521 476529635 908318274 486885841 476774615 405302200 896668088 625368522 851174778 436911423 1472551 587600751 226937626 352488018 267595369 590720555 676085771 829325669 348895248 342006082 388389771 552279457 650355278 88941581 153535019 529317701 341032452 833257023 486772716 196294595 782729939 206664094 636995826 989708731 919691167 597559020 28217514 455799271 792789965 994522606 541003998 354601026 540373537 233216797 954501854 378689643 771144172 155823707 158313133 862360926 938190452 555561536 948033940 223427487 29996824 134388932 825871788 11235668 216778810 235438927 421980266 632552752 577749905 73392110 836587811 980132582 43604754 705531879 885965524 964885175 21394603 43395931 200378516 847630393 725984038 783544132 658104527 362114232 933337780 373187776 173433665 577515942 881725506 836255360 237679569 872196996 986306078 731902147 650927365 828591732 949802495 806214749 868074196 944360982 957903625 593416297 310924184 133392897 994553623 813075832 662241374 77395180 705276685 299401482 777286707 551913951 262483202 811692322 617697963 556986681 590889092 241072337 419116714 317166596 842127142 689662109 893334774 572472090 400501885 888435311 781049461 545172305 352724176 110127424 749718825 982129547 493929725 340015445 775840098 140040560 929828908 244369753 509068693 492160784 285940893 161384479 403185828 998390155 223450059 638967709 855650988 355443475 504775840 464682433 431289622 147075057 556362964 94792101 539033884 703473842 969187732 614192897 819131181 220520957 875653759 194523108 45472738 79542707 531377344 910359497 459161439 538677669 986820145 808363287 244667067 528334888 139885592 322551803 21777995 751296210 587806394 175815386 772167686 222541562 31833696 496852846 290539901 127276413 671042115 786895218 95528795 291974112 982602229 552707262 233078978 391267003 144966735 461584305 260958633 110559514 787945073 396615532 154849199 344654656 74953446 588334956 592950295 551339606 769379531 931499742 457732500 645551193 400841342 146307033 805463998 979519779 775691143 723982189 67488253 13214228 697800230 557220162 877266166 18613264 626672922 562428451 369467953 522367608 111126728 73405383 891860157 182914951 2048125 171090148 104660073 604828991 977080583 778714005 627346350 995231215 428192042 228549048 615729271 204996061 865188046 148980710 763595044 102665310 457321582 169340670 676987290 699656804 296107864 917516187 480647622 708410687 305923348 942192451 164737521 339102293 780849054 492234755 460445462 426072634 547669220 960746664 847769389 934942180 329322685 125253513 177323721 365325878 316673657 777832098 295111601 441602728 351550846 544726252 842935592 768471027 935381892 339886542 41742305 368034626 388926889 430507766 440179467 174370061 315980475 649497771 407872967 407959139 941841280 939898573 571907993 318401831 755367483 476900521 661470147 324531635 700621525 468934911 731685707 183812751 242711297 565512856 683999469 627491529 841700650 875273761 204811595 682697303 757179440 906864166 695636341 877428004 975959255 2147457 993347655 708254399 900924479 223715646 175835703 579999717 33491702 164107128 489635009 561377404 782449281 92304950 65917070 297921268 856626972 604333511 304574734 147167678 807217435 170583702 456847246 473434335 480017971 774089540 538715839 339539431 673140604 490694702 982940789 694890827 219394930 798985953 293072838 623282327 799540052 27636575 683588900 47201654 468807450 606934679 365407489 335852254 203231000 425291888 747130233 837177144 751065744 339507187 187723184 948970292 424070212 750346234 494017450 125085490 907544950 561843124 180045290 982210810 12999238 605636499 881746678 260683261 864416758 361277608 555935741 265338730 592174759 431029190 718845340 127783615 507985122 709732460 289202163 106164494 23831049 366623315 331013100 85664871 355171003 147357033 581898664 241465525 687998545 956080057 749068181 365952393 652587190 82892997 563678604 64328374 479782506 176924315 469275851 286831662 593082648 586700823 199128158 274700959 395806688 520720083 502326739 73288803 207646082 250700226 465917388 37377981 485325795 600738412 235769934 711153157 196983724 600767346 180627723 184870854 972777414 460802463 208784896 158974621 329849907 130120834 432526675 460155242 134140138 348051395 81103568 783400022 220428786 706629792 202864748 160162480 781174796 912567369 731961650 908454172 371987575 532095463 261001312 395383086 819329069 182685610 141974835 139264262 134336222 763615504 519797229 690296783 994551849 30002933 29984684 702206073 231347585 650225259 354608759 954128794 788750683 909959976 720016807 79042500 261584655 776987969 651093405 265596223 516401239 554027979 629778541 620958140 774526095 218030831 679410990 201093749 726934592 836487287 535911269 80932881 643668875 993382439 671150046 502622133 902968603 793876307 864205145 206867350 364082998 296257606 438464532 981113563 593424548 683929271 724258142 602357456 859905970 53016150 529082075 182096498 366769894 403052713 181252549 94996759 934986748 690256039 148035233 467319153 845292592 674831318 814161520 330641207 94975436 995009808 718734180 116699984 580566298 738601977 27134955 520947374 682331368 818908136 17762766 571714582 345143094 553654285 587047882 984782570 155201176 860644255 828902229 947493612 875180742 171426147 764325287 173384417 842629788 752861 714985926 615942783 494455207 792643054 264761127 815481879 599678965 874319651 852810200 442911059 538904660 115582909 474913771 827488382 185724733 143866114 955176697 272164149 147339759 650692102 790899807 388940281 5683592 425414711 295263891 209588419 849662045 621554215 562319528 357058468 84588875 705737767 236036393 571194405 137979091 233278557 916793969 125822418 726233120 688484213 449751935 585055251 342933216 15742372 843682274 22034304 997701003 51677157 38940833 814515982 582439711 310541737 222334385 489249203 616780714 719821939 628745221 12434052 874116689 11632832 203624767 968773283 619967949 483878600 313316723 275421586 88528890 782411807 124262278 251673269 728137018 460275852 641067572 550873853 529081531 508156581 72770283 686815661 802258916 254908735 84361508 103734713 524302080 859504757 672341615 220386224 420685222 88566424 173296585 457105671 40824325 10192507 65564341 553440875 137295197 700337986 613682641 681552272 121345049 683179642 298678716 467862319 838276895 392437165 790801143 833462153 161845035 909355128 574276037 527100076 457991193 644102010 412773668 580917616 692746749 518549617 682646519 251085327 773608522 232268298 221566119 386025975 198102145 881588825 666126686 694777550 67857840 872006913 758713546 387424445 234949051 626702140 217189495 541752607 958474732 264864792 921460635 808876985 933983937 771957394 565308979 613031387 847722808 900779780 50457707 24944767 820659667 99698366 39246078 836740948 858136312 825167564 696817693 748727453 302734179 588192043 59804027 477892123 774491807 320860440 90404673 517956113 686191435 874446226 594448388 429889508 994596706 663266637 865730166 191767359 99385658 846305225 658480440 434624622 233165777 457041718 477988901 821666084 607706436 475110897 435436231 441380824 851418963 249331999 791428289 104356853 646513649 153222061 216357035 714326505 229343291 545900412 258462392 699271663 392193900 474359996 415368705 857115039 731877079 266986555 607760116 744193882 563853992 873138503 260052169 997225935 683521717 333235463 33016257 493528841 960524201 590567377 203792383 146764334 704499321 477355464 80327817 573580943 905520084 457653462 659795831 665639662 801661008 610236543 540623154 542165970 898974439 611037873 384981736 256041603 527644210 363540602 825459474 71331486 698864774 750212892 787177193 142008681 696737294 772138092 662673535 589730776 11771727 419185609 76224895 450803283 464265501 860936023 332881542 858816225 223320726 674187060 717388514 612875008 302308445 310859299 570873393 877170541 8108677 784732392 805980767 685388965 405948803 260845962 664140861 535427714 347160339 356119737 321697728 637125723 224170271 390029293 759937983 111381950 269990883 949569289 720967498 755177261 73385484 774389428 890219107 709919262 381897945 536046679 627361009 628057881 261772272 9486107 456567054 409105698 297403319 371702722 248956345 592630840 886505404 362607666 932597639 639832968 303748455 242766387 124679980 368175393 878794963 6201071 689713850 604211555 84733308 455984133 594267034 279834535 494736986 913096485 87085464 136160718 49045696 887768485 987940478 628648928 869608894 367629119 168586050 622194368 360413808 451548095 427797392 681887699 540883679 112976402 934691475 489472196 319529985 982650756 632135341 96233577 736667449 650286635 610314784 908750382 173045816 881250952 192492746 898419150 434943579 758457121 573313552 984203930 29997726 384376971 434957888 119633913 885879739 457906268 342563514 351343786 2026803 460840006 755468640 420692169 711684261 821798337 440854309 67175123 231109458 919694712 70674696 663585001 501521746 490877008 465317100 112035732 264655892 210496078 279314325 144608962 598966625 1604468 233720599 307532633 502425680 269466023 187640149 276510205 308571849 809972508 306349032 822994059 441862315 523336606 391302181 896223561 478010758 548272811 338569437 463145465 788858104 936845175 33223558 993137585 741639842 975167345 6332915 26034540 404475616 610664351 387957452 522485065 697029869 597922232 690472889 990088888 684095260 3734621 303951455 381764198 791150064 539330292 763999976 206318348 859190196 137643321 49454374 705003929 826509043 752450529 668094462 226426559 159289967 828576428 564937275 359705687 111541732 63916862 224823387 759130520 826007425 406288097 603924953 153826462 220069058 945761438 876168285 984670911 194414111 99394017 329203307 482215274 40899367 81284198 494063216 457271555 13399404 271552096 828928066 504469339 726647161 492665217 933536923 867870948 525714517 626649225 514540915 997045156 112840244 12670038 673396984 692830274 443109758 602571498 853696446 787060844 714596938 745530848 538220990 39396569 983790270 509817470 284635196 884822852 360136534 976056950 912144144 325387658 114975892 782917891 514203238 15516552 656836013 85234366 212602776 689717119 522069606 351132063 135844488 294010148 529165416 340038400 975137221 950390820 216133345 640526466 303597551 780278259 128382104 984468761 427983013 709402422 566152757 793468679 273069001 632044331 281400027 267804763 225267965 426976218 218267249 99500410 544428935 144658172 280793396 933704907 569930946 683152306 785197445 762504755 798562103 824507094 590325057 344370828 688063929 141380232 949449535 850349899 929508103 185804604 398889704 84253219 219321789 960495487 654701052 387412712 345524101 388873276 352572050 198542905 347793162 967386087 39272042 982418679 345386528 858573797 645347242 754598146 96493196 10457075 204905310 785007157 692766885 573399689 623405776 103971182 425269153 681173737 823641135 838037411 558273713 431990165 33027786 863922265 245197967 431686672 370019090 719105220 612004888 780975073 943574132 314921970 467315785 558471214 106866904 919280118 993126100 407482045 393844909 640316810 745726353 125266711 537288276 438646497 886648464 122477708 158409342 162575578 633307195 230358557 388212537 722371350 458322636 503471958 580898825 583824007 234806479 206762834 166548814 184555185 412069292 310364733 30137047 89511367 484171829 837907796 586155806 617392852 214727681 81123172 477070787 195043070 527222402 202447481 696738367 459518569 592506313 128425842 102915982 961925135 50192765 773199458 451622848 961219769 535992249 112290963 168831438 455342962 554217321 612471769 28544572 266095385 817385460 378972979 815481391 952227658 926460932 550180305 499246590 126327076 946019482 866176404 730327918 381264494 160421524 281889679 534573762 165121054 749872225 381642792 580300960 41805052 765737811 448346645 70926997 280919774 499357461 236294796 344589352 312204272 189584756 726941976 405172564 770612842 635878004 85346378 167950622 125105802 948350795 102395193 599946948 640887755 881794306 258989649 863488723 347135072 792404322 32267158 244069819 666534373 886366357 944644368 939354181 271339056 679443797 493804592 858980724 165671592 60299333 993753106 533555143 58436439 613111346 999889212 53508829 110849559 310271723 688184666 155323029 169375809 631543962 98134492 153862430 629630658 753782769 568114504 396304562 592129021 592777069 603259717 344433788 331735292 761033172 120204994 38331739 216040827 708172831 522349516 86249905 644520352 313962821 647806522 501082209 690179649 710570057 864745997 955808823 853840392 938895280 602098445 924184931 73084520 513270121 775498083 230926490 345570407 222867061 43404636 708466555 710419831 540641791 893426349 195993060 676914127 779383855 994753689 482114084 359450761 733668312 441029526 237610299 197112753 669964830 28756952 872926551 945759027 57072020 713912901 309089211 633778263 800073976 236013079 51998875 378428864 978853469 55733932 242325686 55281557 705641277 207993406 247477621 826722558 907013326 182284739 342888290 858203622 332455022 930746018 179510481 914575217 389844582 631657379 585511513 702781512 389344308 561490866 48364065 743275613 432785771 176252195 222292263 689531616 272498349 547912681 774686978 291944719 686890862 405362729 805968674 214648827 223798594 493141888 329893094 100931339 873928798 967431833 265573171 789362110 313651805 253526524 47774342 749725853 152182678 268305866 189364498 955349583 634290236 781972449 510510203 983125035 118743473 560198480 619147425 75221661 571187592 553074790 484640418 865612210 205477033 768781547 43733753 854720269 812225318 54808727 648973085 353569021 216960119 518790200 621229036 727299013 598482971 996811167 476818130 229377914 667815098 748250523 760849785 567780012 756592206 944771396 34251063 866959933 704614325 198100417 282928229 449632171 125999178 213760098 849163836 812084662 394244924 290867791 212345081 538109629 608039764 825292781 906261588 346944314 675608631 381695314 895166194 760516110 470226196 488577125 183690826 14239781 454311964 435863330 782593687 609317927 715157196 615241834 613530624 919994848 587597725 659498608 486339470 200242378 914581245 333528746 470903425 677081351 536172089 600047671 967611890 382701156 978381681 836036804 989764187 535942563 646913416 385416175 438649001 294533272 578813409 555084979 518407085 905632304 943872477 618356740 321557707 598334604 991428027 360828743 911783432 183394330 607254930 221545349 699675430 158495382 538368796 592676011 777768086 582673044 359701152 79142936 791143240 91835141 125725970 730029502 483149854 591101079 577018001 100692202 739084625 387564894 526042827 454055418 734760454 327806744 865458567 139397839 968752727 854692286 941496563 660213832 770809453 222040217 563209127 122371021 517428646 486349264 579151815 558829645 958310792 345312922 171783718 748204880 333687170 633143424 772261539 214275269 452736994 572183060 437189934 842143818 195409495 133963557 448226726 111378243 472096442 613653959 458873263 228716996 130977907 568361543 878275577 843537090 739807325 479267204 736872296 530677446 113651251 471457907 346277409 243829334 394588204 477135447 636542391 29229702 982064930 310398353 291893108 736954333 765583908 478707535 524752516 385976711 16762843 309576569 333365832 5527270 98920747 626370524 275723425 785185598 60293452 392536755 814665108 602163590 455599754 573760429 669169025 735935784 253619482 80991629 84236991 607693964 357661718 602039662 44463723 433078335 432601840 656408003 663540569 613926926 325556869 180113376 314361824 943929619 256463095 144765641 485941425 105139022 620946653 890146681 592081293 728414782 810034217 656822841 489287008 948708212 669551448 62830931 211081813 671257139 709796266 436585292 627870246 78478670 603805103 506447172 951324792 151904182 452067481 217125790 604729631 944748857 420845365 133425591 43716412 546467589 585353535 350006644 7290748 848783032 18274685 579892216 357689320 298192106 334588351 952789855 498115579 945086151 28850120 79756554 45460417 143366742 784870617 234147522 560823166 951645713 871206897 181741635 516778050 114113559 340590718 720102590 869569030 359314112 105410582 535196117 650993686 77729115 13887325 558532784 545169861 164399934 570829144 850838183 570925515 746771630 329326526 314539290 270024225 378326093 830188032 261775934 38334721 813183051 918650861 505148911 133977336 833268198 843361050 592941558 759116384 458123495 290752394 296414706 243505281 80308986 769108316 661364335 852741568 565368641 679037634 708269788 133274714 242078855 796472164 770462962 922497084 1653967 511111322 639339763 34645338 839652572 589011315 738514206 806837916 854241726 593013515 424222655 539946742 682369999 922819934 249086377 126982971 295263581 262735114 76091817 150186061 430463157 728490425 371319439 181434880 310953357 68448235 84297840 557576610 19749819 382958093 186847321 19627364 257344983 727552523 13474605 881956692 651923423 830471588 867452576 776245499 831167470 95686648 296467617 933869150 48937162 969321097 604683229 722544836 114264493 898689231 746088278 622893684 159650815 482430951 893600184 341868242 494028670 486273016 571594326 13042038 171402694 717474881 630386518 696675908 844686029 876270503 684051112 892187142 387955676 216136516 999891113 419825842 295110293 640925739 642627013 311763739 414125204 718516558 232263879 154913865 60292409 786067739 424689273 801793427 890066680 106782046 239269435 806137164 705108131 59944907 84053792 222065351 907034396 468634152 763312577 600353513 534495944 62239586 243934903 678355334 132434591 590358117 74898125 371557708 397753475 45964662 760233273 363762906 926116039 543294272 819694499 501600214 822412876 752793821 991286009 656728362 184083341 403544935 378646354 537653815 953040552 644668303 913588484 566739559 402988463 97397942 696520592 103573417 911738874 240256626 47154468 906517276 657281117 270553752 137922878 184243501 175451894 100070078 67757828 988857590 661817468 739402946 827505035 996367033 542742606 547684532 530569352 665229761 729213971 539761537 962490005 836600651 881288731 641349261 81323476 949532763 356783643 830463905 158093898 628366539 963436186 193465311 571752876 533507170 414984704 208988588 117349088 102771364 352222093 223172930 310813256 42326439 950214160 549243544 19965907 966327339 658934333 771558833 933351571 209339074 248178721 522972537 950439350 739869411 633760 953585112 451200279 468782828 411816016 457960522 552352008 797813260 933120531 571603183 928213091 895836002 155177207 796228637 825847277 954518626 587956608 138775322 952842356 948293772 668600419 728938420 166719965 204879852 490031594 879268773 785854450 502687452 71168586 591363324 103670548 37052916 650389678 196544794 603493824 156206095 41584189 301276329 833829591 534630035 257852343 452036005 129464133 310968167 319985066 823024900 272139131 432517226 119868533 862122301 573982277 98567508 485030273 832078469 101630594 570367221 360860385 559934283 692183987 834192711 49733117 46662173 218560922 519887442 203651104 80803041 756944119 26156013 250192654 74771195 921551829 523594804 85435338 298604623 156131506 102158276 865987433 737463206 740393744 267379867 971893077 790512179 788733033 913328611 637978768 56918756 619684382 711514711 498280882 322965759 477703906 596408311 696205177 917198082 631731297 682829051 367023635 305295900 173698323 543728357 595637903 212864695 171865889 238059385 40358113 426982073 205201611 942865397 903753820 183012648 463500360 682392783 851736919 642699761 54645300 925360071 494265646 155748132 719501832 731069469 620872135 692744739 625411813 810145731 371455884 731659617 219932697 866847989 43321101 211340022 399622046 355878542 562982671 378641891 351804227 267641889 47438195 139830509 388840900 247862373 404031940 407662058 938534780 611722871 101831726 230507756 619084258 613099565 991124251 668847951 917035718 866400643 752010788 219879371 555492931 263053431 747630103 102253899 21480974 112189618 74928902 551831938 863058419 939030860 980359163 342752883 253920634 43874079 784049853 326902899 4154361 172903043 179535088 530871715 495751857 978457681 54926722 150445994 923127545 736775603 24229256 546019871 960588965 223912246 543976650 609571217 195261992 639715514 868149962 955765239 925306040 713916081 494542366 136079078 356543146 558177507 207817713 130524634 626387521 61822887 523033472 609514071 66640330 935881285 210760246 274744217 845294621 378284954 57621621 863331059 538282339 930408850 111896820 422085485 200944206 886826948 628948657 818726104 372593360 611952413 744369651 656280977 233096812 883510678 567324043 870788417 160813996 165892547 998620642 245403614 124254323 105512625 918588395 328108422 535843420 278072748 328179698 483798039 601087375 351386 863373432 526805534 34852399 544135682 922395922 379117909 502136692 841495785 13161743 759094983 911937781 764017129 86227575 877664759 58711782 985589675 964948483 323320734 879634292 357579154 687279344 441474211 32964261 729961225 825500384 497922033 7897721 764103212 458680036 747392434 365912435 952230139 138823040 436767048 420915419 939381054 1311199 843129785 423372020 694066742 931299828 182726119 830499784 797485204 571682124 641337413 159361709 939188990 600092438 210453787 732004921 559660965 289592006 113285590 445536608 838552565 825063797 935201471 862734855 522643436 985719996 211095063 298967309 221331704 162700400 176500172 612474533 421491163 726843567 257883912 823682734 994634871 240488895 123815255 886252629 523722924 766950382 200682190 216903642 844987415 80967271 826542617 155742080 899101674 532375789 309557505 701826853 802890633 630075276 463186503 158726757 568535521 660316425 878383694 920046090 381898696 298336464 791718360 387199450 552936127 895678880 771342165 333290004 300115821 462871821 170986793 544337845 467216096 122885689 463149870 811842560 218655735 856244731 757399427 85053753 367454858 963214843 503627603 761225775 798601274 933260273 71432820 266247985 913410790 585737727 482114594 602503089 97448673 498911463 492586168 679065178 205246701 63932473 274052824 913359903 371443224 481885032 35001947 804124480 362905998 566368449 289360146 198520281 547150298 341218461 766264568 145075613 446148921 594379736 278663631 205167057 866126047 546911811 861922175 779394914 951345510 23600716 876828846 993630846 859622844 47845825 210773528 562708174 898048644 101529976 909576088 740215954 900070501 36776096 598958909 939147336 41366710 939378420 711779402 776053672 598403031 309677677 363486550 328033468 988165274 276160850 908883664 380306737 800274750 733381019 186682193 748187887 455603648 852737709 281254731 950694814 709922391 673257797 646139688 539407873 918248202 301427377 32344597 987762358 154194212 79904420 969689576 40353265 995504025 45099577 751601841 805882028 406147702 6294865 510382046 795711354 565541023 716889537 390733310 306717980 269878231 235247808 483617600 173619425 315175234 561901220 712862537 189791500 496410367 697284101 626739380 30042062 375452565 558526853 261955616 716106323 999521443 386511694 133883625 755270075 443520360 62797896 305435091 398743665 166126442 503484353 974191156 653020181 503480061 403593729 75339922 464847228 203170058 885564358 831002637 263838716 49757246 659776621 576942446 104150641 669487207 66883002 920937182 330082414 649223765 395552316 985197352 895142598 448057545 898945254 387729274 332968595 704334246 190609588 676590240 163062375 303283496 326487280 606800723 792729810 965647913 749581545 448890095 359304325 957367942 865425326 452623979 354794784 683406622 875760417 426885806 833022511 579854141 4035111 442843619 782064376 288993158 70535124 456825881 615452353 915296155 888868895 947424839 474882331 84765017 559394876 253558072 323728543 578190969 921455786 207607450 102398312 104467530 60709469 706848300 64125612 430215243 733861119 743688016 362572141 421007872 763185918 977471066 462060154 162404651 264206959 48758847 542839124 673452986 418951881 191545066 255191183 133243365 371365426 962777505 494679727 915332810 541595413 437198208 750715899 524338116 177977577 202346716 382876214 232071624 46500568 18246022 510059679 143909735 285123789 798391458 446281445 592454347 164337872 183660828 276382287 555022393 87643243 274486241 880344314 291800116 662846271 158796503 860443182 720057445 252856790 19757427 704738159 669185574 699043814 64977426 319186425 417975551 310110221 621617467 457676804 690431692 610719756 549573273 892107242 794692662 453041425 521907778 632746909 889846838 210306429 292028783 788667876 355920612 518201005 115849510 438801731 819642142 384783399 551613060 430929190 229568461 625561324 759056191 566390354 774913109 790487338 439135977 28584943 45508255 682880452 706328735 750864695 919883680 320428842 672149016 162767290 829660612 257920060 378780033 350974242 780923259 65690108 44148265 707207319 710654304 533475440 737782324 804946648 504010407 530988881 620018694 624861011 732659051 134988400 990793108 67828936 124186492 203709168 735188188 390428915 440693828 566409648 877425403 786241228 613095948 262430181 502947411 47756215 81599252 891305781 813602594 58136443 925072586 248719630 921060505 104799269 391570113 100718967 63399652 641216399 912396996 656951123 846166192 218519874 292739770 813117915 22465089 856508549 157259986 168078345 414051770 509360618 527352494 95622204 659186215 198486324 601108532 937180218 85122790 15434404 285963583 567530778 381653495 788339589 652491408 395038465 655567258 163292549 845769265 512060246 309922045 659835263 670980613 861264677 779712135 233660129 94560011 292032254 937135353 171712452 740791583 300516014 201684701 355625706 959533339 862364629 279517095 351499660 329276564 170058018 521401015 692884854 903652734 876231582 681314050 358029893 595286954 178519591 163813203 987102988 735989029 933000119 14082115 927951644 671184244 172661513 604407908 875100192 650624172 205778287 642288656 335918594 684117259 823198008 40276170 427273897 476983453 288299697 859400378 105414036 546345177 199052836 15956410 922269073 443173464 333018242 43758006 265019485 702884570 906979594 108165680 855153748 376211347 51163742 590968972 255348258 954468288 38334615 254486383 841067686 158771181 248800873 68332470 37981177 843241605 95751237 200232055 418014145 692830706 926719521 393536716 750240624 300798364 246042221 507291675 132039431 308244828 242594613 215027422 281697086 66406255 302201678 255088143 394942892 481175758 442035007 878102528 289980638 545629167 523217960 879956917 485112518 797342515 311243870 408754357 100203717 633309872 259463247 70043364 281682018 308203879 289883450 816762952 339961364 773897021 789821526 367412644 289161714 834294440 153426391 963896319 772621717 708601283 158997173 794193130 798090176 575143201 155033154 700896780 156817906 614492970 206618319 456360915 57300917 400205081 530898962 894142695 694185510 798098592 291304696 672951800 694560194 356290800 902873351 472279435 812817569 599713042 573255163 660242289 490005992 579800314 744024659 774110218 185308652 957583922 408182125 160611582 509248892 670403637 462208098 929896540 424768342 301412144 608601144 558082366 155232648 728825196 549357534 396651476 775692459 773750221 392207590 390925542 245008752 684127878 262459686 15768388 805511455 920854399 733116124 297263135 474680209 489947751 87728331 686863688 871985069 321308656 221311402 934868899 878840880 119154382 155342012 32283545 191284647 954024477 68797314 383087761 33477136 956007291 350150367 153204789 311925171 984102716 881667248 388637916 669847346 508455702 238308670 439194330 775756715 629166500 618782222 933020085 56568903 216474027 323864513 300675261 833555460 562451221 517174055 71744470 515626998 787945277 843678834 394057892 2015070 254828537 287472580 121950439 880732575 230100055 571028813 439863221 589939824 941922695 915373550 834859852 818066046 234027590 230415419 944980969 255886539 776064363 510848382 907033658 417812155 640162413 316562701 11877060 272089211 676330499 96497926 899369773 508885122 713983944 550005718 622895736 740343218 50407073 500876566 330394599 134422650 238785039 596537831 909083878 140017577 456578722 474244057 53878148 779213784 759356067 472989425 508380586 714819318 255141603 618240274 936056540 134964965 207268006 220849499 181522367 806676970 471138203 743536643 232682646 457493946 908840557 334153416 255405535 82429539 874826764 946299171 846482386 101114559 740560885 723034077 154171438 887798891 961565886 371853734 996337556 467058135 125885793 230216357 176998468 935446571 107856431 317431808 575145550 46177755 68902741 978096621 859981654 547394215 999752088 197690783 329265614 966909021 21092713 236719502 635533153 790949798 935887474 904134765 827907027 903803156 154377341 502274854 350720710 778251150 558164593 43959424 939070419 278165853 803740307 330997711 567577676 394080548 303486284 685086274 408861154 995511047 902452382 347502177 690823961 286601520 653411322 874981624 459166836 945674506 306597365 693946831 373660212 282725761 558370834 205502272 917001500 6693593 154147595 281639317 425233679 792144150 839851921 922600141 883800257 378870525 400648380 365597718 953216705 389948417 335200877 406253262 393742184 96662117 761190213 869094772 699881532 129850006 568089483 756011517 373175340 591639185 161602639 254790497 877547456 165519569 98983451 416539053 73610259 884435214 543766064 868046646 579015195 814666551 782970149 42478292 694754009 587045045 543361671 978377875 413832214 758871353 504887874 681262392 810626309 113495346 716846089 587381225 144441625 309451138 945427674 620648508 83752243 511940632 742417023 389880217 416574119 169708581 837221177 895534575 165090495 304460240 944148074 821453033 192616102 244094617 940619169 42342433 270682289 148377402 724298680 877150442 217779196 474435211 317648595 699189928 441868987 8790072 478848837 770480563 236387860 882831454 782586153 928663733 732746924 961579740 160253037 180049842 579110420 316646050 695262689 570256745 326868923 947345667 612533392 870290679 94905082 534625515 933573438 997390313 649881681 317682522 538356597 414257470 273038073 320457334 646909780 436075853 258530452 945643118 152461270 283307026 835870338 998095011 205087740 543062076 537475532 454014602 763082477 473557297 504246779 232514604 21306780 629095631 677324964 237727362 463633547 975808138 245322321 969825307 380218998 84820343 927771994 295263341 266894560 914652954 402853970 337601394 582507544 640508631 676883079 272469855 811679339 726086141 777219294 221385243 219122570 1216294 309640838 169553188 350899655 951697296 435898683 605946987 844123353 768754729 283604803 607770820 814306234 426072571 599963566 973261065 933225967 901693677 975568038 660462182 938099691 779643476 814546592 521856529 245978897 899262593 612501297 593630392 760214319 200618143 929993894 712059074 633606926 491174715 153644122 385199702 462556189 624524860 2532982 90649946 966951448 370012254 203103700 633924813 787675932 607408096 359451621 988232989 204020065 657789989 200216393 26965229 988433592 376824708 514140623 825180206 84268925 57000985 78201377 632164117 422784069 601830053 885891639 77190765 406272497 885445418 737454608 96719218 567486420 173379849 7790362 722473131 746556032 160350367 576990383 54073215 561872458 424387786 397453155 789840259 973188706 600667846 509639312 90733348 242818662 823322723 339554813 556545161 206813209 883885452 591985875 130936107 945111795 62608687 26531385 925237273 183748046 434788511 307224352 665914625 600910410 735775072 100444360 582751194 466410161 413077303 297241552 418916048 800457720 803213967 761241611 768873576 166045735 703770856 162611803 788458670 938631791 380856971 610377895 509523324 233358884 140631590 898260653 94542364 276671685 194039918 289022426 662194658 241753385 11945378 625709919 104532088 713710358 143924901 226456434 926850404 376248492 807637540 787304117 25511213 942183254 657021619 874371817 31866493 525198908 975155258 965579244 494806826 520939989 258458466 289399432 231265239 991852355 331277962 23844506 194556306 975038592 777963826 22132645 652704983 650175497 815218358 684700533 713817189 109718745 580173063 512348798 928283666 808128455 962080025 14634072 505383492 354538966 77878084 20646180 976527673 274018733 359586054 254547648 435612589 856879174 487048787 923379941 843977539 174927336 124829109 683903624 771520692 409143915 517325562 888918266 196931642 942310232 94049973 498358952 303401289 730407794 139097538 234396101 63914399 459784618 948629880 416847923 49505234 267828089 521207997 854874664 178774386 719911571 929798387 470496547 435977978 353456407 812335084 579686107 246649763 225660836 284813738 328953741 136676047 454450378 471176198 532201120 32110570 2276601 798535340 925789549 270635681 403355567 30064422 24798643 365116762 519741402 627987451 277520281 792914417 789153536 838712138 96519758 389848018 158283547 434856753 38756700 338244594 216400984 448010135 640908646 999760009 574764631 492268711 50915142 939382730 628809149 800775094 950430341 671630708 927790574 809603155 798983891 967177207 885096086 872478897 387046970 18797519 223234104 190901020 951800014 794919430 389424940 382142108 433217495 378964026 600733538 937481906 161581758 614127151 35412292 584376450 820234799 822710268 772764741 718818024 422774968 899594699 383520855 538135796 76539272 455616593 772777093 101086065 189319234 57017431 647653677 69793269 26336000 503769251 221546400 8251549 741727814 428252606 295084821 521124738 390197715 820821639 447446753 963615398 781917692 556832875 584554318 6243508 904859980 424730344 146699264 602747580 270681806 534471700 396098355 778606028 90443408 490527237 36224192 962349233 225645198 177926083 875158301 519727785 95619069 908231374 338395154 668198904 202732239 360486558 315667478 827642999 951839701 630648923 47842979 420287187 820586500 122292530 524984182 73438105 675052034 195485911 715290165 713187470 93003214 813406380 120503959 516269759 899995730 633342132 519287330 622390527 673891615 176041714 505181086 615452622 824041051 244804716 526684499 116777293 986633225 888784210 157442839 752701026 423784237 715920744 40491659 957295667 418608405 785614721 976635235 240327403 191535561 436754979 605365471 930974509 502257404 24111996 959616613 196931375 858003446 568747661 651721116 439549001 925362130 755316625 231714308 459395719 385952973 316572348 518574001 240885343 598052821 346608165 755821817 863191686 860704034 172735603 514503409 622302832 492872089 634632414 797412077 601936110 386196575 635392439 923125977 207981405 979516129 361603082 209948127 741855377 66767799 245737188 386446663 203245225 330044192 209545296 23405515 375482529 442126612 294902436 862996892 47521421 977639481 438904542 151392283 230341777 342748265 615530298 333957101 405411907 713115868 208490944 574347060 14956700 662885364 187924392 396882489 801234184 327160104 255466365 385040899 4855875 292666823 233053746 222593770 113300772 502066852 652766584 118373205 868826498 85364206 125654199 837063461 206090991 676479934 46957927 820341426 448695485 270121840 830105864 692861798 519943314 435130812 429359612 564325405 591266672 211342775 536094600 297663685 142117153 979350590 656052750 735551058 411004837 178919925 921947791 585715102 901149787 305143753 931519066 197032353 825914863 622960533 156443045 322042528 438206088 59426398 320721018 718645424 703508661 928881876 426000022 527687936 858511944 850064451 825254178 224473721 128271077 825583293 346060741 430928760 949512468 97955662 993788782 543559240 662954082 727495818 19584775 468839020 256917352 961117446 219728713 223499248 268746924 822365482 226887473 555161959 43195853 916692561 502909410 972351877 256419939 47907282 82752358 946976657 275425465 134495396 548918429 924015028 362560897 107820819 772091269 600386573 520754508 999886641 742867123 842198953 470847730 742402907 716080116 635549506 565672380 9112835 82616142 458028683 263315697 716896093 811322285 234028030 343656962 501729859 726292502 379743820 157823917 808352512 416975446 742284670 589199473 88089370 994274448 373161920 785298578 319281087 629763316 606372642 405383999 372215603 239770383 906959288 351431477 815360730 277659619 692813670 648821074 36970651 252915689 656906485 71230004 35138672 305646183 925077962 272452317 438605530 852877252 852661223 529912155 968254616 881545352 302454040 762894946 925408293 4965982 472632007 473238621 360439220 520821875 479821608 322551336 186501043 23688825 627876245 963602556 114774780 260110683 418776564 330256330 940722249 68120340 549554419 298147312 224293989 269094650 31717419 446122965 367592679 415027417 88273 8932306 657933121 480291927 856729169 857370579 87179067 915729639 816153869 935012665 243862112 773357053 529955927 911624639 791453429 418264105 981866957 543637461 974144312 863226986 871474239 454220885 252956049 955404252 342319608 794436214 579791475 28494598 41893789 349033436 986627055 443839349 434004872 119422777 442510981 505363510 927969209 228855256 788275218 342306289 834003588 472965212 988334231 196148327 155677552 706393199 811402022 412643716 483274017 483182632 492313758 391631630 647493840 18198676 703503328 104604500 735195342 544724633 664671689 680193339 117873994 329898703 981453011 301975433 270043658 358732044 711215853 655745964 36473331 529132486 692546555 796985792 947969518 570681665 938500577 346959221 127151655 281089583 803661541 978492015 908226244 171128793 650331641 889673782 465469688 87246007 369681951 586546028 53954239 5579074 806494047 778979380 874712511 480438225 894158783 588602398 131425364 588478511 380577442 785419290 658576578 864974806 187394714 972200376 415306060 62566156 421210543 376367935 473454932 193695503 971864522 869619161 13985535 623013085 291151484 135813844 407439045 371818345 219117845 533579619 881645421 17632190 300817586 447517145 834718986 303239895 341814919 21068731 371906975 753792366 385782581 847506168 488740738 829158513 236289617 172420974 560275863 375257014 147056959 210074720 392666490 384438129 320466286 332366737 379144964 675547321 927879603 263052021 721561059 504979164 763376312 680875290 848471078 32468898 654169216 342748180 86941734 28866863 420078203 903483082 729167574 480631952 994880660 774967138 790607466 787612990 70603043 315827537 646844457 477306839 549135849 881264332 687288969 8066850 376849860 665960693 949923436 216266656 328639285 291649144 101358375 426480372 815110806 51442943 59029448 92534258 801278067 92844710 459875006 333973818 42813059 838769759 332327203 437814808 606559673 502614421 381554425 142207341 580270056 144537549 436047633 212897831 239078849 870278953 33976887 544912441 373771167 707618257 45644732 363121657 877056763 873373914 442273506 158526239 123024305 998482599 933034225 865778225 349416187 98534314 440114765 761634703 363487120 256745736 966798864 561502903 675660635 512855480 620493673 152558811 900975250 139899482 506914434 374596395 686607767 448428300 855129921 752886742 896327680 763883463 62777083 634941788 988375240 541120712 65434452 955355423 671668848 98278626 459471439 609556921 434855139 310461438 711569942 676114892 738472752 145954045 973123090 917667923 330189149 49062017 813603444 452380995 540320834 494615562 866509153 111816109 540358438 111081331 639952892 861659477 878374042 728332735 895743832 354605685 815540638 568111522 303747338 620395607 925568312 536522553 956184241 331390913 336828166 622360086 439409329 897530709 896556986 938672510 818814017 510564151 450386988 546369553 386443422 71980719 615415285 228697932 493857321 112722433 816662042 948622832 212287683 896448495 788227288 135371533 992355352 496595118 747472888 957091700 386428992 483053658 73340855 461930917 452629335 835036860 273690792 291460665 303005525 427556768 308045407 786114745 703231200 65553829 249200681 556396518 772788798 220226222 802769515 532286685 823707720 520690480 730383767 747051858 111077644 481490746 175789547 317623009 478203624 200857147 948059345 540118204 902602520 324180844 142590320 427348353 75681335 245301476 638564929 811497323 349344156 858528702 660752937 153099079 200502876 947652272 463221514 786063991 230592080 654113836 905566646 723011702 942897611 48324296 262926479 640892773 968653458 631649780 888612140 954920503 260311243 818740444 420254880 354882631 113408194 912040020 539689941 982064604 99201014 999137059 649655743 238228047 108814 675332534 930812539 232617307 791677824 319690458 44289590 173187356 144087300 138522237 30503654 358216525 714086812 210043418 888989793 322248994 433792085 787896565 376913143 970605126 309725072 346809258 645960485 124825457 62211904 287205589 330575552 923758933 982424727 244203053 486760483 636097807 3545605 457250573 86569687 941501194 57039038 267802053 670276457 573762404 427678937 784261688 940817031 190523949 646395003 432295648 491978961 257116053 295867776 244696441 661012348 748751052 128402110 903156585 780332774 374062789 62248796 468793215 852132069 209916365 719574551 392901476 392431077 873574205 501843769 328223865 890672948 161727968 601587802 32427735 890190078 558346230 731798953 988746874 656147448 817959465 263340102 313152145 258508533 440059642 684409227 885847128 816978497 721804330 169429648 932827352 178120199 952865680 768239500 519189069 501661135 249472098 440278690 139425790 570127749 725653439 599077086 391580493 92131151 548956493 427964508 185903368 943365294 981430566 646559020 621381599 570490885 790073021 220987733 917948283 922865780 140716463 127226075 628968547 809639987 990207527 431293680 789475721 708382797 416460420 402724781 573459190 533644191 425596968 58311665 454150589 695016619 706053239 752653222 911160993 78921558 903716697 248278964 619816466 537081314 279991460 412310183 206976796 717740535 250963535 80297523 694675379 858274061 10187443 275437299 860169855 950577252 770135382 364401054 703466424 950741874 59500 332951558 928454134 426169656 647738605 327889971 6560673 941418784 14567594 385941453 918309725 427441249 59391776 740470742 875274027 727203838 799505356 148153128 731512382 948433458 392255590 277215664 165325840 703500629 249918257 445510440 564693166 327913641 426530879 102912897 333973826 789138030 323334533 337153153 266052205 723892534 951095603 990443012 868136776 325229456 326642351 419339568 412214858 419624829 255113380 568356595 132769107 161158658 350531477 935429058 741416064 128616865 677985815 763650761 15871905 104286559 24709801 459097844 694112091 156355884 887629092 125353439 993593850 854957956 305990259 544150520 880238054 265138144 588544868 891913755 761019247 482109938 286991823 307859559 698672375 943431563 943146200 428994782 43570498 60255829 776948774 452587794 550383512 753497817 512877951 824173540 702128988 325253508 746895612 575623408 976146425 558873486 173378695 362070588 472937690 984040772 334804790 282892020 298054894 149391733 641409548 17325709 932289188 222975561 763124938 616644157 417391171 526989926 713234100 370009591 926280754 81765248 703785612 51354203 966394038 636162567 696489957 474700639 999739182 126158717 221431483 237981892 480502146 780990239 679876781 940228388 362891795 908866897 861694966 37054131 940585723 934214107 773314098 636957413 220691237 436465329 311076235 929504774 316803401 847905270 529467264 562982693 97383227 259334083 875242285 175343488 28575008 258147208 774766011 315536457 805578416 539200304 900970600 27511311 597885578 688229378 31729962 501970282 618229851 249786162 555912146 127424880 197063229 112257412 70173812 34460078 787233817 916404837 372909827 847173084 626728821 721557407 625430227 423161788 678688492 767754019 262830198 861805549 842879442 99927391 601518179 217346661 996488969 103268539 851521264 945226232 889668682 245496229 771009373 926577434 428487038 26948443 182598522 496071192 126696234 554786825 835092141 307060372 373651436 959787966 813609358 1943882 518002049 197232453 953332627 634044470 624708751 710652610 710002133 27311385 66723489 444564778 203294749 562755536 964737856 733884425 578145257 783370514 292811104 862311130 195946159 929597980 551593526 449236477 741078906 597737383 125834776 325566772 538676671 127638143 70255973 342901183 342517306 585818080 410098074 648829235 135122890 209377382 812261088 829290706 273480533 875403006 567855726 244432605 113229547 388483421 28142622 768568521 984982884 801258694 393744311 809699910 913211462 549493527 120052242 593994540 325271580 138485403 253342387 318982015 11009524 10873144 707696907 48337046 995580684 78708088 434584585 770522575 218541917 826375449 992315097 201717178 547434942 79655929 674366093 995018595 751666694 261024712 905343045 483668025 489023240 281054536 974403573 26685596 14819501 847159804 29082223 19452705 664053770 917070142 579715204 305812518 274015809 301741331 686659190 35010728 365290945 752268640 11667053 45509379 336840109 876278650 890973583 858494583 972718762 875043117 869811642 973654942 364548973 664716282 693960908 512914381 602940769 31856901 172787976 164470646 906717020 667066330 931686443 885545860 468304947 218565967 458629075 697805422 346372163 774884098 44729577 783588066 362248528 845444891 379174472 351294425 327256955 211345909 356974717 451908893 273097071 176029658 109901844 603369386 378012121 556398479 409057943 251980076 622387127 703831421 759189340 389693809 954267681 847496398 628977046 281754129 894501842 679547606 845838088 212744332 168816620 301573328 255278814 629662229 793516017 173772787 364272433 382476654 314359811 90123068 230383041 26922719 778220316 53929876 905713303 308432830 874846394 684182397 745186636 396289971 179384279 274214373 110710787 821772857 339944683 547115815 103707724 936393579 309589471 393976726 383346640 981978347 984700663 88828465 828182006 307466012 661811857 390674486 458724587 957920895 4140959 194566022 358448188 139345920 301930993 533276028 4469947 740310606 135140498 10748744 253581024 988767072 472487798 355591156 692644608 686952873 379482851 162557900 279777110 476484466 396222322 409319964 426731722 847985066 712929690 390721713 711994445 563384120 154303629 669724383 960668347 728283801 733336268 329802593 683882555 190115248 994435267 159194625 506678227 522869315 445283033 8961761 926858938 78838967 6770601 319638471 221808348 73036896 509981334 481570391 557385374 657600396 246597857 134159252 780090825 492389672 560422943 222397692 94433794 639314122 545096105 321004955 831935386 148740429 67361884 170278049 996491151 493284166 126802319 4863445 197380668 80985047 471859782 44693525 894832609 970768244 896367776 922135296 420583899 424146111 500501390 840046926 772305839 378144815 272137377 353713301 360750709 618531620 862300781 386761476 266944869 826459480 476705816 929575085 691378413 136617998 841019316 991711246 290271080 983544285 886364535 112059723 636263018 759954790 668571248 876209427 874592472 744367941 294167865 702442662 890347289 549995854 954537764 810034648 756441544 44238755 266994633 195142780 434853408 575464717 815068490 774827787 580616585 578221916 422748688 360218161 678441154 394774381 252973943 563661884 250406947 290078054 648723379 147004003 488342160 711133281 291536649 51063912 91310242 219145725 252378369 404320970 333921799 913659536 176412731 576338491 323031445 430493902 285422662 546317506 260452686 38001582 744764123 755984386 693951886 110290148 851391362 227540766 494479611 5173286 723409960 413847339 356257025 40707092 735899766 468228145 622246290 846684755 817736896 109795714 665406893 282763073 482807641 141398972 266199601 517144637 639489474 315027038 393058376 786749076 855594224 974873146 389971760 309802572 788818245 658067752 963518280 975209163 949478016 649498640 382110934 660141980 822211074 840691273 571704316 795801042 423819164 650060409 631430066 776501586 166152110 57513886 465806287 739332094 489284948 59903588 572085036 409177079 763714527 17152384 414666679 789829719 795365714 866205576 505142426 678824756 822704923 844401512 51017639 621527039 119860704 269661913 326904859 1943260 752446974 187132266 497932516 186382690 174202902 654490470 560243564 442570143 784792024 263321942 39379116 314406930 874700328 988430242 695146962 911054349 945517485 960046717 314412308 547732532 902169135 387812532 922385296 725762733 894857696 494731031 70295106 359921486 840279823 257835843 703445017 515610546 696397161 584087644 372407015 67593432 60907151 409979225 121726214 21879454 348390073 715090854 140025477 751388678 488981900 564175400 257159473 738830757 608613749 551205080 530411710 616030534 360331074 469347473 683641927 461544965 762508806 205467194 47433268 982817864 11838019 985614455 401708093 598927254 492686655 830161202 532768771 844277348 645246512 181319198 593940011 514592178 743961799 168916473 925612995 883200713 576757265 691129826 441540015 66923475 661308179 515481399 978467171 271197881 220868867 45010484 309433421 171850836 452108751 971403685 624309308 575504817 878000539 488160877 375803344 501520219 660093265 807520213 745458502 209214957 727611109 543552444 952810435 189792079 329035281 688287010 815758968 355637583 837978886 184969007 679207784 318052435 783210430 762091781 748656902 601468436 996560573 645833327 921888874 823279087 728877609 248283032 615147477 639917827 903530324 139551923 72391855 600245956 934250504 424964385 375401894 472530179 211118333 383925847 102823875 443128958 693813971 930024808 822542009 81016574 109956063 294895523 795238767 873290531 438048557 751942783 818701290 571493970 537638141 877867937 932900160 865700642 113746461 132543531 628586588 915802317 652450565 609719819 173947127 469606874 589117087 939126334 864105328 839556408 182194989 881743167 538773201 639893244 685072132 16108155 436902564 514631945 937548033 871708459 125978381 289136262 672161749 175361866 578784756 806335318 991690732 869860212 654134314 780176729 518044257 247875866 805179460 381649645 886611201 100117550 65080307 975289559 468219403 994113738 437342192 710553295 97470519 797767504 644278922 689505967 832114589 98136699 426944786 398202285 701368024 273280664 674300898 546163437 118867936 474645814 71180007 511688011 509433957 153227735 917086590 204841167 853893468 60912049 886819266 609100696 437015000 947147086 492612822 755072263 936678619 6108142 867563976 482034853 885591431 292193652 883513488 819417615 651734310 824116508 953284140 527644053 461068369 412238908 195543047 541263939 878528324 9201477 664993950 285414017 106638436 83791891 773371826 33242982 71182855 3414798 540122615 825802385 858411773 59876558 108533038 89919130 301188129 547589995 432669041 319995997 821558277 32670513 604764423 361101864 117147276 292851676 345716383 355073220 168968305 697004401 104558135 127590038 156738005 57985773 170292324 844252224 902378546 435178865 232120464 880009170 577448023 897504378 468794685 34055196 942311415 724885410 667797422 566417074 979914180 36772641 234806073 198801786 151352181 378275689 736067500 779347119 186722388 766732798 49041309 88066813 216524603 975488060 354720248 426089054 838827087 441355311 27532936 998893427 267784814 202686699 383212576 263565913 80759946 176918167 602792392 309600141 937912882 235873584 745459882 485453788 945111519 253535066 226076097 454350977 809697061 756769573 147854487 766499363 853586573 455239584 690262635 258211479 946717494 130028108 330518229 769589928 329869586 157879393 739881069 532821765 240201077 457869689 434020454 675938173 227180412 417459237 112594235 557118306 372922984 840036355 194441690 148362359 523300009 462726540 677332318 829769996 791884340 912208676 643972186 561611820 141777988 927038992 359176951 365411726 984917000 10652533 681911662 343683305 933847982 49506726 130761966 6407479 234052826 514882839 484756541 998558189 1055388 602652639 981083580 968709369 132960824 998797190 640670293 546649149 393117146 691867852 639607716 227601084 995817207 851192886 165240150 5390757 78370955 721296573 598721213 886254165 697818942 45652586 456280906 38991521 932004554 63553933 324253085 160491261 645302750 439544241 138288889 542527257 451618344 866908825 157686501 713107018 524501276 662933332 144235196 715493306 63153178 96592705 249775918 72956567 658338699 735410547 849989395 649224952 54439958 794093760 462565109 480203132 280173681 741499884 544374209 896937046 659769243 363437065 246611724 17149738 922301566 309606564 32228785 383620060 462287203 194839470 809701983 505580610 283955375 734569694 576937755 858131549 445904101 942066884 741811827 857843970 862070493 356923480 503907642 664760498 654420450 315661519 304727800 532803931 267844734 990020908 517606383 912968139 853341156 223640529 399892512 268495238 630334546 329853086 38831744 398999572 780612996 236124119 39422660 411607128 242149862 768687508 825464271 553339041 813094376 628831633 740422198 808569511 341222218 329527503 574816862 839790640 772293422 34079766 303174701 794528001 783413146 528998061 512904132 137463972 465156187 251938666 196739972 248276980 859660440 303230838 323227544 879681753 89059962 253185189 456795004 699676895 376235411 88006939 360809100 470959656 276941944 732812871 757044786 327655132 388295581 528650167 780487023 366441056 49540265 369764308 313972273 904830361 508019585 375715877 728177922 295800350 606430153 176422246 563003235 180924539 103420044 17549416 702057684 130089360 589532338 807698643 921758493 224529300 172343834 19124731 798698302 207705119 144466631 434389013 654417110 156172516 844507188 11547304 50888257 418752026 418945367 872509404 614787900 818131237 300045682 704770898 530742754 181513776 559209625 451456478 419774669 472045514 941534033 630324974 281420033 315941132 814783476 951561238 984979494 757001527 582352236 662107591 52037239 172436243 960020097 272394459 560564855 690311281 313587136 362137242 522114076 334628602 229777825 65539139 906613121 829929 587197187 130639894 229886914 758767945 300525256 770196884 178330955 823226665 297797655 313984891 783660827 977922670 473917239 178768366 109699723 113900151 309252739 775795485 329755442 985229346 340001749 845932351 419785405 695987448 796458115 936147416 873839555 355676703 590766268 119669467 53012942 910869225 825097223 471351363 663045051 138286532 43755991 491915601 433650760 792712433 363513474 914450886 936231566 368869287 805137828 239640907 949983761 118222685 878547756 590642154 96907629 260014702 13628655 293736459 540893757 16547273 219264086 624525406 167522210 308362465 45185212 178144523 402791461 841770401 316310 55837137 513999343 286578550 617588656 599579426 270361433 941212190 778385296 197721571 158665300 196042485 130445854 357896623 112419040 755550232 750205678 146832677 304929384 621066062 82276429 581431840 958390954 280291020 324511805 542460738 297579570 249873717 249183931 265361890 25051043 340481824 28139674 992661781 765621687 963584728 557964563 821460604 730280331 538600624 275606613 220882487 858894086 130416514 68852819 11522263 854521108 813904585 972781679 778168016 352476993 768855437 569955586 670335588 566340692 428457651 888606901 893350447 646835145 168235909 369617802 970548385 402591469 847074972 779237144 397715779 649662916 27005745 749820896 671610056 476414370 999376900 969840496 370422382 304162944 218462204 294710522 924908889 923478992 963127114 930561646 623791592 246288367 704849586 538031755 346376302 199336010 308679304 259192596 326064862 403811341 948189540 499918649 251488787 809510455 766702955 170833393 812711009 982269504 980088217 884053468 217498409 910360263 345852855 426580950 749295576 427412486 135055978 456071002 436172299 647663576 961934865 902711080 634530 185938774 78912110 1519123 437710854 570432468 711769531 427893463 107950274 419994991 141750125 153840782 421728097 900794720 143708066 560993091 936375309 43275880 154138178 481995318 117778000 456717058 370490237 185475375 455281104 798954560 834765164 268371357 946852941 567955992 681055712 200144077 598598676 924300087 294388380 260534417 186009789 151334938 889150671 698579764 508890567 305835678 385418063 404742025 946016001 899738011 597331685 522045954 277899730 260491916 588551611 619006994 217650461 463581822 474157095 12243927 977000210 388248581 299570348 758478641 261197177 231605357 914675585 555696071 900300693 78374028 952458924 110267248 62465254 519157464 694983469 283448176 133717419 608148587 490355582 394795714 352564095 296088715 776884541 433992603 483568343 306847116 683061440 461257194 582708361 891416715 748599925 992763821 138756080 473157141 274519902 995947047 103507477 817641219 846289316 386117343 670305784 862357362 929730862 242888336 50151609 441699324 459768106 274141246 245473504 829852047 826424345 14505648 192733272 260821024 368971030 231444338 853097582 838310178 81891210 835420517 7046339 634774639 917243886 665779847 455814597 229102744 18309166 43029644 393633207 171701328 861380844 175512622 565914407 563930897 282729938 763163359 703214796 858383556 961988650 714492952 666448377 943799569 692847050 219939677 101837516 330085790 499906259 205491872 49344297 867939762 149547842 461029149 375625611 768059549 593613838 464171736 784188314 155262059 569672815 26190472 768863837 516615401 326999780 236319938 158804032 900493860 671964821 606383019 382926609 988089199 445916230 394995304 347049863 132135826 389907147 258027406 291049921 883855629 805246459 307146242 1604440 893521090 415333917 917059488 89102871 244381909 636956048 206941763 613305349 552081307 225691589 356512209 112042737 65557726 658764774 352791759 322145127 651402708 831276769 881175560 655503532 991905715 779727976 191607170 931677062 135475974 656548840 160928203 350407639 270266990 16995 215335107 556808002 324071705 131924339 434714050 684305414 137657529 303380578 70249477 313646343 779229030 919500775 167192775 362494296 684750752 351683523 198093128 853625720 227520727 902071948 824401842 265870239 717221306 139597329 451352608 563790565 541956484 766965341 199019071 321355228 617714598 47442694 732959112 327697320 889220612 361039453 272741481 832451429 380971347 180011529 461723360 116938368 545304756 346673233 481056164 599329566 315128180 496355455 201865428 730495396 649001960 420773081 688970055 208107906 122740023 560855233 140914609 661521258 721349746 169284349 621831366 708249816 774412747 446603139 138955646 238531444 857419084 225583083 629902884 900222540 694013370 863838623 92484236 232848205 69534006 57526918 559972665 782803177 305761300 112076898 796711150 385595752 675050481 117172563 608120000 554558121 785285696 699099924 922143762 102828008 396883685 30212871 748482664 651258383 812034029 338680338 55984622 21251167 9970602 144802801 851872691 30811555 710623457 393947852 5040420 43607431 73400948 579162886 622485767 241861398 545241326 856825167 31871022 772805111 51221514 834817705 342105489 635977172 685070533 22023593 885380343 209362367 275435431 758894748 710706542 661286682 625210035 770064989 111497682 494580033 500087258 764369519 198412054 927633828 559665129 630676621 117937629 738067650 894616208 645229492 640478492 705390799 556023429 857532111 240137217 790376556 112144433 320882891 897781878 632830740 991090491 993782226 526547569 560474429 689351185 612608879 154351891 554198631 50690105 928065226 659912135 50146959 625253108 725129189 560047688 372364597 931414045 736884413 971110917 918176697 378184240 652244394 641474724 968093323 83520580 245740024 301525510 757202803 184668007 549107226 787907969 852000858 310020993 296206493 885353731 631788358 554276956 397313999 720148819 220541183 519099335 911301111 744725183 91342098 918292541 733317932 770405698 617518385 686600603 300968040 679003670 759206874 96804048 360675070 271789901 325908280 759216710 745234991 481284885 748480749 985766469 782962318 575257533 857423760 113983477 500082185 431230309 26702472 951479530 259873488 508876923 745690209 834586338 540297795 656887298 518349995 83406755 731986763 771419921 993703973 444809869 406135304 422414465 930259097 24293286 882840731 412040709 955744882 84882304 428791440 462951833 223943215 714202147 525647356 641469262 389137968 255374430 164985732 885616285 329907746 261743558 955457283 87147092 140171734 800532919 529586849 27560739 974180977 426575023 891023939 33969491 854705699 503992405 61765134 52054417 977498382 928081209 361328479 400680642 587945561 318347905 290555267 918780107 468730698 73132645 577644331 423624007 791665716 542265397 412052072 882292754 321531106 540457278 577139822 962240840 359849184 187391005 891566393 364745462 828119263 921603554 677409283 751026707 818932917 391778469 824660917 48869377 630201455 272381541 193544322 712306114 763612634 834579465 813152129 263046212 323535962 254453114 699230453 327612085 944919991 502280273 880254064 177449927 841447918 537862365 263017357 746391731 31142209 977695536 599540771 251095921 931390288 474645476 409528596 238323902 875862413 638583242 466891813 296862270 230302742 576707413 408933703 234465385 628928240 635355845 455769732 907967029 94519512 126800938 358082907 656815330 838243054 287346865 285365827 512650168 583771975 441786753 253984598 339665991 617528971 550226701 41334671 689305017 494935873 160922460 575059776 596312796 306628801 914564196 266038725 156420054 12778679 808909001 743649444 371648234 529274203 749399489 511141302 956169654 7140605 267036245 232039803 90722808 418479504 703571927 741483241 712927868 119446603 670360815 199336053 715749921 23145735 810121930 627722924 420737943 124598548 8110520 953186173 58867829 891798893 34325255 654438963 666881666 489868355 239043659 506215223 503399671 64769365 684742129 968007631 536716711 78534530 827181882 936758829 406545492 617139084 757540214 703027485 391032949 606580106 695785662 919163907 453776912 319854183 17164160 573585020 559558738 777696387 551470565 318752363 901842581 868569493 75079893 692001453 517316392 665804725 449257458 167145196 877665876 571446392 964337740 674403784 580028609 472399535 244437386 595292752 222547694 894289532 83179536 43643593 910019566 392952977 758853431 423887540 829272020 192144476 262045959 166554425 246793242 235468190 184953234 738495501 642101801 916822444 710173623 638241937 238483298 11582966 304146931 357258022 593454374 392224239 124841127 243610697 353470804 636499022 262620908 774489076 99684680 382935113 781723571 526306840 378156764 151286053 667439843 578094793 322683590 888584232 879956606 167797782 279588005 637610811 594220902 635876635 221221109 987560770 656538427 614631752 721473107 541753641 490145399 705503011 756033734 585528087 624592548 21039661 42978737 624564232 86441865 748620308 514943267 754974902 115448157 835785040 8031036 991852464 370460597 333092236 901099465 207675188 220375564 86595816 619189684 783636716 148523361 476765032 433313322 240494389 766208072 767605797 983452312 998431164 687870886 15022518 666807102 702940802 662389714 3462428 984084099 100960334 723408170 648774675 277312751 304827956 531906903 920894490 410280235 591383602 609873871 541203882 950671956 250466129 540644519 550358843 926485779 125908795 890346330 207552335 307437944 945193022 398223023 239208421 317447075 591053557 346731257 327512722 543425587 21722292 46697476 917238162 68949124 390262697 14154965 42029798 799986105 932212869 979701708 715967754 242685262 493089104 556257010 28274516 760568415 485887457 533138989 434983332 237389233 584782706 91148908 497106348 55404867 609029326 752649681 62618503 440958954 133871825 743943794 531880217 970138552 123253115 279518241 423363620 682359372 308184640 824366911 831436243 520481689 286461173 647112806 654467900 953104301 363997717 800520591 373963900 260763254 913429326 829470342 459451774 287973711 356691247 429809211 402638269 574734158 375124530 613060695 707016376 111416409 690973147 223259632 258606207 460335825 278411613 180773377 175207772 457355647 146906614 859495974 997827488 957238788 875461913 576915196 580093470 378004305 193858761 476351200 312579542 831356097 786913130 605548730 72661696 542446327 829445037 785971692 626549938 992368654 803562880 394232783 407100257 766811090 531917377 608882057 949199445 751536538 464533729 890013502 362427313 442540831 775400647 290760263 849195165 123539102 373590647 552113255 137619211 129821750 828617042 740855787 171630418 99834096 254955949 742592351 902812389 74456535 399529813 949841469 188485909 196014883 69484058 369741659 609419586 481976544 432808810 705449350 457320266 613038321 559392353 507706630 722249338 378758809 935425957 31401351 589811678 860698065 693546911 895165897 836193766 666745977 170715367 576089068 41968533 55692120 222572042 76608801 887586014 313166722 860451501 32696556 17974737 818173719 824360319 763017581 791277952 184502640 759195995 414932067 972771544 955032211 953854831 81856488 684003873 708129893 558773652 48969107 950531011 980521876 889566425 528036323 306872729 705317840 63733770 391878554 162586903 634970596 614663402 514859983 117518633 642722385 859413451 94689330 637468761 694822592 76019311 535876792 2148892 621793023 916893826 316074554 991996311 677356080 314564569 743377763 980794493 788406934 369500227 316152500 630934236 71278234 526070851 986084290 683594120 560311688 127454175 941662736 60504082 381195117 786240485 830959504 682118926 190254373 641600499 836686046 394734633 368089363 667105198 503378493 983204467 548380666 854313084 436404390 192741972 182545856 133089647 49628820 771404096 803583451 330931179 768827119 930158103 282608550 530995634 924720901 283122749 375202518 230426004 51770273 339457168 114321032 455509909 717799327 142017792 503862619 736374993 634975039 488401043 655627430 592069001 621767827 156645962 714408393 689059867 281091260 857436401 962234662 373483493 261252505 164637543 811042721 468243938 988148636 641076870 658332629 456520849 335349963 666398043 866057887 252132922 161545834 740751860 482521231 448620808 981015827 912229398 235370499 779939693 935700168 664880733 406556827 177287128 809119683 986397076 655435965 277754058 873646885 175433912 946173171 279564601 982422123 670212055 574248094 771358656 279716379 8723947 790317975 419746798 364753112 214210056 605293901 85713468 909220168 428384914 109509692 98064855 294025311 339900230 434228053 649056055 95295479 445247368 500492082 591800437 646746765 563165906 932982279 341497418 573585288 716512854 897673424 174704032 429722144 512289101 491840547 499864087 991511487 69462585 937543365 667198308 511066030 611426564 982289386 711802026 964148019 435832133 585567497 357174628 575671398 822885170 937028113 453854457 560190349 196131106 185443570 956186873 787612041 146818471 526954030 122630750 325123679 318501719 895427245 610598672 336587558 169709058 631449638 570393754 512412804 928759609 858775033 120510313 486918322 710042461 995672809 623344216 149565349 137886787 526427195 66250592 761848076 29067542 922642678 766928228 718352873 877995753 83133439 911009725 502930657 877548337 258037487 14422477 966860524 125945438 72561921 271308078 920932191 333984292 311707218 112653059 515476388 263654201 554094601 704231337 938213648 977065074 537905448 572432695 606814568 499214155 561842226 497846075 874651566 189318296 221071542 843034741 420252402 975801773 567249798 165446913 992848664 550955577 855512 981441566 453796673 541184540 624500295 801098329 402853603 22580367 517561142 227374474 181071069 237122485 97425303 884588083 946780273 212944272 835087443 664911356 178155017 288958312 894615323 140156715 763424851 412436750 718516184 34723330 325498024 768414412 278942893 677071588 706033509 161640484 409219462 504967314 684775573 433910760 315175030 519619908 107342486 1446997 601275126 456742521 36904938 891312727 675085912 331425250 825618789 709237054 332998560 58758843 394552457 895043387 354264373 747499756 607587373 828042418 126792589 98592105 578669551 266664253 359581804 951724242 689179431 847913669 693820487 234761079 990323281 243808736 271991546 274886039 955428094 446639935 185003051 975576198 173423919 173196339 248186887 415297526 164916544 799842849 132076420 103349579 148253778 473665877 899577535 42162144 7491365 250437989 249868028 447309936 968582914 808936477 24831310 720737615 388342713 751312111 60357605 721277491 357750607 547312220 239061728 155574360 735746249 196380068 216471903 904962363 385165390 130336234 40955138 909972598 717878964 199194117 354772256 510600530 583485249 188656737 35930234 832943689 644630464 158750491 171606534 287782946 317452092 277167716 234428293 359429297 889531120 799832012 35803701 738265136 51603108 874884843 688827244 700890865 135176431 500627553 332460468 753223744 217578182 88484107 853696515 781972342 980260026 48484727 583867881 593321357 491580671 308069717 60746995 453522100 59453736 587115045 326027580 801505188 535648103 134756716 479737247 998267268 163268458 974514880 31300856 635072440 345723936 463340771 912506467 368098893 483289262 754199731 114537980 519978049 369751949 745667044 622605394 275593638 465644428 594956122 768466926 656575024 287942701 214376916 575466293 541698725 537880902 838764319 174387019 622210791 863218015 798281688 556368411 348527048 964271345 921582365 927654683 516626581 265760517 709428348 142071069 526872323 892067805 844204349 684001010 852523853 50590203 5212451 307172545 263847779 645638603 705205928 705789094 694912321 669027213 205214694 105467720 697818129 727002871 169227426 443280682 860866721 796070585 83237584 484733711 506835202 426641645 888720221 66660136 623625178 119776621 532735149 429831120 542939450 532544868 800387735 408672289 321911969 722830051 710836587 477373862 998329074 452380815 319307443 761944722 965175438 732672390 497665053 63128829 235758340 798937187 312017831 790476420 963103855 905937261 655650891 953048001 829799377 311987394 54709325 609197989 910208767 995134792 652782162 507269284 545927660 849779059 205688201 438040433 706445663 948856307 794602544 220852658 820397041 890115267 580659632 822819785 776053073 580872356 813487218 491914848 234953432 910732824 805857520 884098970 69611996 476910840 118901475 980487047 804615823 938154462 938133330 643930271 469813118 53142293 591641425 860228121 62174868 139561825 418834845 46117573 536204979 856268042 699631550 51039017 437730080 787266938 964349989 543758034 964895831 195545579 643189947 752278457 447965041 157347977 740375465 134679135 933082657 219373506 818080016 830614134 768906485 262146076 869882540 532723838 979602531 136745153 798665801 145392379 141378958 729099936 306515329 773517255 801821231 583915039 451982734 394124876 18039073 898867480 48910307 918984091 761035747 20551040 913405344 523287266 836796941 908858508 429728568 411986008 490541072 513002179 276361230 63216301 936132021 326511442 562616609 105454072 865961823 376844693 110554862 510085037 636953321 740452293 672398382 398053458 807173072 202692709 60666013 163095532 203013553 540898971 907659937 727686743 945658706 360600645 746520816 476215315 382515539 739363413 129532507 743195400 24553076 826593625 170720113 617974853 1896974 116431009 856164570 44436348 390655495 726216687 328297773 850223367 428748484 830403044 632260843 865675819 257333809 48337709 967728379 850285741 432808798 517497910 281845165 45973405 436644686 176073924 737276648 958035834 599253965 910168079 540665196 32406463 824844447 735202680 133768642 844440751 951459160 729640802 668568967 812748340 34000395 731132997 168501411 767672545 87407308 28536282 26114407 450681385 650685456 319774074 957129603 509586878 808881490 976550670 947153001 857753600 8670653 145418861 379878721 294615339 231047077 768217310 41756462 35526261 866644372 315686023 6287343 515419357 469041821 229948152 470356799 680999331 411102351 846535119 762043288 127485143 986209800 916801773 928242360 147272648 974628429 694962898 790199930 708996685 909269417 259802748 316320784 143551021 154794376 337345753 852100978 206866911 774577511 710504646 278464051 290695435 48245110 543398737 649878184 23826031 942886634 569358162 963238157 753937946 228595640 571314748 630291922 532006093 530793624 271026259 460579019 352742816 547226562 762983586 916683233 162998358 376969361 836630790 86588583 205613413 491397620 519475606 24675776 318872957 461546138 631771016 231526760 564306842 781365373 788143198 225687699 189593979 963038980 957839316 928853141 467921083 337729147 733606685 108589647 403275365 768757605 657329377 912335604 592460406 619365244 286142576 302289932 263935099 543142637 134209761 814936057 429551612 482039084 15229363 847821136 165750294 732986346 743615765 763775224 466088112 342918685 298447758 90362106 608027968 253735146 190659107 260655147 528888674 146160923 778307573 430345154 894943809 208038065 331269337 331141754 110634343 24384247 641545776 323659022 305453679 211718480 264240422 490117352 431695607 14577172 203028834 833106913 347691242 153059549 513532737 644745816 583805637 357147647 40365534 859708930 833168061 433083008 734218467 966100512 188376756 628945523 428843976 654873728 159418839 123678614 983895629 505554178 357200191 806483053 823446101 246026625 291369492 444418175 769691384 323505570 639950705 98849228 542623154 914088181 13112630 798976438 675056687 233534495 67397821 860080488 925545207 853718743 49894496 436941827 443656205 465475301 378664351 446628405 888229445 981490679 571166905 441665000 305176051 798106298 649712418 181435412 839589625 379422156 695220105 329099555 906823696 815320615 125064298 353936716 808600376 39152739 471317737 78413292 275408516 939665950 563598291 992605617 587006441 670529995 763046822 668528929 923167221 141944877 785498368 825826246 595841886 700296647 503804493 653604993 512361120 568623181 692994126 422166348 448964816 299849888 405415844 974494834 527828057 16338883 708106750 995620168 456216752 972101975 551772197 310101924 532268265 600229235 326181759 653008109 985865422 37344791 319359176 108420949 956703997 407934325 208506861 209296295 873497163 19723736 28153846 146072970 190392646 203922800 86053670 941065837 149817849 804911871 196926189 44143414 774710884 209288002 772577494 168199227 552502221 258232588 934358166 647462499 611697852 661537667 12596379 255831348 136586611 759882045 147310349 505220384 675789155 441079490 558933759 643383690 787479787 940265447 136054786 252658023 98289802 972271356 98191880 714329397 743498759 76420431 272875661 780009755 738296330 522137430 208315908 4000343 527495849 961263711 542414988 360317841 677656522 124223407 847278111 690638032 134387046 119816134 808100246 583071024 55025514 25904711 341970574 418091924 818026499 161527209 873138092 16146960 766843768 628952020 314676846 879800019 177397981 964221338 743324365 673668492 223357424 7573267 276956599 474334630 720454176 433836728 198949335 120265685 441665502 110921795 875941242 640449947 711486400 621331726 282527983 132324803 353281071 487347043 360071596 314344115 612354618 95100828 956514986 5151481 350183158 160858635 557096313 334652023 160749749 978677858 53566177 111786230 731758938 94149578 559829872 170696731 857105287 136770065 325545362 636451574 124371515 868315793 937684982 723227375 993661025 657947971 18994002 514477947 511871156 995465343 45091401 885944976 529534836 599196014 735202520 468544385 866669519 369953215 727657724 361508021 90466819 240057033 740634917 252696225 522862319 213299481 104389997 539028850 805929550 558908484 921505626 275487036 903690955 311377451 153755229 283679920 4787661 478989771 791203031 801881814 461142810 430478682 41248963 518204019 629348743 802760009 216963304 927767986 117168967 657018367 758682097 302913734 25468285 245057470 805997227 291509827 954013122 50043168 304861757 281357535 282347969 480612049 421341156 927251198 156413739 682912239 261547874 832456157 480642044 501891362 655595836 175975674 935261944 502222648 565141233 58670557 993540460 169713177 382118897 202120699 34520599 25818280 468501496 270447845 609641774 563819721 503121708 854765863 576904425 966018259 532732407 34156889 786256059 55435573 359435433 378136016 55713396 238212805 798195080 65006536 8185582 415154244 671649892 226451631 73206465 340527575 987451201 881417691 201091975 126937146 356201740 496671375 561470252 162448973 193982915 458640299 262985986 423059011 401063714 584570061 517296085 190284156 160077859 960286946 68734831 526566508 35349146 297927420 917736185 613644764 463970835 348443767 321739070 668015838 8925287 695311161 913209287 122644281 866987191 93367385 40146450 464931171 453133840 423837610 685851482 855819919 241420919 42426085 880130487 999578966 202986739 707148734 569131373 338830939 279263791 880926049 120893786 255466218 829899999 768806242 983914679 222443912 40321429 625704209 522006185 717909438 470597214 513577011 683280881 549385798 135403203 786387822 19470737 662069276 439793464 265887738 710698773 629021961 879174102 347963368 710183510 258001097 222521878 69093919 970424849 75556947 364156657 787889828 197716844 1110238 946954178 587470952 261862830 243833813 24831709 550608224 808132347 793244193 50634003 243520607 987586990 420615383 96213574 755882387 454322010 80275178 525880789 650140821 261680863 698752009 565688628 394508268 649005172 754462551 888387701 240752078 799061221 69366685 137050585 158370271 436850947 632821879 101574262 531198461 336355917 340585500 589895239 924786173 574790705 164881315 519078473 954493935 68282837 369226884 950258470 981474498 443178548 396174655 548690110 86911057 950484871 527359347 622259673 728654723 100829750 141452658 711613813 407427636 149713717 708995175 179388350 77877230 698441010 313588255 299658688 84053827 659034703 446388930 242702959 166729377 13926283 682139329 267305228 632823762 811557800 387067524 463772055 210333700 56373439 386530098 18990257 24764466 64818962 84624977 716566457 420829493 246532433 866799471 588091011 676480390 58137575 693137298 629014109 70582748 768541056 896711555 376522319 304088688 464522258 629274022 374480742 454340137 228432686 178474097 284615016 369755728 78911301 508427514 794299599 122267672 393051352 4817818 19907325 912328323 534990870 75104851 798979673 362289456 542426804 658569581 971110559 34978059 748512758 698407910 89677573 454575480 154777153 409201482 974592771 811167139 78086749 316866587 956694677 88833164 140441526 12591655 347256935 227751805 907791722 184770291 559604911 738350234 32674215 179204626 21847925 817383275 557538482 950353892 732174922 389172570 128387218 529231173 633120688 554635522 508949009 628838920 392125476 951143380 931655484 696165367 199653503 438487145 411755283 227152576 53804128 719659938 37499645 598062936 885798974 952741946 734412592 176817646 96640631 846223742 224245679 155212730 834303458 595639158 825740228 599775262 390997093 621416895 496392655 978135077 881393008 368615771 159763818 880200693 124517801 128256909 74235585 938196957 656107242 200205709 102432773 114946118 655273366 752447026 819880494 474502661 749704931 522621085 229089274 118689305 96221541 302592017 534219617 994396029 365931552 435149761 698686413 253705353 96259177 619695583 439633695 690188757 644945287 855144402 871783644 167700497 744032951 878065289 746549738 128195207 558444297 846517249 754902315 194468254 777585287 842858769 22027707 98751479 430810643 851144394 892640199 913315683 99118949 461509485 621551475 958355980 136296764 349263384 965216872 888368844 477012832 752514141 617449312 905050158 966496640 814333699 278229094 406182973 71963661 998311246 667631148 679723986 322922758 712956054 239544772 822270501 106420269 514606834 165388896 197095372 771051677 426894503 274082443 3210354 747730793 921040162 601138521 177929121 306715972 711793186 436166259 69946191 644270005 477654498 923392872 901351412 320973232 560988224 320040245 516614678 839177000 583290228 552873147 507211609 484953002 458163721 497936445 281325843 7710046 222176711 615555346 836447593 506422669 348180760 597360534 462815457 480597358 721106120 253448107 821266720 584898224 679388594 109948290 270911552 491120184 285587783 870907395 836895094 253649985 526183883 68430983 981648210 297694886 42216655 500753005 418361447 730405628 486114952 427288494 99014114 58124411 411768897 517036328 87320055 250492367 874884891 660251078 184516331 793840487 53271893 794303367 528697431 519192320 843633967 805021849 369721450 829522547 489956633 23368726 895030712 470467211 468616204 628320952 623412861 277816299 129962805 27301598 997874549 792663419 766973646 537921765 509240 323468472 834063099 329360447 300241451 996694399 369031842 216126994 527540994 697040580 609529634 22092645 122182687 340242321 834462384 514456549 826067423 851660264 469862961 287590111 621131660 609279030 930275961 285837228 895812154 337789607 439950244 363595888 920720846 571657979 432803693 53507812 712264169 714724678 83185439 280954534 801255618 146845637 42567717 402005153 831624495 511010607 766353926 146024377 491316198 630357891 792903204 187015974 811455955 611559495 650838755 252712855 733123222 967692373 212069169 306556846 771187483 516762193 772776034 468251969 141337162 206333537 484297745 880342939 665566931 485666096 63410311 51653708 598173138 887760367 690750337 370041640 739913406 111391604 522254023 339461505 797885424 428919738 372231932 688537911 187620165 235122655 669814867 86109358 776248438 323059330 606209691 461527848 243305215 211166383 241454536 527797521 468152889 792206542 484174646 210929344 776265152 272137106 512404274 577118810 537213171 419713789 165886564 606416043 307315944 255727642 481727108 273277682 806263873 124343287 914591531 879387392 21437309 217621770 24386462 291115850 165010256 83028830 287194470 815646523 982788944 238290686 482794415 395471957 14069631 350265194 971213787 422279685 929104770 483747134 111156640 924436011 408655809 969410258 747147058 847389615 536070301 644818154 879105937 552571257 686482587 917730325 588964182 771986313 450666333 74696285 924182706 202390430 240254422 591530561 730372300 719251292 819045410 508462941 623064631 868725780 581126792 209002439 34281619 595265665 405385567 313986986 33487131 198145960 436041576 442870410 529011241 136987733 722922337 822522368 982953420 885707177 956908690 328875807 544870174 267761295 614304964 182206538 719397277 180615063 458286891 184671840 973010087 861448551 972289828 785500743 878298786 812650907 31725680 84542971 232609506 31020006 30147905 537172345 531344312 814803775 593461738 842670829 88136953 177528925 586373388 166653033 984010546 830288921 361304228 728598422 428816620 705327161 396282450 577965691 394540485 481931305 317777047 115588209 701297861 516743664 271109020 440888186 22438129 865384231 872882751 501890366 71847277 605849764 459624778 574546532 441869153 897280174 362475405 37624026 539653172 496950637 480640639 126798000 799408636 259846464 727608949 721896139 311240048 32509332 463809278 919739913 955026676 31630825 483730743 206540392 942312986 158435525 163730396 349728762 59306217 540292919 624936120 583647262 199058562 601085376 372836885 72622990 594413443 184689025 131349072 3427872 956832134 420757951 321131703 50472146 232493470 632556448 133950006 976990869 338398483 507449069 893961941 611149665 117866212 719094727 822565268 259413829 607326886 284554666 361854777 725397811 812254016 302624233 460139095 993505394 619279167 551957377 22268969 176363033 675268871 953602472 376302078 663977377 465369545 904671500 998195517 227506615 457417094 883323852 697527612 360580276 128615023 86280236 282262868 400516374 623333896 693167825 426615638 62765685 45737073 846752579 302224299 963271139 626812662 963092941 619404138 295442242 918283218 703024221 444700815 318214491 619833049 393687145 512031496 354217647 534957551 608245466 595752394 144579875 353266998 318723248 344356827 3948486 755926801 591509242 246820121 108748600 56793401 618525805 970870147 377082936 970876818 264426805 64328848 218469026 837470057 322067564 515996881 190037015 647716313 958263659 787364678 408516540 316717579 994395960 692405690 309092597 844922202 439803529 49269608 971854698 881173134 564446332 751994715 441074847 771880766 7800438 84099688 565284405 319227607 979875643 425943674 313031412 801609506 562186002 121958349 158674808 217913144 254500135 585141459 147102737 548947521 18730963 393676861 719238574 937847143 257211122 82315124 183526351 259904773 777438977 217120690 311735517 389655753 636183855 885302223 818282617 807231205 927874096 242596775 601816434 87771045 127771571 610467116 450378218 896921941 130975048 225139208 389900177 933825683 285981253 441044198 999148659 558102069 116340512 237323359 436984305 504988259 277616960 265255725 218520750 748115148 584425754 817464515 933011144 232578173 550756719 831661158 889849673 971313217 427406585 7131344 556551076 576483732 981110481 512786089 303260765 88223939 832597338 748303474 113248961 281111898 199983769 351198518 305858549 236046368 157173150 777533302 999789554 225246252 228694758 274496429 359045999 553973773 439999827 317255167 982774779 213916777 122385448 323412970 920244494 736150986 985992489 526593202 435297421 441908639 124442232 325627075 583423049 558608204 961653400 57658939 835301493 870799101 103959837 823677075 575899129 615374161 328618098 61883100 460793424 81140998 886516732 38393953 937021168 629297697 418508352 334839221 833112181 289217583 910054908 753807783 714635045 85976046 397361441 739081790 665960190 93345391 427440024 951132703 941332555 205412168 171238310 642134861 898198603 415414931 891774662 245262711 623618138 215675724 83273641 194248533 559810161 791016727 665515923 950433474 678092699 155084761 981358264 667952178 200567579 559421431 657085166 732395045 660449847 15603294 259576311 172603093 361234785 619089887 182015876 700426858 258709849 864752224 602814220 255880904 865242290 685273896 901299213 597352410 322958140 783385528 911574438 937524078 446648638 908567626 240220983 515616878 189826377 782704515 307722803 546469166 779916383 275555879 266009255 84237264 883431563 101404613 118243585 933359992 206839034 869104758 796393076 142266789 621127827 345575963 749850804 194211843 332702780 654199728 582405302 110785820 893439701 936550360 966648291 971686401 839294106 647357232 692471400 966818965 385732451 418825695 915160143 61120126 11559536 779777973 962832312 774006288 345497091 699721447 175750501 57442962 623029307 231665601 509789345 93694211 910863540 236832508 138899230 637267874 585675300 190812819 334598844 657691041 545388369 463939947 234724721 162078558 4899140 666330516 620789542 387432179 120970360 902345493 90112834 45260625 405704600 343387636 885386360 159813828 519227480 683261219 269256634 874618897 702002863 361444981 420744246 837377624 316804828 953834855 773241892 884755414 90111382 357783035 233085026 876369755 493203803 521192809 492984926 352552195 74700197 134643649 239810702 200235254 500974119 212800557 293200672 519467408 524487494 820580609 359519640 242063817 686317730 260897920 761025827 551345322 59667749 505192384 929244377 13931214 800518617 650580733 511408980 521754623 467605428 226136542 2355192 481062174 197029939 663529712 342679601 790623894 497922727 751669362 660668927 352122617 727403257 79370324 287422448 106950006 226352624 185624278 598006915 484883027 549390889 317301945 176354991 571218201 41762969 24287838 302552798 23450934 733445456 63701311 6507143 2869879 873626505 227000888 644372352 990058423 170923322 431752337 319398187 264033490 963109078 264351436 282556274 518987765 644724624 967364572 922596490 17096719 234355722 440784266 772144698 538068529 19668856 395788830 121111176 223866565 621072287 804334076 67549446 982019134 402809607 965763739 457517197 717215704 58554044 842430750 75921612 83279399 794088401 817210139 687099680 824225772 767852218 227231623 742136122 752382766 2769509 743591609 968125306 866299420 273458833 130280091 120571866 336266064 170483230 6663747 831807037 808732606 526695485 145190039 402469995 699119904 275171178 652985494 54018446 223952357 391822890 38961585 843026894 676526562 496306703 949683838 947757562 981339314 973598034 151702449 145426095 558693254 859612903 735558364 59164393 393483870 769615595 234513604 817665209 982422219 326236114 611042997 24586814 791379523 934927483 247917549 252404851 629889434 178044745 691545382 196045345 812196483 157344878 631161010 936996509 90831840 268388933 556702492 200724739 149911572 541286715 435002294 358838350 304053704 988116869 823908036 981011243 252352247 926815673 962700152 888526548 960777715 532136805 920132014 979437759 669277257 693388619 951343205 424615188 75708869 529699265 802462709 421552943 49589117 113046384 319454911 396699785 213660471 739071863 757224110 873689357 776476234 973721212 73719342 780459463 767779686 28275088 634693169 475350221 25676713 742973281 62977025 684972418 928742636 928528245 981309768 354980261 744000365 684988580 934130978 769364409 311083845 631244457 585361488 234654291 786022417 945385504 713782462 14268161 689542805 135963434 849204700 463522954 160012307 855561648 519635666 428687198 676751530 523573449 826275654 507621650 496219871 199626547 534198070 578917683 317928606 611274379 654239236 207198028 711553028 172128732 305981224 840449492 473205736 788951837 963414215 330926837 160866918 942688791 413736002 401565273 815545150 984115417 44568041 958700192 550975151 646580199 299610055 248722370 596520618 930908312 127239318 644492469 180803166 364772283 43284210 907639965 722200284 619335086 737703977 945158473 731871106 949235781 806005776 455630354 652635312 536130366 375425973 721724299 675657980 317293865 540548919 867026126 419016225 353645482 103689578 576228997 889843032 346301246 799433878 429052098 516797535 409020369 627102919 96706236 517513626 919935226 237726288 13674240 436315966 297670106 795976074 488026878 234213795 388648624 142166793 773779113 783479661 3872396 642649351 3417498 476365967 276329137 816166645 510139736 322347289 511257828 134419736 199369648 489463612 289605206 619860860 662326843 622555813 209222086 430627304 72634870 739677967 871079343 921002948 392923944 999092304 550217772 196742526 287227316 907635352 529739996 712462931 450426251 838320265 815155013 585446883 830836359 484345905 128327866 342508024 578813791 384174479 959178527 315364058 813052906 606622196 200166832 917220922 63724579 127607703 998577729 253715168 994342008 964015037 961937121 49015795 203501735 738958427 770394960 224645374 343012992 920499598 950217213 690961801 372487496 151346472 618499246 44996144 306812310 436895375 454020787 106413625 610235091 403692377 834861208 436156415 177794882 764598195 229648393 947176427 878095435 703978061 192192073 108614164 342260238 595450323 370278679 480163092 28997488 394117803 187146349 695139477 262396111 917152584 405049611 486300061 197446018 578107609 16549232 691536226 149619867 645652450 607702948 110874031 660592433 309730709 422904771 517964360 424372808 565934869 142399446 573815530 230902994 755775954 172994990 572882570 103159657 379713438 433288838 947229746 735593617 395175606 506856202 893842406 878872329 498202784 118375674 413311382 735120651 787585293 147416490 901096238 341641897 76844886 256885216 787017827 133818105 893318613 387753735 961847914 511333513 561248271 886837347 532676947 634498460 466227482 704305847 671117942 376095207 493035893 99923936 693770195 537125270 676972053 493737264 149900045 520165405 409797003 380351331 595908428 800713927 291687726 892833789 330028578 701025939 130592274 205237343 92519293 193145174 327380660 952054177 84452064 731175003 540462462 214723546 744358154 994121460 249586393 75134981 847589532 282918126 117884643 86139110 858236715 977329728 717602003 35233746 932946638 874478242 243213420 700807754 971590388 684681559 531208892 317263201 970726945 659610678 993767482 135737132 114050053 655761400 647999903 204467434 864616440 82184725 482466610 77524079 125860319 473871926 149204450 184579809 51571957 921669312 258830288 478224306 28561951 371588047 654614474 830200113 948099801 145966709 416110103 14249027 111759807 543255031 224989951 688971407 985527577 564946013 937909849 575753920 555844746 273963304 736684396 553244173 664140021 897831440 209230752 803590724 759987252 920263901 677832968 144972160 461172509 442663093 916976111 368304672 88291892 846951357 198591780 970113969 1136376 685364820 954237940 904377540 773528066 208442104 837619824 797096222 321651941 318800715 752674749 206505317 597529500 231830710 910231277 856530150 251234598 714295437 398009782 259471416 998929211 972818099 161098282 626189568 667329406 509188415 962352062 694421160 390965378 121765512 252110420 660557965 592322224 771169353 665711600 828309625 431526012 869421283 641736297 892364592 790440496 60615107 780757579 927793844 226980273 972865822 248632852 618192663 798703166 308821369 479802233 770338881 696340602 307160746 515035605 352878126 254123688 597993904 812834 452629982 739043815 336134087 407694006 320675835 78876386 278005596 506772655 988192958 838658884 784663892 903764500 808799839 754955134 396730412 850742769 896701192 590864160 11569795 265414044 584389976 535043860 828884656 298419686 783280087 73343060 822501523 699143157 154730345 531645436 544164905 623385158 637530532 954401014 251482006 422740784 448762012 184773091 207595505 964194422 578084750 210629057 20841129 26959186 451956086 284645338 870882690 594218616 966135531 575943490 962301377 415483006 857683923 441361671 745819996 334967270 385699730 76309197 788586239 43670516 226021098 291982315 827004812 89079072 53199022 412271956 4223096 154078966 95967818 269830790 358575788 370418653 63795559 540460664 359027025 77646188 87581869 180811455 471772454 357826990 480733429 491227550 367063436 823467356 611877434 309309132 574623747 980510624 72140147 519918977 190225689 510884966 166842344 32457913 442889891 209435720 360785270 156375232 63851960 715828187 587936722 234582343 672433555 720894164 739802640 709739211 351259281 23454773 454934031 481319268 657329225 998116124 439120804 474399114 357056667 136368673 335583269 95860624 590981860 767446545 301840759 208867201 304447670 499514132 596601361 120661627 94520487 563058562 735159382 49691655 66808119 868617358 616736943 207728112 541337308 419512257 380575803 145590759 544066712 858808200 776822064 675286011 627415799 557046620 950875071 15203429 830285049 116577014 704418550 339958067 807387001 757464178 612639260 729559936 625179993 679764135 193618390 139538741 140091261 352303177 560194742 118641367 728375749 12670594 243867629 16457361 196999545 203810798 402750051 892694807 233681666 462245261 969055747 791877678 664876701 799245144 913555661 93455107 947058433 540210577 906785920 453098766 875721509 492516847 243555205 548716237 682917987 749387442 811955040 812574389 656565792 854755551 802232813 153892774 413044703 725230451 195091562 39581579 746576335 606584684 164975969 138869078 613450170 368949585 605595414 554422090 511382131 233160915 148947342 947812712 947363874 134823640 339789103 482531691 894110037 200412565 395312012 989426967 679686407 200360093 866187750 186403214 480652169 409843723 64817920 496087287 503151826 782149464 789934915 688329191 365437199 979621518 300431641 400826231 16701494 527390390 995653886 702212379 529947083 354429245 265664099 667613989 349358688 722518302 109038275 668292008 992547823 670671938 449722190 355016519 493525148 728548093 636637803 249990572 404843752 771694498 7265482 952169024 343321801 670289380 142357705 646418687 242604715 722685647 211891604 493223339 902253824 401122004 741303730 410096703 996715205 974341663 155393805 35375285 304818537 645959474 5953017 27433817 796395897 91237490 480038907 817928968 608975776 397931888 709940602 54978132 719122699 70869618 544375862 885529823 253789521 492432671 49033263 961804762 592917099 409912130 555849685 425179423 704697143 367043672 327910088 854597643 876092559 10576953 668708550 616729619 646921309 848510608 298433089 829054043 477168318 140756480 532028639 531932840 705011946 240236637 680458990 976714433 807701606 762744782 974781371 715343184 651774672 675772343 823380540 155912614 723867263 53165453 208275121 609250511 287781115 356838049 584107413 666683869 325668633 877233929 329373636 103887561 983210601 225878213 129777306 108154270 988281961 894220524 433520560 557294708 627368078 631815390 634071872 23176972 810371761 692155668 886599083 557416213 206324633 856080233 157497152 352062783 43886348 628100546 50889495 709096045 357723724 734446347 812337362 790316288 802328710 837596879 28548440 973940368 999517028 924085647 979047921 230366901 470223595 775974512 721358566 371952511 445738931 798745110 419132017 480429389 717510513 404869345 898273954 42027575 958358671 305210186 976097366 456333342 337262857 299237009 56458483 830833667 859897074 184519045 344006991 366989583 579433909 693861906 800458780 664396225 289716545 979044136 608085317 710776408 866157795 321948531 263218246 243183396 780839190 115002529 860982236 852057279 758221650 691014004 820524934 218192370 767301758 508696721 884916428 528650219 612963600 260380785 376716575 304845341 560693516 138649949 406572541 49019975 794993312 118457727 383302542 451492150 426288422 15139043 858942390 463145886 90616130 813848920 158990129 335818648 369451766 314608886 802601034 219149366 874304789 851489152 287510298 426100626 33073288 847937734 838635153 801139730 403052190 198508512 337300533 841944793 563607086 325753117 55000875 71089437 560175831 960220811 222360616 510854263 157834170 574188369 920241431 71077750 948604380 95554730 863155182 429181829 986609371 547931656 549496171 71562685 699294831 619482306 909612068 709904002 126036957 368092601 534926811 763623768 564558712 767311086 20604436 151743540 439540019 505186682 208970703 709283692 161053677 266384104 177515006 928210547 676052895 748963636 310385637 561250229 122451359 884667305 428367129 581147108 953524398 360429031 76996730 134363631 12843275 139171563 992644633 560631517 531886406 577922949 587314551 365890856 731957159 180189105 604931012 86237937 316235284 454314382 704183072 263474313 516762638 639247817 754838452 648938437 790892713 615658990 21693309 765654608 43590710 660737202 192845425 184175353 251739231 700608643 959219434 313855353 702803116 273576480 716165060 607605283 376934365 201914311 364011223 303093490 623175410 697937015 1069173 613079197 100286344 43822041 163241125 997518554 317783425 861150635 374144132 35223076 130605788 987261835 515226007 121811225 288727451 875993818 714637497 293895407 298200108 886902381 448604638 781255313 663274896 687644393 652937701 375430141 47608386 42502006 817907768 840440664 272641803 56020219 556404376 829414262 933259534 503151848 558214018 111810325 779976864 696204934 200181294 283703249 3086625 453009669 76381742 756711607 298566006 329399850 359609404 213361395 611845352 460171024 223881579 561155216 510324808 988082342 459886835 399841756 692717191 879243927 429930528 596875604 250698341 837684246 692011089 176500114 112767021 533968823 649753684 704974019 226443657 556721128 90255202 587881915 44521028 506709049 345679722 492799365 25751998 650882223 893424194 264870995 279616924 108275438 860581520 994347104 615650088 511899249 969861365 513977086 768585949 197306584 492231135 507436278 564440225 184857465 111413094 408413113 370625665 526394216 358931322 576593391 398293327 145948514 401557641 793131618 802458651 131313426 72458277 35018956 722791292 250883048 552206041 99783984 602222942 404123097 52975081 360766750 772173862 72140247 976849525 314256534 730502918 607421508 809574409 427001572 605852816 962110316 236679009 120923660 542605002 108867215 893190492 830096838 183008724 978797108 328725108 628804150 377023434 127275967 3079360 944157265 41134551 672830297 461319443 422928513 460113147 768132306 164680303 140927714 851117038 186018586 820866258 212138573 674266867 599471152 567839139 922137787 81412941 446376365 94927168 185122799 118599106 291581733 468951603 315821663 267328823 404545286 693548129 843418681 964480803 85048821 167632737 455556620 3277437 617903237 244875720 971566181 25806271 370983491 518527661 725075532 221446116 208669368 158698675 884813185 463648359 247935039 12606586 173941781 525781548 878902355 818084692 900719773 668365462 361179469 604659474 402814325 454220098 190875933 317657154 738278887 361220146 221766628 127877410 106866050 117876512 809586754 961252815 55312674 57206142 693791904 921642763 230417472 500445902 15441571 806242930 432932354 508809462 191625083 40258559 465098978 521873529 819286606 479016406 747856395 615463341 788807875 848365124 661482250 225960604 421456088 284436249 472510788 148471472 134821401 241929540 767833356 924362671 514978600 289359007 117092055 421882596 659049779 191131169 660861031 965027802 185320388 168503238 45801063 682876045 74983406 174750858 259049176 235741622 12091997 950240604 436637475 372099325 166758065 421122765 71370664 575286908 837212368 429930704 816754157 480235848 253649750 206009715 877213480 664227492 695642434 215523907 504825118 134206648 348282831 719815091 260718544 57782495 81516695 702643023 11155588 75503000 87768226 247330503 55630058 141820856 782555230 859741437 965584523 264193464 336484762 118539428 146363407 336275498 772307928 242984512 360345723 933253721 13613984 257053723 190828467 92389720 206659528 13850141 221794935 855773626 246383711 76475038 162118569 645055783 682180859 806010430 841054310 16038241 910799344 51562308 375908840 270927319 123964738 815636253 306639861 65758116 671250885 990608049 187663398 926108830 838307436 809929387 247633785 797158665 366246073 915451988 502108295 415296589 246312955 572023120 696491908 256963889 599260590 942406848 658686146 113628968 772469390 201240271 125242461 951676386 501084176 288737985 43582404 367081107 941091659 31930766 639778962 482080140 420582956 481929842 316049280 319889505 558947089 636164551 96621454 308641239 184052449 912524397 996070416 147567064 302174789 894271130 395192453 533049662 146773254 813854611 945261957 276424105 215545013 268969911 207139564 781703334 27536891 447397042 820784810 406287221 522749576 619888552 939501629 626317821 162590083 348493297 222635727 863863546 543408379 506025369 121751421 459495850 226909332 337399144 21371232 319013149 997404165 250925698 255658234 562905179 518684420 320157238 740349617 499104864 589699536 751164491 867212704 276632009 870412515 41840361 756550338 51927074 477510583 41706559 117541450 229785087 281184320 666736141 992483096 110840437 437504877 397781243 169142125 986432191 149074828 737180898 95462109 522159610 423084834 940683502 153161845 572897983 71202332 44496861 376712869 406208109 625112796 912296740 188640819 416814223 116526490 724617694 575076994 818590646 353356627 886116706 279022926 399358030 5094362 805379849 232761729 47750459 438038782 844207370 691368767 320244954 21869414 19964829 574915630 367638833 576953523 4355648 472758791 646581164 675173518 828835129 251729639 580017246 775424777 191008622 926547747 207329308 386208408 237390356 454112755 473725801 839996648 133878137 919429313 183171164 164379907 880254132 166653411 666225923 15007461 790701273 256379598 507594099 979799498 507606062 346514560 619012513 89013820 456896822 939283994 423199645 118653597 642018832 55789788 641405128 192607202 101914447 570513533 173013295 344488863 449755645 883741723 113486191 814434449 297136298 985239935 862279873 475894437 126972196 925716499 566432711 630106737 94688041 281095972 901149238 858336504 383477494 407136781 383337362 268643956 619718937 698411660 943072702 340416108 932670755 292777081 815875337 796170125 762060812 546013211 740923893 445169546 437694048 797299527 146294023 913954668 6491146 832058694 761924760 734374258 809925005 754560334 508523610 364316396 406966605 802442149 684282247 59529153 419492195 23441448 588172460 780850007 626409400 796472583 231158881 837483992 334808709 100669985 342132528 74048741 234380469 870167514 926491906 6582632 332258536 520609164 539134658 83232468 41189499 772417711 116002438 622157647 390561037 39565119 772592179 501893533 953221294 535447608 823418221 994750090 717774893 976963985 918541268 160155805 458716822 609828626 567739337 232076052 492073066 624989746 909952320 893467838 707596154 499902637 119075923 979018827 659615462 625683975 21868219 254684713 847437437 342197792 150403387 19870341 306902551 167409508 241472099 421401704 840360081 692120106 706042375 624840556 796987508 102387193 581494797 762026825 972348383 748324201 248381336 180059477 325218961 898897 946396469 17828763 309779275 136379291 631897897 373974205 309323750 106199077 145007445 399720437 144558115 701650526 636521821 239158573 758942735 201563708 139314913 388728748 711727792 409291450 36110046 281950074 445266140 691401613 153008055 719723716 836499149 549911901 959760593 760520671 415122057 494989480 385266101 748395571 500793557 588332024 768931528 88228164 597038634 916317945 601458006 76162879 897698244 981885025 589142923 129535451 883507808 303400875 963773613 151110024 373559347 400241150 631720768 356525242 950183704 330538067 602113176 713431103 495168304 602988591 361950318 850518228 6094504 706930135 808355880 171185688 671435098 183301684 416446305 508870211 119663645 847409030 357265723 933965898 777559349 67168206 352459025 927653619 593170483 225246436 337897709 102013260 94273640 783906008 302569481 260486330 403836553 48448270 555379131 921528196 40596843 853787221 322913104 273834383 487391705 981953571 756858839 462093004 628295021 229014621 514555653 786518334 472126223 169741121 679980973 292742735 504369900 449698849 70001253 999771324 411870664 560974200 492062600 581919653 579636131 219307078 425605040 450689693 47295364 658904245 192701604 161143759 902982500 644535807 287005863 752168747 103770281 250289192 781882819 957944431 715183355 63171204 914638566 856008472 256995396 740277710 406499102 579388064 882805377 134337118 374436201 934686222 87223727 720969824 673936579 646536820 855547112 572084817 343230522 456364509 445966841 368731562 563950825 600114967 53292666 380297270 807924199 629922405 808662660 73713247 861882633 746981426 777777031 882943208 46531067 378023443 114733469 350823891 80793149 386580322 857056751 584345959 835094414 878289905 234293959 123134082 979864906 518118491 696427749 46535735 459595469 807488129 65741346 370869809 767773148 510444418 277615004 989088096 9867206 230862715 596399189 50629885 855807258 251693397 330475361 332034244 296703824 702402326 736760869 365997513 254277981 394860521 137913468 781827576 716529682 595762217 779316431 34576560 942203045 867553161 994336706 137932422 660969837 220542337 758776026 831445185 702342018 152851848 423563725 848327740 427446029 400676493 265597884 150807380 160810457 56639277 344974364 132105192 139325713 86035723 754074218 391378847 551655507 106584337 185752675 128997534 756080578 213702553 633949991 378653724 728157246 942173440 732035702 87242579 626565408 175714962 403271551 576104467 240324869 371936970 519598632 484840115 11594507 206918481 762166284 362349001 275213405 365026452 956664907 962253631 379988730 877663541 774112695 586999436 939636872 822695046 299121838 808168736 896328739 30183133 479334240 204350759 374480262 406030854 359914786 707414550 881567621 536040267 875952406 853339064 90146555 685554376 114228187 395269884 537376586 524780406 961283179 522749507 156628326 52383253 109092860 458940793 853946054 367847487 136883041 427167642 943667608 16376469 387254269 540695 967555855 214076859 644560947 110371866 951648376 76978605 17930411 439204779 814714907 328606313 877573728 155020949 495111868 348418728 464762815 978034636 111152359 403412213 50798031 265109632 441266322 88718960 640738996 727876819 760335372 994552547 977601626 9284476 759148881 545714592 90773613 182533631 620377656 546243602 612254705 591812587 314679382 966071001 561626175 472280143 196609609 428704022 219387291 272562269 715816546 915036379 260901315 283570573 879987434 249111433 76699170 292254320 237569777 568663598 27716145 565280646 224390602 842296796 357912760 857882217 39119448 990946581 978454624 894086611 365586774 526698515 186069738 696023746 369591903 412132597 686751794 318787041 573467539 387889171 652306556 287043647 237962886 518102228 833984435 100547586 988179897 760021240 485349636 724603430 245091613 134225161 316800211 392631822 760549353 705815784 43435800 250301557 660285520 696795620 28274473 1200086 423023751 290546899 21231677 435119733 89123706 305549027 282272738 367570480 882823792 262220990 203983463 409122682 245730937 161680571 225857437 508778861 627678306 710151604 449075151 393786440 874227705 400518100 187225182 78051685 926397520 973438745 345073691 260823007 923259265 204987334 181834909 947039740 650664558 420711733 555005898 348283034 940449686 988412426 620723755 833098224 133970354 841361289 228355676 797147039 139375666 461497423 31951730 661722206 666389620 516954088 418357095 750930784 709660740 281907993 69986930 627255592 579590053 683465553 626333527 252597141 195028508 630108983 793863723 723806093 863174015 27589485 572504036 174680343 900245704 688936487 440234501 849882249 802068811 524613824 646229714 197257162 82179812 631504433 498333849 86074212 373110962 582324549 131634845 101908250 281165838 458872673 978233549 692156281 173481442 278043627 691307729 156693275 832243322 969955037 414651835 487390433 539657205 677823057 48019505 106791194 644081383 359366479 335332235 550966454 406920035 67480408 331258663 660483161 681034207 234882673 837281291 896326587 464897195 845377543 599116472 749427625 146524234 708263332 642056048 624715616 398789936 158083094 542309621 342564248 955422795 115507155 897841323 754485900 317379834 131319313 755910652 958942180 614669684 842397803 116309321 650595039 991528730 914410334 852535123 411464636 700211074 503554583 70367347 158474591 715101352 770298595 524808778 732233717 812531971 915950819 913802288 799169612 227123885 483436477 224058038 548103916 332563854 373016107 741514632 247027497 961055274 507672487 731694043 254075807 81234812 393497721 267100196 275264695 406105558 918617508 542115353 868237117 318926451 408920499 621037734 80427762 722438460 582430834 23181313 710512603 80831252 904723452 939076935 10336573 601022177 919693650 347531193 78923846 870628340 583646169 283159504 829522293 178956719 103699071 849411874 770004310 829204365 41788018 591669876 377143535 755093762 879463281 528457689 304172189 44355810 202950432 452258169 448968029 227801928 217386322 184741115 641453389 676241035 800625402 531782809 500815956 880853404 328480149 451691455 248635455 261202967 545110088 213524918 676037061 794573719 331502579 142232460 712896781 7709538 181423830 171651990 495113704 900542478 651215440 87442913 964343668 213660810 931915777 378213024 117952864 373934448 412011126 469158359 168466617 520826011 972592271 339255759 545075775 189039887 762270950 545246003 864552276 855528557 673675488 248997307 583966439 344769502 328169255 221549577 374911999 358458047 930558793 576923901 605727470 104711998 156365004 2203050 826855126 882410222 295649780 42591701 770083070 253745902 385274504 954460867 31838472 295767736 860694830 417363886 89133648 463163046 841664805 268373987 701748167 803838551 775935595 845516568 105877362 330223405 664023459 508869729 861113880 494993765 914273030 808247549 232687285 104204148 549866948 612228531 73752687 370284405 865170862 929793503 156990404 107126009 820872879 364438462 304785701 409754215 820647721 639843038 424826495 716079881 782187616 643984875 943790002 457444176 138482029 633416907 565168866 602190405 438002639 195401271 426463774 835059835 978378910 15903553 22065185 631588441 467470099 40520141 476840890 811311231 23042046 536357083 719176750 182899563 466910590 611526384 978177079 520440216 826841658 744205959 965750060 700331970 49949777 94185940 835484793 95387280 979064119 579158226 14475682 626118199 157240446 625076905 193245480 711572651 704373258 301852000 320608717 276970420 144424435 950615090 806306507 38895291 659421306 762125120 324908031 912724741 935435798 705379037 373845660 584069644 206794236 62318021 733272249 267496398 413432433 253082576 974234425 174940642 514244985 917526532 908517503 932710728 596608579 787093872 834197985 361243997 392752536 413614598 18655334 38464689 259352729 640024861 963199810 660563553 650243632 159764462 89985704 558514312 548960355 477746743 354589162 198516932 129679414 966012939 826280793 613331534 741554660 479347188 994441935 548230334 793266602 874508515 321551720 724803018 706130604 934697018 857337243 36150725 475364119 519954840 251060009 525314938 880466122 605237444 271189487 882739393 584729724 932505275 468848903 126723258 417963615 687373948 863014250 94685478 164968259 513690298 404060368 177969757 401181573 645829503 541388408 234306416 268053842 85839044 4892535 710951316 234314915 36249880 785904103 891076513 54094024 851751072 221438979 168915758 272691837 623602864 56603473 982605489 486536847 875511892 221290451 917134298 117628774 189722808 67372073 652811222 339613882 69752501 517691559 42088901 96634596 824649339 317804295 865035408 630110455 522332773 357992761 119147134 228357221 794538706 34409953 370101472 19975576 630712105 179193248 892341336 386672384 108167657 999772135 258721762 281953980 709176553 382304193 656361603 2939828 499703155 896468434 362535617 163302656 20058343 263114487 760896598 988906364 16497629 155565982 590973555 10077357 528564613 280706152 293350749 676435990 69472146 263651346 445972000 744460291 342235681 114019824 465762265 118569459 77900242 103959145 850175513 743375698 100467435 646692913 24255386 863254948 627990587 361237490 916394554 766879611 521045427 717122549 808823910 109460633 454223112 643671381 33473494 585125183 61856688 902738716 48688375 408984338 807055307 211176585 189581260 848768924 427022998 828180366 549028887 761938318 527086495 582617656 382979269 922330449 191177416 535962917 450899736 284419867 553549501 985692105 892952097 176822297 642659633 711918159 886025698 530473911 500793554 400698596 482802112 123859461 633817671 53606729 507515370 170169141 250751318 814229712 561091355 508464931 572650728 131178057 586245884 502893429 310065469 446968052 98088790 887798794 959495106 971606065 586734648 369407739 167489788 187856357 822233161 602432658 574832668 220128895 719057470 199049075 759320227 312526510 252524900 116032056 119760352 129534391 975077436 557021130 95906441 361744756 935550149 74779282 834358424 983689642 553898303 53398297 717815550 316175411 777276029 646752356 437936671 277601007 560070965 706045846 131830065 16189626 358547833 838785596 866862170 985635639 782237391 629655587 400184783 630527967 407753380 73643545 971130097 51422275 863027128 299469912 512868013 869357897 428329941 142810974 414543298 699433695 627408963 169094978 261439667 89574110 640968276 921454164 992344067 819389423 476387829 267256329 281867719 235297043 723758102 138854062 202924351 279166483 666956800 626938416 673437077 19061588 543298507 866923826 275176257 924374595 895940707 316116573 272694431 847403799 387330053 775865791 829050861 37336642 22368397 569515265 443456696 818773272 94921782 656240250 389621853 608050854 817364937 580805188 594184626 774562530 390410945 819923934 631634948 822077927 911762278 416761395 584760876 943333305 747282889 994035713 228632808 422796022 494068282 562648607 184255558 179919484 562142044 351542027 445450453 818299322 766427815 802626029 411736157 176504426 557005449 461415069 708942002 36684519 833612968 842962015 404214333 846519350 818100309 569799571 404671607 507914081 669948967 597942168 262335364 905735752 215024325 34415591 726424467 808658154 694671465 127851084 607402455 129748852 365207661 996798763 71773070 485468004 733087756 314719002 780811576 206231167 61518537 908063307 322325347 993383795 19080769 28884055 139904581 70303379 776368838 240017607 341667879 297574083 112780299 914891591 25616694 385310483 928925942 821433394 286330084 179367957 915864621 659967051 919292512 10353728 695780691 719941758 551118670 360977295 713419572 885690784 857866103 772272063 953237176 594356598 902609486 164181205 170670951 832662764 544850569 449765819 548130784 695855985 852957340 616099631 417962812 537580407 349014396 103227904 693781931 506734683 700007790 500265585 329732044 672180594 904126950 922283570 980674548 738557424 754738227 45080423 432197014 410745831 671983394 99750767 65731382 71257734 601873632 21785796 5507036 158006372 965965014 901322918 226816576 866413270 437001903 79446534 485097689 63190827 51179476 768140420 820483452 864865599 332925663 826549912 763650291 11296888 497600490 651739928 924625773 144321097 959651845 565091735 956604965 393241032 729170691 134204858 935102921 250821457 492620478 473787619 518918631 423218696 589979202 97282010 454619047 459065125 639004833 890282394 207665816 679867634 373191345 531520260 66070286 927117933 312571601 238319664 955606274 892987422 662057187 588644923 796209164 16127637 882804688 928136710 94678188 459618817 495368635 396817138 521512920 604244740 547120451 313879476 516961692 909913057 152503519 454189184 10206596 494841397 71865504 837195714 174840064 666086684 790648038 324465542 503267589 730980609 599439150 150488071 369022810 167347591 413247728 511631852 425771421 324666309 257671514 482139032 632204085 385613300 396131286 536241117 174199061 95151685 9245587 925908237 131853518 548373581 505619050 982836527 286726200 198422218 618339026 49047833 967858750 867817507 790724384 125249804 32072574 95565741 60357775 576558567 664866537 33375925 628028849 371115359 732269753 441898244 629628404 992162595 257410484 357922754 452737873 926523188 397401832 263896559 788100235 978296388 288836837 435012132 482667917 226380986 931172999 645388945 634832902 606077281 945827000 10542635 226681660 292097993 978861675 166748047 594000972 647247667 982229176 792951501 603906268 557310043 427783803 136096959 412104737 783378092 871594657 992408710 788148255 866797529 847582877 632852627 472608818 164713284 211736269 6171834 972902120 894319669 731032595 923358228 302440341 692606784 163091957 457545525 584810324 787557493 442761351 691497962 141834199 525528763 942364222 588550451 620670145 343422049 287123402 276385190 670444901 982442703 971549597 333571813 477331128 411216588 604699458 116297001 385407534 118240310 268416122 839753594 533791727 292401670 910788180 171906380 469134527 892191092 351894664 5264085 244836521 468802172 566265670 593889725 495803121 692784350 91152202 344233307 703532536 23327876 793131702 474434225 543801184 815814359 131310888 55120666 879069272 433301034 709234280 177276887 637624868 575410367 248532125 302746519 416089843 902072908 105510855 99603845 113951270 842830858 783140035 19674889 897270776 420894672 291804133 968724036 64809904 453878666 779520688 469668520 515104882 709863113 383191584 826099903 263748053 924393274 981741382 673498853 821877725 217724657 973458090 729030844 313440309 37534902 108860781 770124879 506272302 40352537 433923598 56950746 775037196 794167402 541388335 808617862 62696072 2908310 529897945 337043907 417709979 504803888 567546784 326444310 597189927 145428174 535757267 229831237 236505133 184871469 870071984 857020467 218342992 527024520 916146598 418790656 92229210 503533385 152844912 124927966 517540215 297063058 909070866 80515994 472366560 830792948 119964722 483877595 627101252 305342238 439786120 34602853 640668896 317895447 929347530 308339182 724680875 892230947 379765323 402221119 235063699 647543064 558964234 538302626 186820786 779674336 500426741 17705498 10088963 638796130 233015382 143948411 786361338 528275615 908460264 320682577 621054897 435413113 639226279 850611518 122763723 919354325 902861514 991744760 816526074 226997483 462085212 197729254 835911726 180250797 294673960 629125689 646568812 246501450 732901624 369760174 810144828 354257195 603578253 161553206 16065570 31209690 474166012 607615213 917096047 823707888 975047969 669619935 852806782 406950130 772455248 391351114 314442446 957981453 432938428 872817695 650290182 850685094 196403071 372448278 811985701 442334264 766579780 240800985 505592990 980776446 162347266 787900855 572806770 746451279 356477684 785536308 748748162 851052938 449186009 108824507 660699801 982128483 144902383 830284480 740978313 634105530 199705979 391905072 695098237 130762680 765051367 895529712 89343739 468606146 407124144 432182903 766438107 902255370 36457520 953547723 288574583 370092584 636606264 119328940 423416494 564960079 638302671 539441263 858857465 416272412 475827400 378013888 38789809 252054682 568720228 233925555 602679420 783832061 926331172 656946560 58455215 484328194 652572557 930072968 345451798 180387483 546382685 230714287 217567435 769920509 347497851 719865760 204310762 138042192 942823778 972308046 91023512 932018389 372050037 823636779 58269907 635996311 808742120 587313282 723447038 359376189 950286414 317110282 361934030 575280203 194112160 810552630 303710886 99635179 282804515 290930084 400408566 669062302 481965206 744324301 969978581 95874796 435163411 63621180 804249223 364512351 117648887 896935029 108435531 883984811 389951906 690532093 359812535 215166382 552765228 155702212 835644308 699470216 639369503 275184677 995556064 70383865 441024412 639031603 909776280 374824362 129569143 944289690 448682468 255389035 616552162 337311975 905170377 113974173 10150565 833607354 834324718 282663104 211224208 906445719 444212810 81837206 204777605 786748718 693670064 94561649 306913889 194023782 77121401 416838974 335681437 914375827 408784841 288888038 948550302 756055825 633163702 78287368 234598360 741431885 517010296 854241429 648041388 559795865 946013285 448499443 917995366 592458431 529835931 169710421 630797777 708000452 502347988 468125609 43465564 65270642 993263105 289022850 505634505 572550931 607504561 289694911 345669153 124065012 285481221 676299948 762507751 315647933 679285209 529025428 776967909 251458083 104647261 707190243 514961730 668032985 822402359 854920210 134926589 254285542 584421899 218117613 412815591 63630207 618842615 490963478 20386369 154605299 692371021 808052454 309233438 280433548 237990937 347970340 903052641 196257869 15449141 782445189 1058593 15630955 875743733 183392452 14373128 408536532 495000260 334771362 63519061 272332673 773537064 773449287 319133659 238261163 674427263 883860959 84405375 733883685 310001581 538063765 561432476 888589541 891688068 707800148 268032135 186370839 175998832 323483910 426490006 685252390 99715983 249982150 402776614 957855703 542570789 501818715 520293625 253807223 850691386 451094085 188741466 366102996 693549265 580353109 740236302 717442585 328394226 83324801 44110588 157234199 385254732 732929014 336336789 740385010 914392197 850416411 619098669 73715425 15069236 875708750 778787657 773024138 126163559 104293950 229268192 138780785 854780584 954207893 199503547 543095907 219912740 897087744 646257007 442725984 771349015 350340111 794088691 416490120 13821271 583481977 232693132 951683396 968196110 951096369 936383183 777962466 243865989 380628245 555507626 232711785 225189911 347518 606995986 447683939 730932666 986175581 383651769 827676453 421593459 797421337 422091591 858265011 6828205 756631883 34301137 963269144 354357178 438430058 411122869 225883884 437173195 789336505 659221261 722330317 763307515 64054960 61344366 508719292 829453720 281977657 497181153 582869096 880764709 71474495 305351589 761373740 272950964 540637894 573444664 296510650 679467598 803380866 254170512 584448943 932668638 470221442 438431831 13916525 840252008 241596532 733314713 143406082 230688231 606860568 135778962 39067564 50430910 721298602 256675997 625461352 841674780 669923385 43622983 616630704 977319110 770829180 798538096 475936149 251329970 596937853 370851120 645570308 571187633 288373110 643237476 119217456 496644470 66188426 232783204 384364857 612286198 99161826 798664452 793696030 652112263 48121629 526877104 978216812 928568515 838391900 229811884 174070278 756537487 475381833 590105005 939714220 868898727 791446743 284505317 124408360 389018919 126662631 536920012 107395689 515590583 232525587 57780564 864141038 444116790 607468648 75008807 76297339 99228450 157563114 552032350 15738675 533839087 903121065 117111023 761968735 672941493 471167991 683280540 596965491 425342930 210128258 931672694 885729882 462555858 838344254 587452266 263231654 315795939 270829688 580348174 649597325 345659472 176533745 866126074 311944715 388186931 78167873 580236468 538936959 512010260 164773134 104455431 689728139 895297998 457298517 168438841 691477552 963712858 40163551 364184743 731957088 609567218 909067171 816214944 492835058 237909360 320563943 999049009 464186725 756461252 406620146 281029904 248361426 122774224 504146024 795663754 836580473 852724430 997853271 770957979 270110276 818433734 569627012 709005813 365095497 998675261 716191082 106905171 14282585 824906206 266554248 463494307 214917585 664427450 675798867 519544312 942976770 541675581 869235491 747077490 522310058 351139395 580252908 314862253 999294805 79531888 982644497 399393049 497823921 250501796 811130983 84233293 281431792 856745924 468479385 569210698 431845087 993316565 345300488 848020407 78132060 528586494 949831462 347420113 918746820 112801599 880588446 564623942 119252281 406576523 740121959 529283362 493467774 108259254 732072023 254310914 290211557 845662958 498457164 849611601 294075430 232037203 174111277 935537245 532308684 547400875 206722474 648333470 645974955 903577860 477833762 112976743 820805066 259521405 148165111 922485356 334930798 435376445 656796603 753184715 973582312 278375995 70489621 76887673 646015644 456052915 834925546 39044800 857600239 321676568 364532576 780088924 869091290 835571510 701318254 123476244 771776551 614350780 961510039 193245470 823056514 537219696 227180379 169528791 991380071 951950551 996191642 662468786 948238605 692560553 405362189 788397938 568709597 892302690 630138339 32809649 59178893 993087411 59498679 657610939 145444488 330751623 302494606 877341032 535845468 553148338 506626786 51478703 6953540 452011956 114395807 157904190 352466788 31628102 360149967 283636465 307833439 106524052 135251791 850605330 516890384 390857685 771316953 422908319 630469151 262014597 421971372 765778822 46783057 374151453 215243668 612582466 198114657 544105551 44360446 728947441 429480597 563919341 278400508 763906980 232217654 676116591 645204921 160931454 311030415 845906896 995671959 924407528 227008242 715942429 142585036 450719461 478191619 766978118 583205080 345794271 660159839 506116371 130690934 596528017 724994322 382194929 329098688 637815302 957082920 506316586 316566031 423276508 429517989 225782773 249061345 923406285 557893008 225352479 172765892 368825157 51368541 164246053 57804603 187618875 163740934 19672096 526139287 630770989 50806198 420888048 140313773 685860240 350863966 298144057 448137802 658981860 981691963 458532133 597493746 815591654 630069662 919072210 846841282 287582147 643831728 753277978 624336145 866546362 586628929 895256661 449783886 86527167 238652915 737679 821257302 792882395 567353807 889062976 813681992 481323629 920983132 174099475 927817288 429249500 431880265 753816837 216774336 490632139 403292343 847722331 585341671 763757914 439861443 597828754 242602153 232988319 537199197 267687938 149785085 840786210 279446187 890754882 332273722 536783728 859902916 977307382 761241033 851020792 52650968 472821180 769525425 816669091 694371463 844500411 886951143 921153299 726470283 514709390 793707988 751387502 771519124 717824243 246522297 589694169 372685916 164587558 170230979 631793012 281097365 164504537 780224525 813519950 506755029 922401769 430423176 131025626 128632161 126636437 18220121 911749626 227535956 502625555 236141174 846326054 973486570 909438272 321959564 678952567 127802212 34543881 46195969 768297225 800259353 603705535 174454366 866245101 607482089 915984766 238048055 4846694 130419846 763712769 599784786 275525312 733849188 534551370 827661792 264155456 837829859 281006451 807259816 596241261 717309301 174395116 23298430 119835425 726101894 538012085 430501227 554025220 913385071 577804323 358638494 777245911 161895252 354491759 866098042 257310543 949393763 732064810 37564685 639891388 769811023 122360124 519902778 890609508 195135461 739845047 610665977 20444769 277142197 515994699 106131779 199783427 983509070 660184692 293747775 933581639 585519271 565384529 785822549 901844831 277008830 646455830 148278695 152731619 435861901 622943943 861806951 89161264 664112741 53299260 531728747 917914368 933360847 427286459 288509636 897715891 193949452 610649695 391880228 120798501 975927175 918202257 791097935 476680565 809779571 649261778 383547646 175759289 596670519 365754942 460774718 289180085 515726742 513782198 575371333 154435108 390950667 937765533 985606102 693642528 223557252 112569148 853920048 619668782 291496006 860617438 262260906 974533878 512614016 315622615 965121809 806090717 409670771 66946979 717933462 172815645 733895614 27400595 345854617 823025989 17894428 152859451 220036221 457655950 693460525 282493518 679500865 921119797 858706126 905152192 120811582 923066091 165141114 554417133 975710587 864602354 789323326 117612307 791399999 363097993 513725329 325205427 452257023 82919007 319823566 605173353 910211446 753559922 962007091 133064197 634243562 713699517 681884483 806053924 452853514 788436635 826834987 227357987 522685562 404786106 497981452 421004946 706791430 25403921 97185915 830829666 786441702 831374006 461189124 239667844 712127651 654244969 257682830 840712014 311173433 492978186 178011576 37716 169525946 563934573 609492394 431904724 36977253 419880330 426626071 979420539 466954380 991066962 534108325 926833968 645435722 731517576 272412116 905341942 431477105 649426075 970566091 617869869 72241012 694918136 19474628 702017288 867733638 662618775 284421812 816293298 585197048 71371301 862393099 303989631 242602155 829482784 829128811 755448365 6355971 752562811 618199335 294686685 719169314 581962823 102323658 98942437 641010988 196741035 409842964 79782047 177105478 765942532 521530505 847840118 713551892 554143501 99071550 984462682 312086393 54838776 517131260 975146974 881986887 616662684 768832080 609444044 695177869 119814228 679440854 60440255 9183225 244075076 883868563 711225062 590691908 712170289 717792357 204957480 738570791 449828619 910400846 722494678 821704373 553982236 669508109 141989181 131015866 952232825 283484686 925366463 182713646 144141767 937021105 487008151 944751260 128203345 495258982 410464386 226775430 446790120 897806920 317022436 776045563 888998453 801194621 18758775 722904024 493077926 797456638 623929573 977607205 18487335 174248602 263293470 867582744 695563398 557239477 336926068 715762923 80654884 24203355 67171271 231712688 925028145 553584593 496434358 372957511 924399527 629975146 759771943 801821418 719408631 728702790 87393679 185731491 162256043 549950324 801163621 876077552 452738791 205427578 854704907 770695781 904335196 475679099 961797556 448349588 733577203 668524794 332671029 414952240 334436632 642338446 116266862 931350555 344318836 777419210 106283146 389980082 827959062 562992844 173943950 984666013 202378304 677005936 825177879 295116710 12447343 419910907 104644470 681878153 983968754 573757299 489922338 755949656 98642103 256181273 688510325 576164117 296727236 820682578 948261198 560102793 342294491 268808233 874286124 79752055 434078126 848754310 590604579 857892195 917102598 674766157 848273783 95846145 120234613 639968060 328751534 679458874 113046561 28877748 356339452 370414454 491825394 667726039 730216318 94780131 744145325 659289536 400345191 726450009 503006171 513044507 318080653 537745604 956395946 619479583 300368684 515117823 72961799 48693082 47357758 230194524 323956653 719617542 825635522 867025099 467977324 739610478 242676589 625468300 466151908 184029329 585888347 397649409 383022466 990579238 147848507 12193094 392652344 31251228 472974838 852424540 78168786 494224628 47073738 450547146 338189165 38885642 922362900 849467599 977704564 309332449 889174384 434746150 989801912 224557107 407135759 396250646 953676356 408502503 98483923 761756008 115081222 209109727 114503516 951203679 384151727 695715093 32196269 728390813 929502308 110332055 712195321 961367315 482496508 138234953 365477902 354205434 586535142 31603385 551232606 503673496 675422655 537321622 949792359 653641889 453657916 326009225 527598444 209037300 650571728 460725490 883666726 224597682 942948998 199829675 946764351 659634249 363291768 129513051 944459478 408679971 983670980 255836951 731544242 669020145 213149183 424454563 900061014 51867439 231367466 280239111 917889370 62367885 237319895 926878103 152013920 492514239 198733162 26095031 144931489 929466000 244939258 139168638 473219880 922436654 250182817 826112907 812842759 965388125 529932017 224332498 549505888 536894735 328497434 553413756 530623364 739609418 626346704 636841284 63537721 229775944 393939380 57832033 122332295 933121973 985035444 966787040 456357553 12384000 960403184 35706148 17749479 142424338 195796618 816832877 758278056 585327277 378596488 473370940 685667761 704540835 64868095 444691656 382650419 911394646 140296674 775740963 380581138 298778467 685580839 401394564 527952614 431489923 360178215 922510797 390712 246436004 225964668 685224220 154792388 938155477 907450567 744436278 647756814 381255929 914752751 210851497 392845078 669500747 740644676 775765851 863131902 731864634 586441972 537515932 631236721 77456793 800063874 213118772 980820668 422856741 481471686 314788259 845388235 265721002 151857553 727831554 696478443 78043871 445864348 821942811 923142891 871859103 483411091 228884320 287841680 717580945 669715073 76386184 829611269 98955691 205958653 3885676 946929267 838513938 38382413 973855205 797029204 729847071 724128976 74837321 934714316 214427285 867955419 328434523 303935262 472962575 250656656 981997418 112521460 626115839 125387838 119332808 183741525 401044684 353944506 533939555 27425605 638873591 179536626 230744100 920566038 852048032 249717642 365928488 747710878 15530857 530727915 69818607 774444615 326827100 836664160 546109260 787736330 463513905 549617788 6746334 157610001 264868816 401950203 292569746 532050100 898804746 438375329 415914734 126185848 84325044 472210689 822506161 200118585 858619427 287118805 277826887 160885375 653260266 947959596 403420008 875640765 611334897 228651792 558119490 172142131 374724416 931664815 76389475 788532950 707787137 216273740 134912671 696693236 418924443 666428715 710354820 944583649 832903277 816051631 443167150 417913444 684916003 889863212 446513141 489852887 291300329 866568364 320173258 692590625 837651190 458716921 619438511 390640437 760580788 846405863 865372355 879692207 763460478 305668401 745770246 431408749 941218688 756184165 599868439 21205944 104782109 345738000 47323003 173727125 101335348 293947390 728460233 435404069 324713283 119481423 456411390 331852935 191666028 542481641 607445668 605264458 534982126 730425402 221328235 887205506 502293049 586769557 482559130 891512500 945372233 299299110 708257954 462838178 282078196 91366677 679242924 297245491 464264650 110322905 544960139 210836191 955176511 926662532 293711028 591895190 122838818 912163617 522128891 186439324 26913853 298723302 951730619 178995278 84409218 708441069 517451314 43585337 485306600 776677970 587228238 855312724 598809604 20351409 734931526 224650947 157049694 973968431 681842228 851153714 142811310 979028158 605737037 947047472 758405814 421616840 768218565 539442367 792143337 176153121 934690896 702505373 766419505 958675093 107999038 29211710 183112494 809520344 664461996 410002672 472868501 224255935 176706965 739715501 245709286 409283934 425434856 714085785 614211006 838029964 263934171 318143322 540894639 732678433 105867765 41702595 205884686 735624487 986821270 746464761 300342650 609751175 755273165 602114485 194846177 741765064 594347005 868655113 971430964 512450452 621126433 916880768 558392078 750303832 897174890 957237842 546811815 763621884 715120105 96877514 646410403 249301839 159352824 762312442 849570576 118692080 158440169 637525829 987609909 861939535 220889021 404763287 302018862 243905926 432351673 314879804 98437131 84964075 116947981 865325437 957236736 442930529 505879389 584505443 551314538 10095313 498875089 243918414 65820118 445730623 234203514 167501534 179511125 477327253 48056112 660900234 978687142 483660814 40685167 818916016 993327908 48336259 487340591 411965045 660901202 457347730 998228053 728534421 363887668 198219605 914998588 300248767 338403732 732076119 380866488 172321131 666662878 511056296 239408917 899634667 412883979 27382402 577612534 711027319 136372359 475305947 621835126 234611771 752010763 538079535 602141176 333258108 614007627 466776406 655160861 756374170 364101905 962928001 830208534 11275817 667675087 54671194 488408238 676468650 842514643 598853575 858738702 324250681 351605237 67090387 643939640 170144768 84086927 34098910 665734402 235048088 349584048 301153675 667330366 863124145 24572278 661877811 828197232 753731887 479761487 505330192 800761979 71854743 100396576 418182225 264113943 635727534 141111649 749493070 988988686 41832668 431755581 771209925 5974832 276711365 739550102 719936158 507133303 602018918 689373623 174339218 434028026 254825595 348798614 339932083 479503431 233210829 407515578 551217768 274084244 957532636 552770813 184575166 930150426 200774878 453351389 375987434 784354597 477891738 17343986 326768200 935654920 116194128 451362689 126557416 821908011 337352463 244051211 292559340 78060539 35006545 412551373 262752011 336477496 373705911 428903520 531541238 586704341 537209155 839406938 917181007 137643409 145203265 646641614 269392148 377456771 561977813 353390973 146344303 984587034 653829348 517208003 933792293 886714939 848333630 462838779 254212279 697260576 255642733 16161146 283974722 485622483 836499912 6273847 653265073 331141473 674322372 96172473 957176101 849667141 414168273 238505079 619056594 145389385 253177582 947085774 938341220 177140609 522863702 494780784 338718328 525270656 259107437 817613326 804523349 913615250 780575294 372712289 327585172 368974998 106529016 122263063 975115587 576984623 179920708 340998254 871614792 107458200 437252080 335160038 527438250 139074347 951625310 270997204 543269306 870405756 980556218 39884815 812396546 745153466 615966650 832732380 63248158 580592881 107953091 213260093 242462273 164235314 258940812 392153913 438042079 155612160 444877453 959848385 835478184 784259883 220108362 162860508 403004022 233719291 143555164 612601222 734617450 60933498 671128364 22865713 419406045 283694302 23043984 798747350 52553815 863951209 964533836 805738372 293959174 646402387 974805899 271652295 235659348 593351770 448988311 521583884 992481167 710361678 350066785 736582511 77007674 145902951 286972284 582161788 450113893 829451482 393315367 455510537 589596391 988907833 183303677 158733975 752096159 224659138 370182748 784606201 231399446 993805302 70630792 63807381 184089866 394590956 397729264 423016979 196074360 457743876 807056222 117219947 727115549 299513225 493658431 798201270 758144819 120256462 797010164 793969203 7587886 405691009 936153214 878764141 203611364 127714363 591910817 578096394 3767536 834428010 598233780 995995135 81787721 666359901 862817735 743084699 869042563 670048768 412872054 443099774 892313510 499195933 920686474 422738224 310841495 33945909 497414433 874178383 900822430 343312682 729520490 872387088 603842102 231965915 505599063 606789638 222727751 677008905 891631528 802853759 121223565 974980059 436194168 945836767 437000898 32807324 313774951 96288909 721415212 279719232 378395962 819246618 714116179 930575296 802753590 672915227 553021913 243861437 847511414 791033490 660564151 693918022 589501726 68562295 357788417 493584521 440288040 209845605 74778687 113811154 467103867 618755328 180867345 538821763 941627089 840275332 458113191 928629272 748562217 927996482 19759762 864396897 710923515 819594270 841571388 182907295 842140116 591626809 938664990 744234638 857699413 400895842 463160638 338439490 709948047 56619150 738108752 499369078 456137895 562547954 968579223 500234713 450221489 802428907 125742044 910422936 923965229 608223471 428318666 324527502 596714104 111925786 23135473 204945486 929457950 281018961 847227356 661426258 876492837 620250022 386718432 908349954 159084641 831553781 449103375 854925213 535790674 96129804 950969671 815628657 47133437 174325975 848848595 239553795 207299561 191754830 213390379 646593027 107720595 380224743 849949024 703679938 320432462 794536860 64923654 172456112 150732401 289805105 981637683 904032654 70034435 957319874 525532347 510228481 98882971 462550593 116201567 95266476 518236277 466611136 817877407 570622753 635759521 554122845 386886045 485422473 426576252 581175460 789815324 315008415 56191026 85191822 784386260 805239886 182922905 898969558 775967961 322669444 175119196 637486978 646286877 890580682 813220868 933045005 151420872 176615014 298594640 120481410 421184401 767455261 76302072 222207340 907673170 586622552 997643843 596414415 332923165 714208578 789258523 527806757 693876760 925224032 592132479 283592368 344164672 804572284 711209540 149907310 244521325 678200332 663236042 318658920 526683102 781145560 162454033 571549900 528864295 550035699 332529837 323797277 680731247 113779507 841017607 139709788 580517446 481830534 27123381 890100831 218381895 2084775 296118277 544889587 187012006 183991865 884405145 907720531 378343570 73063956 226963150 292159110 235061443 112759543 480047511 464711194 576779297 16199983 598378008 981110012 413729203 223221583 478373896 78072962 506011839 85990670 418677065 71859780 275858945 750664690 500629700 481542843 505134878 363186423 822205089 136079766 447045136 22795288 431515010 322428929 224278479 900909300 292679474 289279823 3048838 839919851 445099965 760729201 498758762 118246113 568746658 338875654 14740355 10027560 182475699 496583546 398603924 748047916 982940607 905880354 444886305 55540390 396413239 83939745 155808373 158907490 980331090 91909292 262045746 704698263 941662928 976181736 654552147 570638201 415624306 96619166 995299119 25756967 657958231 878766364 237064310 28222776 600215266 27265928 299329935 967858373 440477397 2612809 447842007 925976041 300702761 516319068 257648825 903699116 222512972 473141919 938018966 184498657 552355849 972624126 195466710 450217604 747116584 369302287 197186445 587081266 935449860 89394594 964027069 657123794 546684525 46533711 837374512 966747529 488652572 551706387 427681571 839895102 927105981 199663156 603848488 516038097 36348758 795257306 767406732 705155354 664053248 234317516 823105305 544262044 877771617 734629893 494714748 869982611 548826792 950341463 658789864 513990739 997977548 805468650 469683788 142467285 648137708 609673407 647859291 662355851 467313478 467145250 814053216 296772894 495298793 832285524 645575096 23049845 405427719 599782196 626777188 175227462 327257971 662919020 219176711 560652977 582045355 934891479 64925778 446953800 584500064 758346193 799870584 167292122 966342501 146744053 77701363 389023960 579273630 741459038 322486344 108691943 802818452 653993865 956359122 136908070 536833882 834667192 451311040 504518444 432432592 188412266 839742061 231534882 482387431 608450871 670421507 439846157 48730080 907734886 345791686 588751303 44883069 403613588 641653720 380369449 233936121 255727906 42042974 380656131 959687216 375496259 898313913 74891793 487072682 892827319 133630493 659344655 766006846 425385177 476822554 9216922 830047434 709077659 217647425 741903323 932465682 441699142 606149336 169059526 238143671 903198870 477943623 923948951 960300055 651354216 499771016 983321205 246052081 421026451 137609119 534975448 5559637 484874265 157101907 265477133 999228480 773239326 988891247 591813638 406684283 220319148 156651293 984332051 519444294 772724911 263630614 804607932 501586087 570386654 979631828 624317957 767245021 179285342 701924336 912111947 639021790 156310502 244455202 815147806 278815003 868156110 45390118 23167289 664172106 337806998 831611679 368518775 779973627 940404801 814144480 71587576 271774966 535185026 89991191 670179252 398482359 60542353 383772561 701073775 819878839 784090364 153657650 764103140 6833609 604439998 865449532 724463453 840027916 497923379 927602525 793713977 274721112 544467601 348188967 549656751 265832602 712770563 329670706 57067400 750942652 122448302 447222323 832684701 628328505 140108985 936123591 102387824 389657924 45838648 240368641 654930992 295471289 800588853 329753109 367564232 58267016 66701782 198574658 846533218 309728708 277907107 176555545 278937178 869570561 820032941 106194923 659349645 315086705 519292349 606793349 946065632 486385818 302205057 154116935 424293767 259786990 150471209 146000692 342770274 674484448 83077428 11944344 220643212 189633668 213514704 196819826 680307001 249008675 619016056 149715218 85383996 765133269 457341211 465201024 71358191 53150669 423746241 437892394 53338588 780611848 82249332 82171818 566294085 715235679 778786932 17525790 25451968 662628621 979006306 631677685 878371620 794651324 783348433 496146073 221270648 500029763 460124665 449560046 859680185 199327641 590146769 716683031 628321771 99483984 707324698 10281213 755091330 75796822 206362962 838623564 635707969 818584922 397274870 848932242 854768258 687328742 817622615 732857849 943811788 74611553 749526699 643397295 406901835 807297545 709576168 105539787 59669840 885491408 240602438 846586893 344767578 973499428 976676789 336810063 145799945 218795260 290928837 571600772 949561795 522894984 573892727 681397042 832519522 738482013 446982810 525422421 297001527 418357809 699071158 793623961 160656898 70510696 17647756 626912804 78987155 843966611 139128869 333933382 813119187 726392257 964043133 194040109 100386292 651111901 820257267 27955021 608397526 41686541 572145293 700429827 140532396 341157125 914865370 846886639 735936146 209616252 254764178 955808240 785842819 889571771 396806491 558691146 822455515 527169485 559506317 886024123 876443922 59914599 457744374 478863829 589860870 608409190 54273207 414763852 464464144 899584791 251062245 588241725 586180397 390327022 170895772 375872741 566943782 810707066 91116465 457326425 685605107 590411369 298516931 100427494 39011205 865304294 751711072 899189061 593538853 829050376 864815147 684642437 330562630 270005029 910561388 582405228 59280442 61405722 28790076 400980010 53407198 452723400 918247549 162873313 486709015 887419875 54084431 579596275 598403444 979373366 752746581 526058746 127321880 758969288 600621320 367312872 913589655 909558997 367880469 665188203 812777005 257752826 412195514 784306149 753708373 201039949 945757809 565386815 482968113 809929975 351534468 813754762 807850583 90702054 751138137 811918200 937228484 470698356 373116622 820457231 928918754 129367984 592419380 12858710 565379184 123480234 338569520 901387955 627203160 148759593 474570979 715153942 573118070 599967036 3220626 201363738 606976552 784703427 161567030 808641438 709631020 127690382 221421666 802405414 130066459 548089152 234481763 991538235 690148263 724523843 113126181 635688623 814437365 605385673 167734263 792752873 826100234 997873907 686685094 982875538 142035357 86499176 491852146 306630546 92707151 785777958 395009793 88990408 939201072 342877226 378467044 299281015 788400862 363476008 576980355 47049904 203040113 49082111 17058644 434378928 61367073 370730793 13900301 93706971 927491743 779528651 365631097 442273109 174080350 798805169 57125503 318832606 923584918 943685204 242277418 106561716 216796338 341576562 749185504 572687665 560956194 588254864 987561461 249630290 212602646 204997424 896445183 845726881 290927235 98252627 853716315 357230323 545951434 295081743 68249107 261576602 199282831 729304024 461794603 815796561 906275436 950938376 530811150 173980186 582503820 453398442 767901959 219244144 608973469 92736261 215512053 79611789 514344263 767658131 527759061 233981404 482856969 701618660 117074723 791501088 427734330 35412475 628553629 555047925 827479196 487211155 924541733 923415854 813688720 748297308 165187445 391583183 900493160 378959331 486255336 410940437 695754025 922993010 664445003 829302660 215945945 391626339 796154126 774542234 583706058 212118246 322772366 569193947 463190994 301857286 989988881 382416141 161655249 244162838 749156178 160182459 24362476 285981366 866129432 326429914 271531429 574778145 949022009 878277851 293708507 748045937 871378504 476016667 117173182 842357973 586901931 424391001 722462250 431154755 479276376 513031200 49120848 788709928 911040599 145261552 643972363 584120651 514627108 296233772 874137188 578065285 675852058 116918385 323685009 920517691 926197399 24047791 246926817 423287150 473405856 587706137 26733588 605723140 739117669 299507634 403134244 432512224 904430118 943676090 8507058 918273352 912449103 476252789 749423332 362372412 438590316 114110872 700788754 339686784 239513530 92934488 993262227 786810503 815908201 593824225 190487404 670760383 842694011 700184278 393912462 264019366 689314445 939116908 649314543 908379265 458393272 789291862 451866984 642511068 224491969 412879030 294470012 76324898 290728063 979380490 530559121 890238437 171169412 550690438 612522413 33331326 574694566 854930594 687744988 515807714 303107133 105153108 931215747 106507888 84354918 594166945 687222499 538197389 951052027 30478735 467206853 130602515 450063632 46353943 639707210 762368015 62372483 410815913 742956171 782058054 319279507 312001865 129143044 994380714 118939001 411703503 551860449 204854836 762576766 889886999 338984971 748950612 278836885 160484841 921147419 645695508 53308798 967970891 940741363 374536593 9309009 209440941 715231229 267448203 944798347 634551617 495767703 269479498 175776985 572191609 176715565 720063936 50778445 861574769 35991913 801141614 912935327 621376928 208747360 903776415 828134493 252672797 957719387 331849812 726473453 661408328 642615976 58581390 770314221 172158903 83323260 970893289 968228949 834505283 900887565 539176118 784058068 112469614 417217891 655746986 498313891 834106046 17708522 564168919 791319620 866825475 414582350 461129648 749290359 863079164 811145695 360052370 256214676 831782771 543149055 452630577 897582132 147599964 810484313 732827617 272107330 712513645 252928816 31850012 247389805 60678773 401076092 729562378 364598141 98407797 431954162 435544734 636774020 936377262 777611946 926783098 36724254 570421751 549799537 628540495 639199708 289943364 309536269 832463183 686130422 64405340 382147274 608426081 508207825 784881466 886742970 175542679 572298365 277749067 743768231 674627992 623424332 363891158 767196364 166654767 782923252 282220757 173170645 100373231 439819806 84606177 996868455 945599143 801077322 161421512 361396084 123920416 445751908 179771254 368308199 267705408 502518927 149435406 273787352 804417681 396926786 951809130 620743513 682590317 844194679 191851832 296786814 149593461 695928626 907756575 311197415 677768013 723939697 920307260 771754392 475461932 82647748 132720232 239997251 286857648 948833722 441546432 187493715 986533249 725383598 235216833 297499018 661091914 327752505 97906972 394195573 8341170 870053656 866362250 238159710 287935765 5372447 136501271 566489761 470868077 281690927 544282717 387537108 366180110 357011287 111416722 520622263 347292093 389860094 709270666 738013716 824496460 375629568 609415525 791808133 930104693 907068719 11309897 929483159 478068761 889342055 500832700 735602543 921433021 228155865 810851361 369514031 735395972 460177657 241975958 81532808 500618712 896235673 307670900 317978384 61918109 385297323 351171830 649765143 292302131 671862359 130847136 325002385 984693134 658383324 758247119 259361305 183276998 401344332 333994254 506078840 675356592 171443263 114486939 944915290 732348419 242937690 905051431 700708312 213487840 590772774 497434368 532528932 772529398 409643286 415095744 613124463 906926182 57416405 302969800 967031451 66691757 954001961 606528695 210787661 981910817 620433432 774816664 320503089 68220470 898930916 525230405 418212606 600980944 405705145 855471068 37531848 167707602 506363304 123945637 402612904 61415417 778768395 815285537 835040564 471066842 624615404 849850303 117350739 737876802 744220829 293700849 149590994 649164805 325982400 161257052 221647292 78968350 455075074 270698945 452769149 693468610 800663435 312498790 522478304 43384528 852377554 297019514 56836804 438245246 365776527 457816039 82388298 673149337 69816322 727363813 57601008 237834646 789335955 93656862 179918230 839060551 166864110 121973151 779891058 264127258 48912050 399214676 737484694 936356120 306408965 453548704 712576605 262622481 117602514 500830573 990615246 619427365 943569503 267960724 405445997 746138247 206651805 651131645 528805129 92810419 497734896 554673858 315765537 671484071 30033689 48192539 403411659 170837859 159815354 309011402 32302789 90148544 138384463 752411364 382781812 744851105 537978053 562858097 182971583 449363585 589983341 285230327 16642373 912721903 841938252 838921441 189861326 157459202 812898588 445100551 308276310 955902578 608900439 976617986 842391303 704040125 872620947 929689093 824056991 26333280 317200615 896026880 612319961 30255667 956903034 407553845 90631156 592775615 514703209 814489927 446673582 864306148 495069131 24144053 772210798 761711982 154546403 883511901 709098787 765115873 186910926 779865329 92416082 154582298 677271908 473244398 635829032 41718549 884685207 681904185 228068352 525941856 351492854 891149276 905913494 94911758 447778290 441434339 30660928 192098727 76982705 965423141 765399297 404471709 278913974 565808528 830701707 401961961 920236429 320262645 69399803 536759013 16457943 727627693 268020900 664427954 161379754 76871333 813797142 663593173 782752589 963046137 720832581 12613120 558834799 943449607 813983239 526591327 674333276 999730400 894613623 318500282 135679221 472619156 36850360 74828479 94967062 270006619 422825753 962732414 1447358 242018473 564977073 538633116 799734463 474609024 743160673 393974506 268429919 153014148 971521166 170053395 662717878 875471864 204530095 785059744 22409086 612825126 83822197 948022523 968238562 166263585 669412894 730233651 365053923 906844057 990784149 956967778 106807058 551493084 772996004 685280622 730929202 996940356 664145037 533999526 566726563 427301448 599477973 827647909 767162812 761969647 40529735 51425102 918520286 489405099 193984380 616960852 850915210 49766238 462914532 205228739 963977103 867592755 864146898 607541693 724699702 361129482 654714392 436851607 139055506 106353063 150206987 105259068 206373813 690146790 628585647 396638407 322328322 941916111 376122029 513237758 526738679 125735877 267148504 543424730 32334662 865337387 573168997 374835393 629692054 899840509 892588907 736496406 114188532 171304380 872959086 639869329 648772954 164979588 400731526 926322552 231554335 376069883 651347864 498547814 761655568 958954667 388945367 143902318 884792573 447474574 251074371 480155490 574874457 608318713 463031388 685980018 164439316 786877465 857486897 761787937 245383844 124087892 657492791 511621014 841835700 299671534 63213393 349480742 432582366 178497043 361999693 295130492 977429511 649777978 133752089 989260359 802890347 297467942 900974971 593219984 32740979 67243317 607152797 517033703 754402992 329014824 379479533 93390831 587862610 79197176 441171499 98749414 82878692 151882640 586331729 134548297 325365339 688190671 597350067 144885270 973896618 51547584 164487764 213183610 667246108 585174208 308552859 726740614 888290507 162813067 350700921 892545174 588818894 147824451 204410165 398448447 604893034 469871224 380447863 762535951 220646602 682945417 501154220 801913321 952609485 117844139 845781662 857817846 203915992 108597716 117518688 194833772 207278633 920685285 23633566 359586848 309789690 598578666 910466125 237860108 549098362 653613009 831279200 506307880 90644079 220255377 423132410 671516775 965673097 682346464 742161292 167983817 804672573 104883987 452253757 784184041 538943288 381466193 874750567 109171459 416131046 212670690 316643055 84888062 611608837 205725582 124755722 785585199 237568330 362070139 263331957 107495787 540750896 391368171 932933428 299172613 659042019 595996190 402331308 710137778 758419554 703457260 70857285 173824736 927729594 830238538 593134091 403695923 133624267 6114153 124223879 66977394 649106870 254737643 138784068 616399702 765025804 327735398 40290525 189823636 505695837 280945015 905485449 433412923 896407411 976626831 412858667 107431949 964266644 548374817 626919330 280559147 50474175 914810736 272725610 234937237 433722062 618204237 741818325 924163357 261030043 986340926 905881494 528452400 209221909 336306293 754317215 768161081 375051142 716553649 704831395 824083081 861681826 188726365 513970146 54440100 321798261 320374100 19539420 95099603 131072585 620216523 284380003 845702837 240733716 48219509 572397186 122024863 136409703 736815512 681449581 81955398 372859290 681652708 686441266 935906366 347518362 480228587 658153890 340068335 975805402 644637968 590690903 685324685 74596068 327968290 529871454 34178481 888037510 4172562 147600582 27723955 931060286 545869063 864815108 995119444 548493289 557322165 556901538 441210959 627335900 835601155 119793628 570468806 804597331 203746069 235619591 801074060 241422497 494233226 567695927 839001462 924992962 604486477 538091484 908542622 750595902 474589484 859968655 99558453 692748489 420958608 177846860 995953723 115614024 115297520 473875072 810518178 667683861 969377672 169203668 66301221 172577078 778641102 185299298 117968076 137869321 36999494 626202678 478783682 812581894 223841869 183473827 248084009 862961825 556396342 307274590 150795937 603480912 799788791 284298669 731667265 364650822 583788742 153661685 515510571 225373922 452900454 659999761 288944278 524749006 10639467 578396172 686086813 130307711 934907957 191118854 978688082 334152041 215811599 613664960 514190235 594171607 591519153 404190781 993188316 768604591 309013807 897163633 591343742 662786760 24570282 734731009 100655535 446324301 608112662 966125240 556251464 409737307 197746622 44734812 627818386 592198792 966031432 591169830 51707384 123748145 810580509 788196183 728593140 423240005 433907657 209581082 918299814 955139250 306592971 642614932 683833571 405105312 569914741 576197115 87133884 903070827 725191336 205038304 654161670 624846505 664770494 353411759 150789281 398641981 138518078 544405618 908436876 49723992 614707129 992421289 83521712 928801421 59038983 525054426 79751759 103003088 137537934 848992890 512682628 384982494 825161437 339344058 503956445 51561169 923677022 859315895 537606435 808521137 193209268 433154550 454605793 467338349 777935461 539411587 32397930 118522471 16463522 151595334 966553018 144609158 493146912 139994044 593831275 105288719 456218682 157934530 274601419 232965409 829179307 133597891 880454188 441945454 737208266 860701673 536789714 62929306 235406621 209732864 282589716 402602171 607424474 495864073 88644862 922060015 82837004 352122920 22740720 285104446 529636865 657911407 721934245 744744528 616176700 565844090 240466751 637737688 32693645 863814092 350844432 97525844 1777394 780765347 399572742 287539039 884442090 60176185 772086110 40587672 451741637 298527012 381753493 959235049 455881752 644169048 62243390 173217727 658084697 443536148 201757853 24169833 579683351 42219748 280840612 483176728 842801418 471242477 665414880 935060567 744441856 900321585 362772553 537663964 420396542 632493261 287325798 527443864 787079877 342725907 46756052 608266581 216835460 475532138 580283956 346395270 285904834 107228215 670734867 577900364 46283047 776376019 210597483 52243197 641440029 670511162 825401473 877085471 565823853 569600916 115899172 181704646 967784505 290294424 711583671 882583575 738853234 337046783 874811825 520459878 628483042 643373272 777295942 655184619 434333287 164939474 466143357 443429292 536593578 533359774 82654997 467771610 883738753 580473925 486367268 905912976 713427371 29116287 524696518 397548358 151855826 674686821 418101701 933702889 818962137 712605380 703072694 6819576 242927192 557256835 96571207 593279124 841221076 794094247 797154139 221360411 370897886 210468472 763499062 712201733 580537072 238137699 621792610 866035701 577271546 596943929 639461437 187544549 777386985 271994837 929237189 334635903 214766520 574718702 449071435 635276112 93814961 171888149 546867868 784525402 401058308 624523293 739160571 567311823 927023207 988103625 427518389 978024033 594024208 511176833 976937152 50398498 115920489 664857127 234157135 916700635 234143699 217447850 526282073 884223984 18696511 702048585 386593082 311642728 355675548 138676687 246661420 643177196 391778087 481211422 645199496 305380460 821682821 36136787 790300362 253089290 85919323 267946697 411467243 498507831 331985345 274991793 144697112 438557490 231698152 234485049 653751168 903967726 82172777 914226410 353789076 758291313 602298521 321371837 232483713 248313033 857147882 379985082 858603385 282405434 696398446 745978540 563109530 687836952 5086684 69612734 667923362 638438806 217592291 815760152 619934844 581098396 555418182 619110946 403413722 994827361 52376937 965028413 950333847 923469183 968040761 304910203 460349086 609019649 237344650 69235375 694787469 939548346 955488488 405840637 107273314 512613406 146548535 968277896 470511146 280486853 190567757 148589527 512277914 816843886 991172098 635347168 793795710 304533579 15168042 121934146 228759085 691434894 594178964 148367702 583493716 184841303 184997847 924163731 937661937 634165400 555923624 888482280 959820284 576669888 837416406 78898482 715303953 568098328 42499762 14633034 311777036 593863531 51292383 127361440 815741027 309272003 220305092 979896356 760389197 309092157 876961173 730338645 405680995 718906604 951735931 89590024 384838629 747950692 605720430 366123676 431919283 946008615 181919211 458848273 464279631 985647697 426274261 122529678 433086981 837887128 5553991 6954412 596743364 371277106 934932088 656579473 795542440 540826455 820133258 466720543 7936644 346827109 994949664 615568903 30266427 618448427 353692746 422529699 706573294 778176993 232582914 853274341 743469124 74775469 13053839 930888661 745906276 945625195 676505877 521248233 185080804 315658221 776439356 744151822 39702535 543547133 741800404 291737911 173706581 115053414 482376507 729575394 698948484 992174697 568842743 528627842 331240615 812994555 556072954 728508384 746578316 697226996 51717700 743253475 637980101 983167521 697690635 368656804 925162005 756523228 339408491 92900426 125728320 51410170 215805491 937686448 885533828 375603256 668440975 54555575 688728189 680437517 244591001 291446178 182195136 409382531 985298577 808659022 917625831 891796622 459708784 50919357 181206799 505538763 286785492 251659986 220176315 728445828 264847675 327104098 996857944 432721754 102300738 136986636 765941220 332242631 461626137 670046499 655415036 679529581 664385101 499277847 48230254 965788037 832995685 717508857 238797311 114392307 263565487 229403194 774886000 747549386 571543165 102367884 320810517 478076304 526109885 926674695 198396894 429744795 28387466 367584229 780807082 536313608 958587048 382992614 391213656 857645817 518157179 638062650 96965083 802516222 712260840 48723302 561815528 843420509 74681089 87659877 345300076 577535940 408406017 644901927 466200832 423454060 115716808 953219059 465250719 719620816 770983166 253992924 189017059 24985282 267481962 226120444 895224678 293482633 358888962 604767485 28398060 691051930 336566996 857399083 393298030 812201813 840326119 863875873 96086462 151406958 106194497 296155830 690035234 807845934 266510510 531515512 381251731 764266857 670063171 20809108 548369339 272618959 337079586 584506741 388425040 157236595 231484706 479688898 704042888 332649408 302800970 26428839 772519921 241068609 694604918 790993310 920826067 201156815 571824559 425620875 465409769 293375198 659055504 436742044 390096366 920060406 271525553 465148367 584552029 257109718 195167784 443381557 436750036 28732547 879981464 510438810 248297423 304182522 797983848 656224702 19144595 225425029 509324219 20909610 953917368 42622832 794527708 639691266 733296461 190069638 969258796 11154609 528981915 432184327 996459659 161928894 290414925 311844472 678344449 107826784 906409248 248964407 558435941 192399067 968673450 794885490 317926576 694799225 442885779 540180476 664565574 372202747 21428821 989279169 86242570 72404850 612744583 67590528 296259709 85951633 913489897 604662637 244347760 787366074 888911822 6384089 220768452 748134005 198845865 527064190 722415141 221188989 255361810 568637664 755272735 26486521 647097838 500835332 635420468 895050827 803031325 107833842 128184623 974707211 262831621 2940274 501223429 748372101 178649550 963208004 11147114 109923026 150065039 874664483 632047591 655685947 372903178 158102930 337737994 177125459 975675764 566231207 881682704 66341751 602267709 74680342 667805846 504249818 806327749 390367573 632909779 505123054 634642178 57092835 270654726 4950749 186418016 109567924 603282879 353405957 476935667 12305498 765351712 587374979 125473765 60359974 395453191 667923308 887912897 504069681 817187559 877884591 530420188 263967887 4555145 606390778 325270484 494242976 61948601 322089282 261464869 768027587 280327198 120684890 195700276 325560137 138782981 336596955 738838871 162607891 186920465 164298368 309957945 202936800 70782692 189553967 815641370 936549876 97534730 259073988 992562078 349617958 968309845 762908689 913687430 24225795 315115070 939049119 660464229 354861543 802201173 682329713 130638026 2767196 125877964 275812513 785021083 785647210 345047055 744443320 473524173 397496727 895102051 818488128 198127153 370238806 176603500 564787468 965493545 933883198 622031867 628848106 824048559 79107632 54099405 65634261 23351708 222896423 159469790 787010707 50622560 917340560 711571581 601380761 880277614 560544131 278241204 101611811 499949504 369798258 603689943 597618994 924744498 584036957 680455452 138730036 263434488 995753893 691013233 552191504 957774598 184404731 261913948 288098421 847061165 133097582 997433864 974961366 970900272 469912150 191624172 673780084 901062312 115620242 305143429 994301199 162311816 886758967 879422175 302419952 525339427 493614942 177613393 666828737 96372821 392342818 589500924 195000894 156457525 223879883 843380982 406904644 189830403 55314408 443583159 705454683 363786648 295032518 906263959 256746353 9591116 251242362 197273581 254309228 462799585 660845232 888516760 671933483 635847237 950482905 98399004 337042388 396151599 472700409 274973704 143338371 862741536 868180428 787603335 346956388 528671301 559668180 581007326 236839853 460710886 591739039 492910214 738047831 991096897 973346524 177774954 727746400 322336171 348673771 599943579 724777037 360844559 916737311 141104036 349607035 148869901 844775891 121522136 697794791 691301988 411558813 171751618 129175790 663136903 178445345 522329326 974662496 799397418 19625777 505257761 395364928 654438787 659403181 989668165 402990128 918686857 673626004 873756994 515532884 351237106 81472437 543499893 367242750 300915576 476491199 963526130 561036903 948747719 262710368 472879868 622926867 476804098 38697739 768104934 15526441 597117832 866613447 184013164 158889918 674774686 871953846 748102227 512676477 984409652 482923041 76575929 88403315 33598394 51738962 564946185 815328799 440224834 928158040 135767089 247926790 517382952 947240912 302299702 660230313 573077586 870173184 391796920 289797198 116846791 394493794 23479425 169486363 8175040 42465331 895100750 712900928 490494582 223587189 859169330 251552711 882044006 387349012 689751704 311216308 322763678 627527972 984785587 546392501 771462486 477938310 428163999 716318513 493664227 231779638 25116331 500976986 329288145 454196138 119398238 732598591 496774566 303488080 885476985 38836268 668975834 681873792 786145315 669447190 7165408 438274 143582993 166446988 945998178 354385290 654150367 677346919 986348863 135994389 920295311 184019856 671532829 657715174 787357445 311340812 147808671 542938283 114022535 49645817 380576290 701926538 156166216 703479520 121507342 980498712 433071645 996372326 932229484 869605075 75848727 678122153 510448683 658984132 262182578 875217062 685547368 444152451 375588545 971534745 137221925 295356959 336627391 408840738 810433124 921593938 826292624 437355595 893431908 345122428 599174334 748407426 492445135 143928697 201968205 68924462 277454411 833936455 292468099 262826439 5777095 716378155 534927605 682824551 894857467 711488747 874119806 931096857 790546533 286601497 510978375 946016878 484744855 827082141 521326241 522521883 611344712 145364444 677975964 959576981 330825097 441251060 599920206 562269298 701413200 377152253 465696451 614313319 173311271 962890208 61789856 574161768 335036696 831316543 132282382 318288982 898662283 74222474 128073719 332211038 260016861 127756660 339137187 445818744 826243649 783404991 533983738 90240076 429664601 781095434 714110955 331275832 288803230 173389717 899485638 178147387 467492466 631925456 831406532 874204500 510334079 683886115 672899070 243003668 94716486 697361277 972611864 973380784 409137908 849325523 502198565 956031096 943841118 260645834 23034361 240351966 180499109 621462549 458665112 231076421 28489061 424175459 896164789 987249806 998628995 301472058 277917424 257677260 221952659 754834006 149780188 32673389 54503918 119849661 60542193 913746568 665542311 463739837 293888928 739468182 127366186 633929814 497884683 847350085 954003184 624728881 262983102 528905267 751418656 881717048 238301407 489485747 605343560 439505118 711408954 397416176 884551305 255511787 8953149 602824248 707460411 768545103 891402153 711717722 551267068 494086241 518645453 734360545 519799480 476950271 781223757 170256910 912095967 631322150 460657720 357237680 940181419 872431549 96066518 21891689 936139158 970038512 691461452 438803863 359744409 117646728 203372974 186222446 775325200 401182049 312331157 725887181 516060238 900481295 367298092 454478269 91839408 523406438 652581122 509436042 296500097 310449363 467271078 538270617 754805057 681585792 653459847 961101713 713654400 375434929 287868808 400666355 306592721 547867829 271612671 568281865 249817198 817965476 996944577 961099952 623146419 31989580 708809053 381359464 725766742 281234940 44850189 928070857 410499035 876095736 940124251 904313204 191845715 107947128 134881451 72852180 220288542 150607936 982459476 567358931 62331817 96329312 757185187 191562667 992730620 217604719 797698357 626687023 213646411 94101057 448697833 202187688 996230522 410490342 467787721 671195551 925598845 881951077 469707472 962260779 625822303 695018939 854618322 193118487 153222375 303874563 630833469 375870789 701847347 751998137 18818260 161473715 798316992 769129861 551277476 740333623 973066585 562055172 910705114 556624567 349254385 212720315 505815663 391606266 546372808 73568089 467495902 144635768 689296679 459313886 411717147 199925156 687243102 187126330 826209719 81990045 928738369 730121475 124245084 666935897 228101391 457573946 984908518 52006942 684803486 268863336 18256709 580603819 937175635 655238643 866692365 241917020 223680648 551209310 537315097 442197941 534267816 876200212 813561731 990665103 827054972 582850061 907744023 545630843 821940616 488024754 504501808 840437084 18307068 66200940 25510900 787990990 853185780 366997274 632238426 17701378 239423499 260178992 326138074 316946904 570673945 794940678 423540603 83439745 820679081 963148393 429463940 711988841 439876120 88929899 408895968 87703475 879123717 312303088 278657224 575609691 960272486 334688746 311521817 769327063 506171903 76785318 664527635 534095668 891099882 361187985 448897977 616602862 538916045 899713001 966763531 861904379 130837581 572173099 574595306 989731933 556635595 328743337 387454202 822564266 839059878 789369303 781350986 567440878 316803913 51682997 281894804 540276422 629242345 25178738 578552245 937675822 419663449 890982656 396199754 104652407 557830262 401384349 398136084 551840927 218957366 98008582 21147988 808617774 328141028 414529725 626883038 214854325 221089276 646894397 925718654 268161753 562789961 521052045 467751994 423223839 315491468 334644924 161077874 90669688 523789690 549278216 466880180 166216245 834547201 829960597 979711465 578660694 820509985 370204794 32525608 2530332 760518409 658913869 670373731 126766713 384504919 116768702 55012396 578709261 867564975 183502954 55621869 988319974 732074245 75708081 323183441 298177524 706727813 592501355 388170585 454527181 947241602 19834699 5957492 477478789 335684916 103720664 972443807 172841761 271106338 933712564 449960470 44330441 147938200 17008621 651785473 741356543 646642199 852241939 525384613 636095615 723846456 608356011 73260986 674060092 75749001 442370267 529068990 660048283 134394349 6719691 652227220 922579224 784799054 333775073 727863877 102613630 830707209 946548405 161961174 235505927 36066061 301088493 256819743 390962994 596457243 301392120 684658285 947125877 694626523 10757928 900142456 479066432 563543492 86319080 206406383 272879287 648295108 949971355 672523757 600799905 783963630 60115666 627230671 272958349 280986326 744145466 850349698 366225953 660316051 599412154 511185743 112957613 472927648 14662070 419795862 349095495 362249588 680421226 957049730 110206787 896787346 373788355 199824975 314212522 575606952 881238747 614679370 275992941 244032762 87042255 445573408 90015338 589208475 525585602 98993688 687150982 716070077 402767247 111848670 279257049 157615745 669481964 623216630 735296261 880038624 842314122 874740515 117832352 318000494 337108442 655784167 272868743 99391802 307841896 317369710 963231335 870844173 410907005 907162266 800621721 842352742 54606242 4115128 677596303 725790790 217315947 966186272 370423563 883175432 122534540 411720708 973187864 697751229 817659088 715014704 167276774 644949560 642096433 932925841 909222426 918073804 834162136 427256610 617420398 113485356 290856154 125449153 437489235 552225803 369719584 514559244 639886038 700413724 353775582 842895745 457362378 253914667 187327233 67757861 711035696 88320146 235616151 526118224 876174344 971663579 285329249 422304582 978783684 860472567 802727571 225790026 537588246 980573743 517504808 916377474 660754022 286193704 129719937 447454681 900185127 48164468 84276867 476093101 798592729 547234473 544833824 644407161 212497422 383112443 622331168 80834700 899181914 263811553 229002471 738712233 416635168 619823967 201245022 717497304 520871321 773337525 142435515 56717988 30059528 494039157 618720205 279416001 905266375 339764253 789379958 386626505 874373729 609265555 792368607 599806913 733543347 397762794 332209345 645242500 180854833 935307829 920120506 54199905 913669759 564027176 147450339 967642238 683284348 403016888 930232209 907388524 343311819 216976223 898110478 675064630 449052634 193411750 632927292 580236642 905909251 966043586 357175036 162685081 762828369 915708204 435419413 334336411 28049581 49211370 763173235 349776862 465532112 168339406 905204295 200653653 379502616 692166982 498564367 175880240 20572452 246630905 231167124 649296587 767271937 303560018 524246968 641313953 825475885 933643034 161650312 109025612 42434842 445546314 159469098 413440306 349138506 352104428 713228409 888875991 428731036 82471369 374652874 356784611 495913771 363484860 293991846 935793725 184656961 349300170 848910649 636185485 155952041 473507146 906037371 296634562 979891511 238180360 216241755 530721812 857652079 563558936 951426122 455589796 491128381 776447632 868061374 488022558 208123614 782322253 293368056 348564938 462540284 616086930 94292248 575308639 318340321 251002251 421583393 381503212 282918526 277784556 734497786 112234989 579921395 415851865 600488389 31637906 734430070 546916847 779233923 245485826 480038793 665843275 123518767 560335710 723472577 475157227 842388851 70880088 358379564 969217171 607075797 982211301 744581968 211207956 321656968 319871014 238905166 455655406 324402166 30993459 340907073 642413926 710186688 989336263 117887777 829796554 425660711 120864659 369207306 813507025 863125177 295543740 741898694 415618444 546228746 493072570 414187028 350351744 551189148 927368206 374682792 891781466 186968796 418713140 631955739 723026994 822978117 596763040 44646741 613405080 288335572 356863028 192527306 597481510 483095052 414909358 80126448 444501424 342136200 352278714 484771211 921968675 348180172 235524884 566513967 939023225 288206982 249096726 544876073 180609868 418952805 766231329 894656347 493728926 776728749 964745086 478716589 54681967 72471094 256396154 138185022 145585232 64267316 247222039 317056054 530059290 905525933 665515175 535373057 651105459 359598251 188713031 126218278 706975613 859399149 171689997 288396806 157067379 232234465 455808537 262503761 577267259 772074921 711084241 362070843 707629879 668809045 330029413 526779989 683423714 87753369 919814905 186561211 267605701 411053665 879434166 738825027 699035287 615979345 880759204 747435527 219206564 440259719 512245136 751509607 623068766 192120031 273702630 440707676 914260078 84726661 305084460 528115779 829936565 185944594 890841997 567842385 402089522 300972723 167230217 192558495 979150927 362704249 404992035 936529564 651219191 166510991 165886393 1298915 954686076 934174298 109944111 146604628 428309643 692201257 460697811 98148546 356905053 263917883 220368583 70048960 291504983 857610194 392438468 744705993 467784242 234586034 588486894 374968535 912024161 412532943 351177313 797530510 177935576 279668268 669047034 831682100 248108664 64483782 598523958 97205512 291665611 550845757 988979931 775685124 950082027 616531757 109589661 436652653 849286021 991337591 617161087 766388080 225594545 375278667 148687707 795092100 447231760 166381206 547642947 2153563 248316485 893760241 496838047 160017225 624769983 621159574 734368930 712448728 172842111 629304502 708267915 304394103 518404587 475560735 788031762 142052963 310573682 152720524 929784140 472979173 435361934 688647899 893390077 974806488 270483965 76663523 820644850 343682759 473078825 436839160 37681396 383966507 597893754 104632975 24519192 492185451 230430128 618341674 749319798 386391088 386544042 360266567 929385197 365193857 857563382 521336057 473718429 432965464 994212978 269213028 465239842 130603299 531678709 739306213 904033155 808565853 782223556 758016746 434580646 655224925 621463099 964820560 371917298 441957118 345979498 291377273 756138340 113140418 187355746 616001540 988143473 934869295 905153094 582519729 438038658 915961409 45264598 543407768 250514960 948798816 227883718 341967026 550532260 346687507 170114323 956471871 988704971 984824208 628180039 992984579 319779756 220388419 771960903 959265300 797496654 713959580 288123529 259685643 480012204 542220172 898086827 912428722 57306380 102545591 911002762 211326226 386644509 430187937 584877971 966560024 586222128 980334621 756154499 54985869 226991625 822865394 142710128 192878717 50982860 525427966 589212349 288097326 558138444 226542177 182394591 928465065 881625793 279485961 394342758 305182637 175830423 107238160 970527939 758572276 353843378 364629961 274723386 490366039 208192593 101154707 514707878 611389113 54634286 928354848 996468141 488094625 422828991 123764250 686873617 52954918 279007302 481578344 85650332 529022223 281861838 831424802 278338219 592370634 945265056 186848655 711932693 920890155 917635632 375834919 629289065 750492555 768725165 48863671 917614177 707007214 979629673 849864222 618867883 656788250 68187352 844222934 615210993 344329773 161096768 897170296 327521323 701751436 422977935 355234806 555722022 356463786 994764051 796781670 114548399 413147477 621800666 571757198 68447696 23550035 350730189 991286528 110186749 425814704 619364880 633561700 530694001 540038565 523550246 856446881 669382093 559067974 920773653 494264976 213562975 750059227 717642268 675957056 31723605 717225617 554171503 153978356 954827617 606162016 46069912 797752819 210911543 543341057 54144639 605813337 617517415 760147946 234059354 396746580 150777249 153629991 444675908 931313571 519874431 964278697 632888878 6030996 173581974 136252237 376178921 664078630 150576577 334031660 323332923 844512274 494684377 900163290 158874705 518797631 360381303 4764341 865676023 434237404 202539712 870654866 947831109 976260820 138706177 184550119 761184398 383571741 868753893 793001015 35515332 339631580 156225018 476119171 872146555 330901776 346274168 171353507 636974858 693228875 659184213 820522072 770199112 304275028 786603670 977424600 52927644 584791525 163280781 253509250 297068392 329328916 117221302 606766687 207619634 925057631 596990361 313834 717385547 566519902 765131887 90746089 679177958 108544613 975835672 472552559 186157923 879717387 775985647 169990244 11720662 551668448 85110716 405387904 848799119 903141095 505518670 537456676 857219758 803690923 929657954 456228741 965297192 835776988 956427375 921854822 840948563 943602908 81091301 606846079 670322828 581553669 675733402 295849834 334568283 168195908 118361324 22882850 530776478 672436551 901717260 124452514 681690219 394565602 287944198 606649893 605403822 348192935 399980202 167250933 769315536 284296790 124110951 267298822 562887305 874313267 460106125 740121891 377485976 397368214 89094971 883861211 442871643 288134391 151259663 529886197 652467398 38314193 791452745 826309727 159442714 376644785 534563117 620825367 8729387 173277952 419754113 408257873 789309174 892673151 938102588 723936099 134453191 188087819 87787117 859877236 86926081 394166432 684857067 364026686 717293787 287152166 608419290 308732329 742400360 133156093 702553361 948069774 61706521 194635620 584844699 714200639 700723009 138483792 338760744 420660880 938465593 791570929 747764791 520014040 543539236 885368537 148248029 363711647 691572148 949538262 443206166 113755944 541848757 606128285 644260631 842098919 304472352 33811321 638523156 471778454 983178131 214023509 824756356 764691116 796307304 126293343 7691555 104157157 199747767 342998986 891601852 987644026 963339240 495674211 562401082 98853696 544428584 495139625 963481414 331997959 978408020 795483084 872604818 541438106 580199601 923004173 605454331 174734717 568392127 825494164 508155672 384300529 788036834 864016684 161363444 453573982 954205080 550773941 497083946 220479145 801625146 765557615 274336290 836704551 538522467 614125188 843595047 406836348 89463995 439421537 57124706 425150509 563629932 442370354 64813764 888999644 143518381 681715507 972012784 707457719 593956761 134278427 49817592 527506134 56040301 792694963 21689791 711025093 572543142 442045329 364782221 561622782 500924531 246529018 618443502 762055962 793297460 253145384 310001228 977905243 808015952 750795554 607352352 236246958 12438663 165145037 797119595 23014089 698552754 470346964 670576922 651466622 612649749 739631105 46353408 501364053 159859463 590191079 526748828 892081601 742515331 670731297 784434593 270882333 647291330 826414146 501521121 967980547 696596097 334404699 465009860 331718577 286381732 98674064 618624850 495859648 442888426 945382390 357480098 745780200 288745738 427730 407662473 313126599 945474064 207167061 433276397 828353764 192431659 686902743 406292084 140842050 41183897 774386743 576789919 20546896 627429385 542136910 929672281 27157683 656063207 33146803 281604081 207580574 146475455 946585178 252762195 838803451 83124569 415093863 796087082 493520529 15548011 838043884 750386331 864916668 750905026 938389065 184170773 641381759 961396867 75731458 633926199 348312971 283376276 408931691 400588137 13478595 618061171 463199283 457490243 154987222 997341249 635248787 524114152 481993390 13825117 149812147 481958060 759256187 886431178 647342463 297230206 934063526 336524999 394802692 817239920 703575572 341808671 611480128 814581889 292934318 958182715 607955442 182405288 857065877 395935076 958682914 846034004 869024125 639503663 725033797 524160959 241960862 249567200 573242483 303789249 806151440 156641608 593985851 894861732 363169534 499575410 53548712 557664317 503739350 106012904 434130429 979209587 997326757 827153877 700209344 120407245 869813444 86513815 689093960 84486361 248282164 859377884 534976231 480922036 761268357 248209352 435973120 244024926 160895484 689739751 517233200 64022336 61053771 860726819 162622754 508146701 526275183 671743968 979683204 808229810 659198645 725773292 555786233 452244026 968179087 703852136 22877236 731423832 590814406 830663047 671594827 436249867 714677880 39544347 562889990 500782263 853556434 129384838 185683222 955908219 152928833 480350061 930680251 370354570 67606877 556097916 177041089 751893824 468115607 411378411 180205790 827344655 735444209 423227398 39656905 819200220 969743418 792913555 501891466 498165311 439384690 159117994 222452482 252694601 742853231 740544153 202422273 631202052 887983590 801826551 765588857 16806454 206399386 466253247 985261060 250936019 998631547 942930956 468730926 244779783 533532630 368786260 25281731 338782450 343142990 103382556 394162085 817629982 326031631 577148855 31098521 717876141 854135375 834029337 992420599 719015970 121316246 773384858 116887213 313339137 923338939 256196361 149243841 971982890 319519740 546687189 998767963 718262920 16146045 968980687 767966745 70349525 825408506 76652340 871370471 8606908 745839707 409034420 457794090 740730618 857558215 717521694 785397862 235424004 353600983 475551322 847084015 407487548 946858631 491882586 255288799 808374282 687796243 842071160 411521882 116098667 679654437 651443188 116798090 178012859 849481225 500763625 581010446 972102027 723218072 454006696 562496869 969536451 802899104 637632353 405715499 917021636 502695087 476948938 748185103 590111103 178510536 891306430 814448525 814673462 45410031 408483341 266298551 74654298 483191263 725101248 915967139 17311808 492636817 240955948 87294623 771630305 332152587 265749123 896226496 144153085 595547711 318428342 919552006 635515792 849410340 676875645 284182717 552613396 886697265 342354960 568434605 781829224 494286078 305938001 176102569 903755928 825853979 847537523 833329997 371236125 242253906 932420323 75527950 413485416 944675672 192543490 377165345 965976801 641697434 111361084 416468094 923960373 593148245 692890236 329483488 79580026 83083261 75405322 788424614 54598764 996580091 771222154 972093880 146578590 740081120 393096528 670155342 88499826 361069922 188606233 865169162 648732511 369635955 405693312 168480293 113705551 690441396 853226910 255667669 774207435 91675296 878766896 381960946 877801101 342330980 233451374 641130497 328692383 178535058 930231880 603087952 175765148 405972485 992990403 758108194 857070723 549687815 803292587 185525006 878166622 815596685 628300768 18293421 244170784 943950896 37258903 810688143 218945149 614598324 199441458 798892393 272501349 458835687 140467312 358627267 489127364 332484824 334475017 360641196 571838708 672576693 236311803 658659191 871522298 499891403 217641956 730041096 318955837 267798395 674731663 770829805 10641812 614189132 775592180 564020757 329217000 626448006 485507210 875086099 171805053 68137668 264731642 199908563 281903348 789466015 905294868 481783922 183774329 521124306 795276633 553416495 143758137 842110717 399493398 967310223 372599105 899313692 587306261 348662915 691801376 103862864 306152395 753394335 902522491 837498244 798366336 816590676 220922501 772381413 332781815 674110178 374628702 890823546 47610534 186830385 277793579 183816687 139437503 381294497 702254515 466409928 131109540 195897591 571493429 567508967 172914827 175309279 424934259 582268698 802645982 185401183 781628351 684003455 454166060 133811761 665429083 507591153 721868326 539439467 746343830 751361957 494394048 70199898 145906803 682576201 523505291 87583757 169302880 944203906 719032235 822178688 898302165 81537175 685020422 512430386 650061800 889202851 562052654 507821270 952321390 516770559 337882471 70014644 855992243 642325179 124916609 206723355 353302266 966615675 856691000 435743763 769571300 491167800 142100269 437530791 768203575 956036322 313973648 27283749 913602146 792825162 195914244 503967440 601988906 197800399 377874206 36566732 554017609 579418568 562838060 795383256 985895431 978868613 968406410 133022618 167495236 892277479 815851871 794323145 893983721 817706135 791424304 292097490 381957007 423254188 841972940 830530763 88925520 917343241 963673725 673260188 708060034 869122774 427012596 627198367 886139309 499959531 135414563 744603770 411116469 436769928 538319959 132749928 679016844 903950323 433506739 559420532 555176297 803162985 755364936 645730988 121684999 359676135 99444263 887228907 417733232 972795808 578915485 320485293 740146169 366907149 988761532 540380335 864177606 606467229 312156372 133602757 560875419 594807588 916746345 938469551 177187787 776157187 34258581 749498149 850483109 792565578 2801796 828229884 729203475 539544926 16450268 223255430 217266428 627365519 211360863 611806336 638407808 644764121 540210157 145687865 93742464 757706773 89422351 462863456 975888123 111010554 592145473 566571697 44316285 197990178 803623654 786590567 15882445 665057323 38377361 308369536 288936086 25313646 74270953 653304525 70333338 935571520 996159219 591494422 948504964 685206842 661501532 919123624 261514621 689468034 962550267 250873053 851253099 82681267 747135447 678758333 618312672 34366173 340253058 384902306 114366310 425571863 911565210 178850666 439979134 441655625 497732112 888098178 355115220 468919072 204201727 834272017 272003834 243512593 516263367 680850763 387739869 208913962 998821569 948810484 199504472 436541298 736623480 787789052 37841068 266969935 176308443 566466581 689380039 762146905 730284445 197861281 607169819 286147939 185310362 706956687 227439248 882291217 500736141 441761484 318803951 785560340 808941966 932149198 921569149 386433832 13998569 719806316 600536305 841119499 465726932 130377587 962559419 701907043 669494955 82549421 128923338 932084171 721352414 395789933 368118732 883147751 120389486 734594087 277237453 499192261 87458090 356609222 852632623 900750242 364492827 222981664 978252513 367098559 627168551 332175474 594110946 186798235 249498711 679599065 541798110 341302494 789828540 931543977 563363442 439656912 957734086 791741774 230141484 192511240 9578507 520121909 170588905 580280847 905906534 505835325 764068675 456069763 771485738 211672861 332253024 936322010 845770276 635728774 721173433 199805521 133877708 162298368 916433709 157667685 512062616 726146242 394250048 329258150 722857013 798015886 152009155 712358020 617841043 921002338 271782820 540530993 478546627 977104661 968481310 449015674 32830808 513530315 897374715 580191776 745264442 501363751 197862769 655268020 414585129 601755032 232425504 678109069 199755936 776541262 438618696 447320669 718857786 355064056 396300264 956147579 287779957 448707823 57716195 8057119 400949821 237100068 648978804 326570793 458155413 687084777 351533111 989908198 352262176 179595405 537362301 299117496 298735578 367899273 963075870 102710571 106007472 966470127 254507272 90334244 205073928 784156863 785606906 492532761 14978119 885943863 829157869 19415761 180724060 464322632 281836997 718984155 734488495 829775798 427044550 91622981 707202639 270236917 990314203 699266579 975414619 958810800 359048659 558744807 227500073 36414492 666190439 38539548 710693536 525559599 619630842 349120158 629203073 748738499 557363315 200115182 177972726 83603947 361428032 659305790 799265523 23258539 888232162 660822992 709175345 105250150 504479381 116420058 242413103 330789700 210128754 198251018 65710314 773642709 467802760 394658762 153538239 480578960 490819769 120572607 911506738 504054340 669411218 284125087 479150014 588500460 697667639 470989537 308802801 802487673 13621433 127904726 933762970 690306020 938724134 83326077 441404675 836539950 200631147 599655272 772183857 826575180 992625284 167400133 468405554 476120740 546954014 526355091 163945168 44653908 717468902 170436309 793841282 670168601 771488622 422227589 132712892 316754342 855267726 931031184 327368919 229886456 448764070 847243548 771057851 218156191 964633557 344056591 26935100 329200385 54941484 468716150 805929624 382437933 34371851 833376768 208522066 873661517 355576249 163331607 718969298 394391296 72377378 948197662 891538809 979949737 509278965 835504952 997223518 974900473 788742866 319354884 207825054 755363580 264278096 807655386 356439091 642655964 99813488 705735091 614545832 531879478 204932319 628931103 886323587 3598988 900331746 125699667 772818667 878798653 891229354 34905745 769325635 998821633 789830259 42150173 867469617 976544097 83931249 82909292 247252039 402998764 749321124 454012100 100433192 10099573 152517486 529855255 198777004 671648193 412598727 895027992 907443464 791603814 102948894 833658377 472259339 332957518 243810113 927463860 259407784 336240807 839182930 110718685 492816811 85469227 574619529 195132088 141464114 697130566 961810369 256366346 93672788 708495914 493800488 98203138 855352028 715662851 887822668 458792658 825553650 234515318 357449079 672358660 277911671 7667230 954811355 630169852 739392570 709643048 772289804 584305395 642018873 630428056 190742252 248542963 816488937 222158332 56203139 752861991 50136764 180878515 311121009 510634154 469813656 927237330 215383834 569429323 759064064 826171553 591934817 838271605 567990691 628341293 773227434 798131111 868622695 990363419 253593241 154185438 85513306 366744542 223788044 352482160 728855780 505070063 855463463 885496182 757206114 212086407 318621938 862676381 896423385 623569712 688237881 105024900 662830940 362477350 479169697 134885336 603995069 499359963 956149368 278344994 414601143 918144134 660842964 789274421 121082650 462303547 938466500 411586194 898236809 12764289 493059012 744521855 456378348 153211542 572288512 789868310 641664180 503868674 348427155 632608343 778671087 662527849 602626600 271990152 24423627 835323545 792008141 779448171 333165883 314554466 687322030 420748549 423762 60932146 188152184 584822727 346419047 128476614 527602924 724816931 140232283 857158223 50063503 773448585 764824292 306111902 637191935 120513896 188013836 607064155 605926492 498695173 498976368 633987307 363549584 122432367 137265862 751261384 82049780 758484764 985438455 391815465 228561069 178916798 960478332 330240426 413230234 605832772 466241826 91532850 116708410 152205306 293016081 241806826 305654276 604385434 699763243 850969738 563769457 92388639 370270596 744504324 747237015 451981509 780216522 940014410 401094910 452789604 654759419 38593108 36417652 905836415 610982136 960019632 890522866 617933017 871487403 803778689 10836011 732305938 471253927 96022235 999584936 978231465 356111666 513123982 849531914 625230904 880830650 488852374 830590171 210935511 604945485 43198901 515174092 845912229 683998340 256338273 479723271 187947789 255878211 604191404 64316706 367698642 187145378 890235703 832863287 622641764 554541522 544591649 935361331 206560059 345399816 367356273 84706557 187873072 738329405 592084904 808983282 302962852 821878226 566635972 853469909 577007329 888554109 787090700 422394902 780084302 523816507 398869207 898254678 874082059 975569029 505088993 995449216 590150851 489401575 475779624 816042138 335954937 261180566 834089383 518193866 3406959 197043519 657883332 237604422 824369325 711989957 382075103 447975818 871049013 362705836 135790527 417836195 379019394 589741777 962695140 552606068 432173967 2518895 767868303 40604771 756136318 987174013 220245540 563802736 786695748 952461507 213412699 195272667 52219102 436284291 538133223 39350425 809693507 321427509 983600945 608013528 622657389 615346448 1062933 897620877 306637602 759984688 925764552 18956417 683622887 448573086 819314126 370117967 976502078 204742210 793517049 175731466 765315199 289578919 182069940 40141523 153073705 723398860 677786180 310958351 771918543 304418002 356160100 582974004 32880059 923327165 974660165 829019718 972523366 102501978 490482826 488406748 182310731 620276090 62704921 932442859 424099068 439691392 545596890 758264119 882665067 417686499 527148803 106211455 29871553 647794769 594481435 421106284 202205842 425207411 442752529 849253430 978825879 940554290 481371606 636974025 15042784 370623064 633081886 443220006 390852487 273961625 692342548 918800554 909324142 767145930 925626186 465448617 107764294 254244537 959902007 505174551 117870207 175407923 123186723 464057725 375604243 492579337 214151516 430532748 987505929 64277653 559030361 414280357 21892995 985549619 616857563 606351987 876609298 432832774 129529534 993173549 617604701 743878223 512233673 872481427 995297588 897107327 804799742 595642253 901366555 82553781 599108965 36762296 95369500 813234975 426902645 352063018 119592762 311558947 127891030 732609316 270840605 562055826 262556216 417843484 167942488 261332594 297201258 975596949 589729735 425536651 156028066 974820227 25078112 699874951 887796005 379522862 306098877 16570561 382166426 942810023 572744381 512801487 524167912 767939465 384246814 115661166 958937958 233062978 732932115 348419806 148321412 520131130 987162640 487262780 252387042 573989325 885029683 495062004 974926577 660887781 513801475 74738364 920346393 136352802 526520181 1929841 402067768 838057211 706937140 399479159 255955865 487852284 942312968 168969316 322756574 885888524 737240389 527992606 182058452 572555366 914490938 201962285 564152594 646591594 890107256 944822367 1133357 986366985 267183339 282245331 957968455 226922129 214877678 960163100 690090299 547935786 479880929 448302801 628026179 765550763 375392102 89548126 581761745 459239611 763891209 792726017 754240576 395391063 288047836 908814022 376667374 69820455 835434303 367246178 187450409 465575799 638811250 902190437 859329380 432950112 436926471 431825980 897618322 194524291 644401572 935637018 625771536 662831875 419924745 408742504 108355987 591992709 534910222 684000173 680101277 976577319 937801782 37821020 291425277 525703459 525031667 554249549 483363019 833210286 247845851 132213771 46407368 540123919 741687078 406859362 609028128 884863820 760130643 815233723 280620555 687699324 486851165 243901545 331339130 829708041 449574630 495178633 664112608 854100730 818435029 153192841 587099030 68704125 327465781 100225692 949523997 123387499 162992376 731161648 519343332 83577255 994204738 607839994 342320415 85998450 264345228 515913197 909248099 892843512 88835137 442512980 699145620 60790366 146251497 593958706 534327592 368655386 794723668 678037741 666086673 582753934 897334253 778239106 233680971 485869515 940071198 970300455 1144198 662149138 462381019 368889565 55511210 421700978 391671301 495159593 487322077 651291898 721978151 76840386 99187623 778671361 871216296 432148146 629759064 515888131 728636715 115591297 653443997 466849374 799307978 4813133 153843118 507809159 203552584 147044174 138581186 281223920 793610377 606797175 186751811 365995582 46626757 510435053 629239837 925409362 414935887 893488086 797743099 47487286 456309153 591094853 713634464 340614696 821505628 412333785 23454480 702083535 813296065 846249716 108715135 41136406 714144314 533480822 71777462 484324969 45168705 369190375 669125512 955342664 440272171 144111338 943352005 500561501 188621922 78295012 819387235 175267062 573095637 692874803 311191010 394032794 393032810 700732250 789280277 470266629 279466048 310847179 628417329 539748228 679037770 479075456 388575886 990693226 771870256 633260053 386575015 803960151 664665606 842813572 19555591 364915040 747982790 106535975 129783290 775709925 969405974 248247676 223959782 785872882 477996295 519045556 563567403 653848141 944575317 607347117 2125813 20519881 54315035 553870053 540739006 897523101 904970080 25662323 673357598 606876175 49385995 523660580 958228877 101724020 445517683 130278578 843405233 457840686 446567105 762028726 955208228 25585983 824307952 270254157 310811151 341159415 774955389 6969392 718448557 851019445 961081931 511565472 337516658 271227883 856745796 428974466 798748536 234012917 51404450 585853823 81567801 836883943 46390187 532946694 466746911 721376856 901838713 583697610 372751425 722159943 351996953 608831189 393737788 215702283 694216154 659843670 300859226 574188522 640793744 806540815 695334678 147605438 582929357 733981982 381530643 184917016 389221854 660711459 989697021 223561529 568996687 13391256 898489629 779275110 270865468 803916136 410070414 649824818 431891368 861642651 511466974 460926916 403438695 882018704 627470953 748772652 380532564 427967370 483232707 115953741 898256585 677179879 519275555 565394232 498575677 67067554 496939554 874377153 457372039 766335842 155981382 983331161 858782511 471625753 388200976 271574186 391182093 879264105 310235938 701151935 389183831 97540161 608997498 557645557 628342093 699373339 284224830 793541623 628160400 261787478 152944537 102018012 484006514 42850183 741967154 578921654 949773979 419738521 556735411 846347201 137697665 488320139 110937904 283386320 531682898 559645478 236809397 759798589 105449278 878056713 588132627 105869567 626642332 138527618 863303353 659906506 890828379 760527121 568039618 649487676 681424506 349799521 401103376 684471219 624547471 772460662 503175122 900019336 160857793 927688444 592740848 824069782 946333659 908227486 273484483 820031843 686758187 287292615 910150922 486819179 379429839 176672494 491063925 428438184 302361245 10738092 848506964 164343425 993668813 341709568 444220565 874729911 447039721 742996478 972261567 988583896 572584543 714301959 211778861 286671537 461106611 880948629 298172830 760775854 256493795 392661053 895450084 720315194 522534227 424375375 358544738 431436371 643613606 906620955 412928720 558684114 95616648 689527541 137503888 862011105 396729554 306131336 215197764 313602355 898778274 571476660 323129937 926992605 241874076 828730076 87097418 245602274 262330425 321161618 185458082 605133228 779261510 211180559 224492351 696990692 712063455 967536499 224754933 36934926 47007058 143215393 392817288 603966923 678252927 834818471 135108546 627190864 678795503 519701325 252322590 955443729 672237572 381831569 222988095 897947155 352471651 798937834 965065895 735840196 998967288 808988693 429312542 112841949 541413677 642282379 530871602 990884928 355524924 230437340 810673378 479228264 68109144 324433916 366657685 91893190 566477871 836518170 840160425 427036797 693315596 620361675 349203715 761255580 613660090 417970535 575375493 773191261 207495646 636313967 487781788 132251003 730396990 657915089 826980426 857122017 207352781 189241567 660916731 582524902 841798701 90944501 176877243 31274362 816689771 902795096 314166886 161064083 570610490 931940039 104378185 551569384 115250613 879554270 341575288 439846246 781947342 291102211 544885863 448339088 108386700 457676585 866793053 133990172 687813593 891844415 69191357 574342744 826860786 52592966 738188039 195557567 752172469 527284220 122540283 103972642 217852944 34766933 106612515 931469722 85444532 505142724 795675004 694589995 653528949 110991680 564967983 972888251 65840321 436502626 784526064 462517136 676977441 267389396 411153148 549025180 830652900 402825200 861122317 550139790 66053376 275657228 267019408 444748534 201007269 772182234 116181922 517038299 142575231 352067132 202225269 506209489 682315901 34179548 542241804 773807375 73406286 382815751 902475247 491584668 803824495 483076068 625436609 900067270 905090796 950041577 545787677 775927292 552633643 718553469 833385515 50265537 502823801 322752077 357802760 378195188 511602738 645324400 669199602 399490455 598950528 471978711 153900092 837695406 163113726 263295584 108248990 424336865 420629773 55366105 774749087 504494896 394262205 730399518 265968497 223548193 937132547 119507852 962136322 969155215 278197461 982472718 735134992 344983103 94508513 390833250 889022402 475873984 123587048 591497953 982618844 276968524 783894592 226943615 637494072 544473330 872740273 226846936 891736092 724151197 644930317 408003369 340070847 659974828 836705805 212556048 172991765 251013686 783810387 714337405 660755945 300923680 260055002 726115170 188899537 653282495 117226782 894595813 148346208 418599173 887399138 455950789 297764717 317772972 14738269 540537550 859794716 49155934 270281904 536458607 828556159 443671190 462159923 986902604 49856751 275022930 933714368 335392710 383151800 171981682 407623236 320688720 189257017 352361997 357318775 327242575 984953253 338546941 405918474 562615120 844830158 883573639 832826459 446470376 986990860 543797378 193023067 792547027 270927938 709516837 628079695 654734241 532419662 830247266 455388380 735120743 759843765 608806926 960086820 345363681 79219942 246455905 314116242 202408909 363597766 786939919 506001468 914166379 709567754 143406909 709556506 417685414 602431502 813709634 4380979 969526530 72647874 724684258 700968494 484781070 11296655 505407857 72999588 267805254 589477834 121135561 39222692 468833317 714949854 613145304 147462667 355811069 412031081 319303367 398422173 971876156 494933547 989389079 805225388 840064796 919834497 774384009 828837692 729481422 3626629 126208701 665378266 69095489 351557889 404784271 230717056 210623086 839077421 267877392 458973031 666758154 686408379 944229617 49294404 374414670 726529476 536433813 320099731 108275995 963796039 681043392 336665299 542899584 24828989 766394603 33412076 888379457 840949944 521264891 341432559 627340757 364516871 201566926 797035543 871655526 143651431 777604557 102185729 57610851 472614141 687691296 462574396 294197526 373378828 533403291 517222057 486073508 441314550 94240011 919997267 556188686 607587493 853518716 690001055 592962751 209220345 689157653 513101016 565510786 964972154 301829803 544042706 22083117 210503008 351990276 27056385 405143267 962275173 499834281 13100119 699451546 102782383 161747251 881072184 485255363 253196059 863910953 57462376 903323727 334622607 374366438 707434013 929641700 697766304 471530290 772064856 413398813 868555681 502963787 329456054 1677952 552959574 943089921 968654839 487874232 13896484 261914200 998837704 112411670 582035478 776817548 911916105 497830782 852357465 484778254 151391765 757667692 82355188 293135897 233500653 939055011 658198881 492292696 449898132 725363230 59442567 982007138 498936857 84695513 84280884 40394819 138941872 958404156 172670021 38324885 786628035 799289575 951886498 247067432 746175661 113859106 542609179 804913868 755761492 912280306 442886813 598596619 438026986 273801083 298005863 316435390 429739959 534914518 886876221 75045007 955070663 998997563 849989421 4242330 402714610 750039209 412877179 316653076 731662229 987354351 337673021 27588209 762077258 825890595 198989588 407721267 985886686 90475201 924395588 82553650 220238063 690328707 652388764 415058870 761544465 977808853 742507329 3413727 184785961 165798393 563880399 31335148 379252051 651299594 929503576 803742221 255860988 429487897 331415035 40230430 291680636 973092750 901424933 485857731 300772688 257056361 501720646 467080023 952044887 48882788 215333938 351359321 622328076 320353868 406895918 287476943 428348269 198895000 355306500 455688898 980177630 740037294 493800067 236354372 334275810 438959662 504525431 806993446 917671404 290884277 194680085 339584715 118133154 185308898 882940561 758378641 83552884 466459916 370950546 781064694 610225810 898863345 933261509 539912796 100658586 522027765 338405687 97712620 816855830 887750636 191174899 351065127 845897930 154434926 350662821 351247580 764874297 254670016 16507834 198842222 69300443 716446785 663732405 920237438 435977428 940241107 80204199 238067202 457118862 598288919 983026433 835314630 79801288 245661180 947943280 671073428 791489427 444816910 906095382 193094042 971261859 72775783 401003459 647617696 23701293 852278680 886347528 631097398 137900331 314445607 85556017 353502323 703617089 847414964 85837081 802650091 626793007 301833775 646497159 48144266 382981861 70131199 165548985 487131057 686443384 29052678 302849045 609944459 595297808 153744136 100269666 871275903 519271603 848485878 424816764 732727054 994178588 464904356 789519912 511174832 109974744 618690688 963095659 41158842 575505979 874103188 804118549 101236315 836636123 239285339 496786256 443540029 858655332 263602795 889520816 448972242 456744113 192627786 940189484 525496944 384262531 801341966 698827497 357996821 273452064 468841058 819935213 351888164 244503317 284731913 728288807 564711382 803302986 162102919 90936338 575328864 762785794 400069158 545087656 711948835 260300480 137096747 29198124 524445339 285217577 327260601 337270131 310066149 399781193 311372287 369136179 443057001 839426893 995098078 891163919 28902628 825434773 522510852 377587016 556658498 946940954 510927003 380018284 742245548 625063912 969943580 788615139 376457352 674887337 899501502 484372172 963723112 811252042 561844163 363839418 101193973 149431765 955971497 962898275 418468064 773128212 631198018 490085421 317672189 912267495 967600989 112548215 967920133 397066140 17675496 133697960 942868477 932504636 445142846 506512583 32787103 723456466 260208059 682656169 581672860 220820064 191454754 472631300 834584997 42803003 678252855 822423139 740205635 524093257 983779086 514657158 537108254 327901272 908205102 445963447 32173357 184664316 794523686 459571840 209680976 689806967 608631728 308585537 511157632 227506619 956168253 786161619 66029019 366585603 306323886 235879507 261332337 544568407 35681697 580150457 780904664 322309289 137047023 202355438 688025884 910858632 451426566 825490931 352029949 11620621 187842043 89363719 549496070 76399720 268442265 432445765 345413332 275819883 628170233 586339224 393455952 717804305 175035991 132765501 175815469 504342227 880920818 913455342 744444681 100053939 654854041 719023461 298267576 331244554 390536276 499719143 869190816 131290578 44219357 190102509 622169544 372545092 355701772 360310313 936619305 347899350 513557898 23513060 387299670 643301254 762305233 133468588 289170328 536718985 94776518 278565308 751224199 138179985 863869332 486166978 803032730 147491122 751295403 495064954 594982960 587274277 167309964 812157495 204600415 255563500 279428342 400309433 75398585 269741934 262770778 804095684 651442679 562839346 782981276 139140047 164256807 421798310 334193215 19190658 872810856 643987297 792834970 370742602 292379551 982155264 280934278 56713864 550957782 139123451 647964653 702511946 715618809 460313437 841475963 883947813 439939691 658040682 630349434 934453640 956473462 631657422 953718912 623086160 858942647 975285010 795335610 57564283 321125057 900290334 25204590 327913851 383151090 600592087 231273806 250968906 52196697 30312706 324134975 259252019 123781041 890375338 875221314 271447267 443659365 427914402 531381968 503941939 570663216 143614591 722251248 89860148 375649338 73973889 376932510 452816444 916695791 162117472 39822690 420392125 879611418 793534834 905259634 355220675 428457102 956963217 570816912 52930365 226487631 183217575 833593070 439530792 971901560 75388877 735957955 898337123 930732567 60039307 340500942 285817122 900316966 840732847 388418430 623731780 34246975 219831532 964247793 630685816 940312986 300757166 906322197 884791118 776234806 572619969 980436308 148132262 882823260 997177704 906122146 401861740 944710896 979153581 831725207 772658861 977583173 170278974 480115808 733203073 488630480 176827135 228230833 979032068 945417687 708279277 583312218 363227871 283971082 171683835 417995275 743229411 706474954 854094359 419890401 658663889 685644714 219703163 236291493 152512532 158749474 692520644 91488114 777505694 23974149 641632719 989246116 115670712 596565585 171604333 396671587 941362700 938508112 899713901 157495808 68507991 999867743 368950038 491357974 780986255 909434118 866715495 703542925 827832154 740178590 184809408 821285216 83713578 697992680 710378379 664159948 243326751 862523021 829194228 722148194 414567422 868504324 2653870 478356867 87462621 437111392 470251085 19209189 934171936 999750391 231995404 875052489 851352138 750133154 872875357 385553430 987924056 204143542 31284914 550523286 794259978 473141449 624821325 285605501 215621493 13079189 834455676 295357574 94243627 129214733 266481242 560054370 282847596 560459592 369198566 647935907 602661345 735293443 54531944 546353348 332808374 139473548 336882360 250076839 592325928 939662222 241752020 700831352 58149031 4790050 510031065 864822303 17009174 730711734 255563438 851539573 311284983 168834626 637623296 629613712 531744018 82182855 486724831 499153613 28119380 467970872 766270480 734910447 657476541 52247173 935588074 844099678 439744325 604939037 474468876 331461995 625854386 825686543 954336881 820238575 2834036 590606375 177126996 265854937 553779144 244566378 820500949 828626486 986010970 133822799 446104064 909126353 94338473 790748200 203452956 199712332 213919954 990125825 898073416 877174504 389164074 661846365 578218564 925705288 977153686 427043071 591582282 398569320 696211624 796339768 755376626 107309622 656766361 822105285 576684049 426302524 322758585 398951366 710040002 518205202 312188109 384677345 34903806 919011529 366292686 911743560 559617755 485848693 815534254 493594369 187608260 353997959 204282768 774372686 134332238 524191013 815406888 258121413 312461845 905124021 594107269 946181825 518541767 949315527 515328648 932256492 953867513 934746455 629864720 76757339 237858475 602925614 122271617 833498715 232362276 976634664 874093825 663674648 418054576 943854552 333234954 5323008 335004623 853749386 292653348 361077265 906521931 359747643 57208561 581548354 951337445 82995873 980797973 477687451 391304834 659905613 190468285 830470044 121774133 420824215 388551660 285091889 823940414 183096218 356418751 368435236 171402738 741156019 714981581 474743725 625631808 722866126 208408587 785066637 745301708 178241647 771771362 109770989 749547361 709724734 422395572 176741278 323274450 722570515 836877202 999666598 467483921 545066103 845896173 691294933 666536909 364244562 430661491 985177811 772447793 787869563 281695250 396202703 36158801 838295182 95120104 330764396 796629630 993977401 110723285 466279380 322380044 184672350 205275616 798776191 509271335 235647744 418581879 884104154 889195510 357268062 790885523 983713363 225218206 957222918 757491194 950745420 45907901 688222108 903960606 436741603 611069315 59487619 291494721 815577174 781420488 688038345 535113725 985482426 590052900 975342823 23933474 765235712 332303410 651563060 190171259 181083901 115930684 393676139 627014961 829250398 722320396 615848688 347675961 66005754 612628594 548517614 992612682 195761854 378824894 988866189 258156584 509572204 48640249 994166837 590900305 614695283 452121646 389301023 73352562 781216513 473899453 823169559 397983471 398830325 508281377 973358950 939252120 517705945 76703146 239950095 893407965 502911036 145055129 997467384 202178350 350195156 342223181 946355411 678899069 23701015 540365825 946128387 584484354 508659987 328601257 847165919 920000686 641785051 242122162 985447026 365213388 362265927 515475736 235781453 725469036 332989018 596762580 518318619 367563813 24220946 932737434 7444830 192070861 297887552 681606512 234218740 429791501 454226211 86804230 637165586 791790728 150214998 909953609 707740151 393470253 498631451 776543003 974340632 118151818 458069801 967158325 829428106 454699135 15591924 922770708 726086569 730185917 322058831 720053557 494774454 982798138 498089023 284968681 655589512 692988092 526767399 675406069 768352978 425505838 274365185 139687358 654461945 871673148 434809570 807432057 206310614 812194379 391111725 42170028 213705018 489091010 287609021 721361567 227025748 669989492 516406618 624837796 204855387 394021057 295519349 676371116 896628333 446756689 828624976 518859002 442590771 884563217 819927462 995745471 213266695 684694992 27110074 255403866 34752711 984325525 589460165 661439790 33321999 932995202 475742987 274707977 29963878 847559203 871875809 585335071 324969591 898024800 442452056 689183833 840777454 827615240 442383780 701935685 53464525 802775481 57232967 847740059 307625166 73085732 32122131 210444682 820401828 387248563 725963094 967483144 795116514 586676229 405624207 222277649 276406100 448139018 604469452 735690762 86409268 847571841 463354185 436531224 947978314 441776013 230488309 25849264 749047182 664425370 304411614 478825441 200805815 280886948 484209405 814392943 626273184 384685975 542895803 999881497 292671977 326625600 488833443 653847635 995057618 826895564 103025158 180551672 37897582 38040503 570450480 775868583 231146549 525085590 338397590 261736746 613900281 645878221 497048136 811049705 728079670 48785396 126264330 367227185 70403953 210128698 795199326 618424073 33541111 542910327 611694464 669783377 587929645 668610462 717711266 107338229 927748276 695516037 1642356 270788603 616673447 436140249 908961720 242475348 31879210 181507153 511203443 825970837 4601214 9424248 950252392 743378499 609266104 920854608 979746573 442606023 781423629 605406183 835553540 599210771 818400556 564920830 902846495 562452420 562908282 184547213 690903245 254458772 993015103 918884616 415843959 784051605 169219708 460017086 210042985 70963586 108004658 651958748 208318294 323313751 749252087 187853893 234320688 862561668 291320002 920888495 273168812 968847324 960219040 620929068 720819676 377488360 799384911 798925991 361511932 250886224 174910895 742558547 404112865 485480932 259988554 541017996 438170454 770926856 290860978 660025139 677340146 612401572 581208503 663399382 834451756 795848449 962287757 470262543 59524138 582360151 28516600 366318184 721286473 335198492 358205552 533507278 977845231 208529480 98718327 47654117 445308620 178222564 637118855 952190427 200779510 139032065 97398753 833262494 143951914 92761901 359404685 837763984 775192480 879604307 273999343 227423515 167835652 827222252 409086248 619018888 702458257 808301519 602677969 363143093 681912831 843434606 8094481 494426207 163474505 254633510 723252451 964309373 571963510 982094325 719562536 245493043 22282982 963450666 214595873 457929625 178220573 980363615 957132920 347741268 756104402 595307217 28760903 86954964 645132164 781421718 474091086 112720790 478547028 168362626 711796889 578450829 567990258 654582340 14427776 984483490 47518638 337392418 918793165 966147657 44563121 442672462 572197218 965325703 139075722 970187676 866209493 293274185 737133347 856800646 546926926 823437664 124649468 990109509 990915357 621608137 638771254 468223089 997066982 690493034 39521228 280604961 40600525 815785122 447750952 74525460 539034128 800226986 858795469 558840158 794855070 525298460 315448286 264309080 131641677 823407563 564385260 736313612 307233537 165368219 466398705 457309089 46032532 251027251 153657395 370567953 982516963 706192767 666335874 21310266 25388381 217775546 992218904 291063522 447552183 402449881 735628777 221856716 525544982 150477395 728681700 229424750 151263733 880638087 154141192 232163131 933965304 746402970 935107702 143523915 162962365 914414279 782377406 667888643 707810400 638571470 821774862 685624765 410550795 381721487 244531661 517794262 78440125 951089110 884537125 886880348 673445957 845995373 870158707 912240434 530329468 521844253 208945467 498223193 299804197 884178854 79899320 111473913 37334907 513987070 244133847 259991497 947863242 90506051 31882841 387321129 318643497 492076753 513057448 449717211 465999782 258387391 393295026 654954183 870495828 103412218 998986711 425564139 441223878 127837108 967135945 130764263 306287357 988216761 686904718 128414190 388730208 33264811 300033918 844689203 491907351 178996541 503906956 238147493 292760072 533370877 111420814 568072511 156891292 757335111 446360482 554460936 861639793 226701647 433060284 644696770 902590170 725572536 331328752 724968164 981204279 652051977 408216040 683309716 911547069 367807420 647049430 247159666 944361128 787420597 844419344 725866553 741320820 581573263 349776301 302587575 277712437 283466588 796308544 744951308 853524081 865460560 244059031 163563360 252045492 525927610 310796441 44178570 277356116 669558800 919526858 430437827 868559229 55920248 626598496 616288818 495132923 132698630 164886131 556341239 431567982 241433439 152576761 976217310 508763645 818989998 970744862 552364898 861299095 202714617 473951142 18848312 220974771 773931052 385440923 429815011 97610512 942091523 178209372 839692064 950799908 621094047 741496146 527733673 703709102 156606408 641160485 49285323 32071378 940804436 518046371 151126722 339174680 187917659 646876868 894474569 779272262 517622777 180887065 455161728 85872824 64407278 314123958 875424307 798949587 702437507 575716289 815529351 868844822 172952862 415765522 396412425 252244362 148602493 627762866 79697829 443725037 228615652 627581892 610602333 587360243 348831412 223807793 587849029 258316400 708518216 407292218 270450175 918985501 321834892 596252200 108421871 805259858 208099450 364013983 141270982 918496108 964398797 842745138 65633479 992243354 816891850 550424973 566546992 119199084 66068108 563806519 688226828 670575381 953939338 82365630 272164850 577208695 845979034 1729156 367039202 478095116 188717230 213350431 137884748 641991973 206863715 170143525 620339751 793962075 203860090 554406508 189098696 9395763 322044884 933249521 397724345 881356705 620774864 124794946 130750806 246434721 167502584 504571255 894151122 183690714 800690830 178303803 269542812 447079959 171151955 541190533 394845674 958925195 718460108 884389775 735336796 123027438 860353119 546186350 394140928 578805937 378110500 612880619 162601000 60665383 984137257 805102980 349032247 603251174 896453745 628301047 92810266 565290495 487264425 265473553 744731288 176544556 358967125 627152327 983299571 443780721 416976245 983940261 596515300 947678592 43433325 822016168 845316370 245007955 805717086 292960661 266775266 184628874 576778541 53292928 219956718 570446930 90606271 298826460 897573019 314241748 934866824 892058146 378206687 260365480 125013948 628533840 419589207 274716412 86205404 739804725 599470063 314738066 137905461 524717954 193560018 851667697 981869575 161334333 742553660 961869559 897673886 277279738 233109092 377460272 86436205 788788152 945562731 461588386 586933978 343288844 250344582 639646691 992050763 720761675 15754638 311587425 325960320 302202667 799790055 531935598 714069316 888631282 217470237 849238669 742534254 248876642 650760921 166024490 951093664 907018530 162252001 858228965 853533039 745150231 525576265 845301573 24374442 578323451 389612364 944075839 804202991 145792935 23265985 708384537 90076547 944986932 388713537 557934220 151721120 547740930 956005279 899709106 258036500 974028984 88516889 518092182 242644283 749836176 38179103 608464338 826911787 970917333 465203672 759280827 663841500 166157819 292367878 788993020 122408534 39047893 788644049 679007860 443992253 40125384 775171946 20394546 163475868 326905723 167595445 794880481 292262422 406028544 495112371 207325278 596766926 913978443 6613901 836006447 467635025 552896487 316720489 576830630 475150427 244285682 59897210 535145741 94168718 221124812 272886459 271466337 137783049 426058700 696092434 436965206 435392801 711113030 923072431 888343663 65962470 723480334 290648049 132059649 74219867 136815161 48318817 597383725 994459210 793293050 569026211 557500995 845634575 297175640 486629963 198178988 762366750 619572239 608179677 709848715 273452295 891768357 938386925 878600134 712686807 90544626 284645865 743837227 73971439 773359358 354321105 276166295 751833357 324566758 188340227 747990502 571064154 861301967 636426858 715135259 593565403 807423590 381820154 850273432 403038051 233303237 593215517 764611210 404577596 843048166 846932044 625450676 141637800 867578624 791334287 962822884 725179184 110265220 16236279 173125775 532214178 887299265 223678012 771659002 568269619 749121137 455147583 347415312 236671026 846411012 675891809 796345761 371875954 664289961 754433759 275187477 894169149 863340480 203093173 16421941 429949754 713486056 330727267 758816342 315408590 311721334 989706670 400366855 408372455 634823563 553351978 135526451 466313814 172445772 942201298 670874625 12389941 350712753 225490489 194682910 847228546 759935557 79454830 983129653 571185683 739525025 741043563 191191145 162798983 682453355 419049620 509027479 654490050 565599287 403408770 278468150 152091090 306708122 746064610 534593840 57697241 638195459 841914191 11027191 505165766 356492274 338752183 245718120 877192858 729298790 63289506 87730463 894695793 315806121 410743876 805829687 229989378 142775985 207025460 982193550 186728147 797110622 751184026 53565139 569823072 102451246 493530173 937630408 351974089 809288601 580196751 623592193 341429423 418279234 345941043 101246591 397120127 104189220 892179039 464285236 49910422 460863823 490140727 80683694 897057701 231600234 560339030 251095042 552304861 331565346 722887996 516328543 536178259 867452475 92183067 303817244 551894072 566693682 844431783 560014911 575876201 630160775 781411575 331792400 412991788 285661699 99431190 657907646 936276950 506877894 319092847 675346916 359230083 640650962 489556309 371297668 477871586 911496895 441258137 722248555 254861463 538326219 662967450 260930118 934350815 693436016 956931167 245577445 405831926 205497893 401046041 387853154 368015424 268318366 934698139 161952672 788012606 661464662 583959387 657629977 665527376 430606887 463089764 241849857 199880995 637662008 888740568 371986421 185631489 349278324 131751323 700826713 290036814 722697270 277308415 611432990 732806113 764076601 256170873 372501485 615355004 873225502 867761337 89997623 859499312 917146437 965468012 628805211 493653496 359732420 488600277 926632014 859935574 137167385 975550222 843497642 155263889 555539336 762352867 157030604 956514543 413967786 592774640 456013971 817955190 857873840 698933596 640003823 886225732 859101733 271906801 982440418 624560148 464933776 631519966 560970913 777327166 644957010 181570330 934098475 961777636 466260134 386279440 710822555 665736984 497106879 564726844 139736271 986171024 835058162 519438473 699485222 477168605 283092741 813557993 137718073 409355040 756984581 413529858 317092656 714039270 35204934 130617577 364996827 189358340 107517140 450483116 408213244 123251488 439725211 958228846 190864047 255070941 19074378 880070582 825688162 341187876 44644040 493610387 406252818 195410015 495581870 597059426 726507149 492045539 775439977 307802477 341877981 310290098 493380088 976442298 881602438 247623053 793594859 731198491 840533156 577474561 74486492 771731421 417923344 783729045 80730189 846294494 179270855 682420360 584612674 778374472 33593327 464406806 34855598 468768940 881882824 408973352 165988627 200626120 496077829 257622310 103903862 631813296 803668062 976102676 186785674 418637270 698834746 406500137 286631847 149640562 935497214 996358797 312889011 941429367 184066449 414104020 767759075 844729378 599700121 369932764 94538561 670539464 920334693 809099428 165527821 617692953 647927269 444483295 186351313 972468912 348332835 834322024 958248638 649451525 992687372 793579367 433739906 892868648 535483896 880978312 432622715 971686818 730985102 911433293 511172239 18876888 536145908 426334979 105715476 786187525 844258631 141878159 924486596 843846775 873027673 343779008 280797930 150514297 236806008 471401619 724016832 913005523 661712473 689721590 343271964 8652581 553812486 45254372 720005660 495328693 694203342 507066814 691192182 725151678 315921610 260892369 416358240 139044017 967753366 929437385 623237700 725763388 811854756 106809298 514512387 298841379 41109688 822318459 396073702 729040564 487288589 787321494 187858812 892441199 365561804 235916580 762940296 480799365 648540691 431251506 730955083 156634757 412655927 775687807 944802905 367714684 572167960 566906695 986982307 563045569 629144847 337861645 312466869 568606963 172864460 425624747 672100427 584560531 655305659 155224222 532689108 919632601 187027598 333908717 526368224 70597732 150723956 957675963 419302198 9538088 986425014 340949653 750358821 508190630 34523395 765296852 611336373 481020293 97424865 214108764 923333991 829515731 261825271 184137326 50043407 936873740 641899602 4438775 618029997 929819812 38388019 46072560 123766088 161253557 894750387 310340088 852294972 209721399 328883576 551047401 565115166 407158311 128731454 337899601 850102271 928858556 508152716 83061115 855382453 393349794 482608432 776022425 384550452 281691917 187240693 485023491 540049877 5212293 612722038 848047890 504321139 674007263 640621597 430757144 563882612 112443624 265707986 940923872 175026009 720313000 133841620 442752274 405991750 862277392 37856601 259484338 565551551 811123167 753323203 750124720 27558016 344558194 856549407 612219788 972585969 690525254 620984950 820187747 494601732 851688286 477603548 277241753 26685872 135143407 281812188 587824031 823346664 263841528 620019939 128442316 44407067 328718584 202572383 121280187 49459013 922261054 558672405 555154307 656092512 66166905 966442766 27909958 32275244 461568332 583437084 521298584 129279758 115510056 163529360 241167591 507723341 95363434 763057305 613804258 970435511 93535124 493199084 701804213 712669998 966343952 932978036 480284323 182340022 730167713 655900263 916650792 384009846 965786846 541413168 680408929 330513267 57995219 598994773 236143537 484262740 801794072 252668064 994570411 312217616 315968707 827723953 827814947 776291228 453395121 769208404 691472161 809160587 883554275 296536926 250460117 452667699 146418475 387977074 756399819 53560535 926815711 106085412 298418190 587740010 510792464 495503605 32200971 189829460 563196301 848134588 118965881 945672 100167929 839072407 711297414 119532031 787292614 992518227 787454076 901930597 176213242 46890680 107984869 908467823 33473035 568684115 556524707 660351047 891031719 609908639 261471457 607503574 92643821 245044897 684239676 598833971 282368722 879115587 864850176 298716138 953433835 791512178 981622420 272880853 104183736 304352668 558003393 740968512 470926741 39268168 642929649 224277159 964870126 695197627 471300751 292704112 736477231 66790024 275154775 745295284 55563766 618961154 944196565 613924440 713860595 637021397 4298 631355551 360165070 451002210 580466460 116234235 532115707 275340555 8421757 954769742 261074949 86970734 544445225 16797608 166136552 196947740 215433183 883066413 327129143 899341455 399469028 994365420 422707842 903294142 432179608 490200034 266161646 342331222 300330609 815496605 562387576 550030814 500199523 575351524 537761870 122480026 401266689 980920210 978269012 738274025 908742371 145470253 434473487 712825462 618398100 708294332 417057607 288145785 48046618 790049588 555299650 971125939 562313718 245599986 546388587 676391161 577078317 409416182 358074167 700592676 793587336 983822710 689826517 177691720 186725117 837278119 46783988 46573753 13967251 923711238 294717994 183139675 857870437 750018336 850937314 490596063 198013699 748072788 676917263 735105015 883211616 797212082 819568039 863817323 913822705 956194553 606476732 486518002 673538502 721197901 272895396 734597767 621355082 127677650 119088873 881958364 612319596 105245413 245763128 365661722 5780811 37439569 807922524 643511287 906297177 561225232 919593032 256353552 239148813 880180490 454038521 392269455 754903918 834926326 872301723 774001035 891534365 147647205 328457015 95658695 599043252 337633453 958143975 985452133 853910797 786173545 535266491 837628151 595398311 741528716 978087779 452419567 920568820 123731881 85837568 31547330 527007183 968578177 21793186 816734662 484443716 364714783 918285478 441767304 341570030 187202936 41069525 22498898 489102356 609564844 361129828 500938852 63272801 242839388 550348830 190809018 809060960 917689285 149717534 978437443 230993358 337078439 882335926 803196704 961679814 397260383 837381201 534963547 497015213 645764524 715530697 144936554 762504214 848747581 478089432 453851896 593794250 531898970 799871962 50137535 452350250 73533479 429055309 591414456 142313852 4448954 986806846 783060948 597121640 579267687 480635528 524495751 772650084 26964186 352239591 95137867 442088157 275109085 381711600 465950341 52287260 86340960 727393950 941462356 303369496 41628467 278379109 766463538 441976269 519879976 855335833 124449100 273858108 182129664 531296623 977516533 16986263 82545487 835892370 327262016 619693310 572127294 972699293 37837436 806916887 711477040 358804713 889315566 751592567 679437989 456999352 242734635 634143884 481128835 695873867 526841134 827114896 109567926 302321667 328800914 772174004 417974772 887315220 678074583 784052298 777512185 709530910 175481730 770469260 916599874 187945803 826968054 497360493 896146251 494263845 132304369 154001573 755501670 638777576 276755813 490158731 921058319 125162384 814679790 774959847 117018023 420909292 104488256 599928534 225631705 337938523 207860523 296420148 127474795 695221946 67393802 869883019 691554934 879269578 868827967 442415074 779039611 155276125 357888645 160726676 830291516 493573987 141830665 969141069 396245722 304931782 270479027 892397890 788630265 90459035 556799905 515595418 316976974 757350345 670555914 554799771 481140290 752960474 921996040 187556830 514361963 941424305 111889124 734091794 709739065 546397112 20855787 845892378 604253038 776857387 13402685 21241551 910293790 754210948 457897947 399546980 342456310 225040405 648592246 171394482 454079101 563088033 819120246 20026268 648752109 421158683 769557737 903429920 869026449 902693180 964771729 987311548 19467137 384342084 427169452 808844106 543293062 717603961 163202800 665576523 766618437 354447915 55662483 801457802 605212610 791410783 121821415 78859376 147613400 992594008 868274079 288894080 365862751 713846741 650282150 857358312 812397898 14019586 650884155 81709174 319342640 932157408 123899176 555478285 780264372 516699762 357294998 680596720 427151299 489776927 984287159 432113454 670392637 610437606 604556169 128067285 176893402 753605048 61346226 317264428 678848621 259555171 602811834 863836076 185960323 788223499 744946627 715670016 750038878 219295331 97925550 333952059 725916623 715467222 809429070 7880851 706331714 699532213 7199948 195263507 62242671 371550291 729850939 603234342 42978228 971519963 171388037 451986944 997844921 189676905 779687684 234298324 847444606 141046084 44847720 577383414 435537562 58514490 711643319 842409858 46764111 547080017 18862287 511182327 896968581 681924069 428855963 956486931 985357048 679544062 681034138 553746417 312088441 326675046 231457778 789664733 599883911 873684937 358913053 849241882 421490196 518346671 963900872 570141909 765959666 97865567 845621893 223140609 690405291 17882812 162188145 658918201 426512089 624194362 428088402 774587390 849652896 822961622 201247356 687729738 972299563 83239020 201198276 828993994 769202885 552523709 471443989 536999697 880935436 932778333 971214100 8394702 792236768 667184203 410001932 192683291 617339915 515271336 236170520 734251674 124521598 135999551 799641798 907727719 343436575 715983355 525759248 443496190 673068508 847270891 227902320 906841762 448111329 218095500 119698139 844321815 939294522 263513561 451252678 786059888 114677010 613323824 673585618 592268465 303020333 871161432 538987701 42946429 288059059 715490340 25142959 76317517 939507361 412426742 899538700 476386964 41745105 610145921 595194038 868239136 316194510 12366526 886866643 655909393 767508924 676508896 106939887 379503630 997315126 71707878 442126671 998798671 266106150 8189379 371853714 89441621 983802588 918399826 681279006 430274460 344123341 732063834 827409575 877134212 34718793 60042122 298909436 120930615 324094050 897600100 583236930 833908489 463773789 91953921 590982959 866165501 24361133 648099259 435158576 323359094 954223126 677643301 960572388 357801319 639893697 698086944 910413735 203198768 529299987 782774415 463293051 302043657 431703551 471232419 290040454 746320165 483367158 714239216 552040913 866140458 540994117 86695695 496525483 528886215 913159433 548573964 334232244 952771836 494769966 907730598 666407835 685764830 392423160 429669685 330522076 286620375 849194719 6925360 395686233 45970728 980355058 776297393 714789521 936849497 488896133 186251789 121513043 754778149 602042558 583666386 390939245 963300369 374201973 653325252 305041312 647060412 148094246 658736860 932637426 960327751 823752024 460860639 810517425 484888236 153610811 63369469 807370778 494896121 481853526 906706624 860933422 411819342 33769163 689010071 900401840 632319604 578195864 903003921 740386396 546025633 584088314 232013537 659782149 654092928 103345840 97639194 101362067 444969010 147727762 113830998 658898569 782908274 12742466 564332021 270056621 14173479 704352600 907302173 820476856 219530229 143352965 508019447 609606083 713837438 297347733 18833774 449080141 17527660 646409310 716770443 663673364 885769018 871174359 227592156 480376962 956651885 220879072 580079564 363919850 943927672 632555549 346911491 679822549 428829327 836121010 654427706 909001993 931519493 232876614 858129150 122716654 713385761 808017389 419638579 158812730 105142871 965398043 333650916 704587394 772637962 724313720 424608825 14872413 719591571 194044861 266021261 878229990 92509905 557287399 218061072 317861598 477617333 669736249 755937619 453648448 449681771 985618077 925292065 56180837 569685594 433278659 425755778 297315271 47502908 190586734 506983172 545937759 357098096 859779275 35183262 930346379 397199373 113006708 95051442 401255404 596680067 603804459 263692052 317999328 879071978 904221299 872600724 404033666 831308334 350913816 217329212 456948388 584107509 584795275 189325881 734966194 148409014 593092325 618733212 3563530 603090733 972675750 66437692 34299801 808217831 516622606 997713037 669854382 644913305 742658669 318225495 435863673 211858 611027300 542704412 969150354 969105907 245972264 939602054 764721999 484626597 382622842 235069568 860253454 520439004 23909296 290409112 783381123 735696553 402482288 378727368 203605266 744775302 536801454 514406945 400433804 280087157 555012455 478562845 225512053 446368134 869357037 180891485 600338453 659693469 892737838 585282820 755122151 873465045 325685037 948966731 26045619 463552161 805156168 809932386 82198242 430312807 683785344 19387110 393869136 971682957 546324013 682854660 798511335 408810252 508723596 52496956 339101207 227584592 415969488 951377826 726559408 931890556 239425867 841225338 899622448 924234642 156467178 874568777 369843425 831097050 23513917 864272463 958410100 236077994 176381273 265697508 204287982 660818355 598706802 753117116 127716009 15459665 502981312 778189206 851845750 67032941 625529278 974743333 454345694 459570455 681900402 105499864 889038754 210628911 937804580 461883725 348223774 495869049 333417886 538889024 28586054 788643934 868431397 895769183 183517867 607015459 605514651 698671047 771761057 643813215 536111025 854119272 602392830 656314326 838386536 404503371 377673117 146914377 695473783 228352167 941047417 625512108 135008351 61032147 726186593 559163303 744589927 59247608 9660385 383866758 147962391 374072394 972222360 24322249 487749915 303056665 521937579 883213860 890062337 819373804 71074856 637518054 936249601 901363743 561511696 88594311 427070268 844220022 1525819 375149735 471875962 713871851 917471682 179699962 936706663 271550238 447911495 700765419 16425039 132283097 715725602 67408325 942083485 836077190 44874051 933842419 790142572 738402624 323827958 660082159 549360121 24925306 497884016 526875875 712734194 251354254 636840982 803345743 997468106 52942725 920538381 179033618 755660594 613728389 92817787 396121223 424476615 172228145 776400019 223413516 816953800 395221294 674684988 517455999 491324770 327745390 152907764 388908432 17201832 49584408 582760722 31080501 894507789 340461166 938438911 810759670 27257051 585391783 202817271 902766553 545717628 717003775 900275968 656818116 804289352 895285556 471243916 311132848 285823316 617204426 177457122 365040676 742348021 125123122 980415152 447096187 655941122 28637001 287667284 8371351 986527658 648027527 839157994 813915918 296701828 635292705 551565020 876098002 858416943 678096664 900710977 273577063 510005155 611793711 829060812 113749603 938530130 869693660 737895872 458650015 360823842 1685674 883146685 541164813 615177753 274965023 85447079 457482670 722361283 899126369 925462482 569955524 34035281 628824612 936731544 283293508 855102634 877174206 762627140 200776551 445581786 710995098 103686256 381026049 415667714 663420851 873152505 89857728 891026224 186620195 454093773 829662485 464684345 107646449 59398254 93191814 995178784 93100193 940921342 744693724 961713958 532944049 204739501 794154767 347232672 291540937 766749925 721265379 753759491 98555050 557152492 429388180 183921155 326328644 335467319 687722096 315130149 989251030 129478923 433347950 720732418 254251993 702822664 77224440 451558742 940722975 139461060 375797591 468663849 689994628 837593964 875896036 47486270 359848930 123327682 340442310 382621299 477312697 150737096 915815220 393083647 966218255 116604528 851648832 854179182 349375544 749402166 633849205 586015958 146554109 75773283 619566862 127791740 441507637 922775059 359419783 201849429 213687360 540565112 926461959 807757208 506782439 299384333 326979586 182746760 856283371 358296891 182576519 12021515 990152169 628856268 641131595 6566324 300488350 767351774 570681844 226253932 878215097 751813394 583117157 532676539 46902850 352693075 331154888 868906688 210534198 317520036 584471889 361753760 993206728 796150765 532853298 211409919 823439921 813469184 736103910 814764109 617157436 308798933 488272802 750703237 802712266 415841719 562256536 217373239 650654421 50031202 105021312 703056944 424165673 377822996 897342549 237949277 183504424 343784315 830260342 293288309 686633944 546257184 199866789 899651877 749423719 678994607 145893200 821139090 587758590 398503251 820282592 581513199 24822723 384245036 694963283 146322531 700968928 407943286 798202239 88103918 504674285 405236500 665365627 591753046 36142361 272689115 469038126 133992870 366526291 579393891 931606849 364610367 947928335 988950896 329691159 11131937 597889834 869054849 787521915 913521791 323370201 161824988 339515796 835407706 77827955 973658585 469174176 954477113 702652643 662568604 799105402 319511741 10286491 162474990 854656364 747621040 365492702 961962476 534757733 246488037 984687965 757654466 165820965 283362523 643358023 233540350 420029821 8483041 244542967 514456095 519189056 889906051 874158944 899005660 141386565 752515619 509056293 506867262 149008700 861386016 146331395 659785972 588900668 974042680 434991837 507850254 837282299 113828469 347901987 986110373 856505209 548517048 936322321 539660718 932634616 973100555 403113134 486448679 921799956 842680385 654945202 578689158 614436927 810643899 813108264 655142314 664434228 725066312 48799648 839564775 687264180 716166486 82680826 131352613 240246248 621683103 590134302 736411790 619029654 434747909 286955607 68525043 232749487 919952008 450119674 433283843 652341406 242179060 206167475 514652500 115575409 377417063 93623007 457421197 51465970 572320564 509385286 668910023 887437266 16254867 844586928 48130921 764582309 173366714 393406246 991109968 65622751 847026839 925082836 108349495 941822018 922215120 226860028 362122010 257060304 914449901 50426680 662922954 824385261 472820072 624779831 920138054 129475127 258929872 845794655 706619854 23807111 852465025 445625214 471731058 326237654 366155186 669993188 531792737 408972365 301596847 606834984 171309935 570155504 757079047 115568160 164218333 298253247 714815973 917862807 714738893 947144584 497570785 86825571 778103498 389118837 338274194 527512442 814999392 4460343 671627229 665674444 953021164 33676038 111756981 92095708 918355531 748778032 697507915 860507753 569436258 380502576 661076582 564699651 978378917 659631689 842632385 834275508 173090621 627411287 622631193 146635383 580051098 522358396 869523126 921862963 162843088 300738879 729095459 449987087 467606357 598377141 286083008 29865881 401377637 470654619 820067892 982375884 651486942 697871358 262938277 265976030 845137707 656981695 26323285 25021631 158654747 3744972 294694531 680516527 901846932 249953917 536398107 401832226 435300926 572295392 527298785 365670561 403953474 842783401 467756541 521737542 589811174 590073084 708641625 617791377 433644553 130438525 743343234 979191300 845353632 565569194 47589826 576025608 789651791 172532273 388867058 77912116 897855395 618445535 238993995 198723838 202004902 286374023 756362734 805208562 424736475 785515219 682963534 155453920 968098599 595213609 106206060 717497065 276204034 124971888 943820808 412429849 621042949 37106936 22583094 971452585 32217925 393415273 65393210 790504841 877872737 877817936 911413548 468591627 963863689 367086474 793962068 272621323 192241659 179856884 139587105 602899729 541834027 754311970 788488336 63718196 361505926 924487335 655239723 541968157 137113546 31986012 677010277 74153610 548391570 359434525 141115681 69008390 474568794 329488880 917697525 228942904 353205133 61767364 13594109 710227082 171125087 92033382 942466881 113435129 607081445 18600130 21473073 229519158 516894572 282524791 918225698 55823571 447507383 239033582 328037434 922572597 423613460 34381374 156577212 774610897 397298434 680474981 431047003 209274510 633777545 533791609 750662868 727937116 665663546 745720013 440195654 448605575 693084866 465004118 864351477 476789262 944646456 582574722 992281828 337714059 836396405 687248442 414492960 63998822 112963180 630940314 975841850 328218987 180355943 230709589 330151892 392250925 246345822 55345215 503353713 899269325 607093967 806742712 597388690 703348982 311557836 227972604 529756905 274678700 775220863 291140234 543075824 672799964 496573648 978340303 744761194 382025432 342857035 222027728 859357527 376634899 454305317 683795375 471306010 900294831 80378499 122500883 775902185 516073331 191156485 596719441 754179400 832740998 937861247 697273080 452819753 894463274 495587424 865124515 596495604 908746328 572936793 996413564 282917461 636539273 271105451 143620443 124972630 407030709 6496903 893206754 201740866 473265576 117398315 222662127 824556404 910036547 949721570 365839339 124922812 802862864 922715341 829182955 523418434 199070279 370881623 834091508 352962326 22654161 318586967 59673850 478714859 55225131 912059342 262011524 776866818 653611630 135170424 73891411 588502549 15433046 865737657 983480342 210948162 125507015 951816957 909267034 480155804 888068626 857346961 338828473 236632018 972220428 850326935 567352042 621885830 93982734 350270311 57412508 199365221 965730925 936032066 952352730 662909056 184073191 611347315 164175544 751309337 223713070 211133274 462099769 555815449 247036756 391835036 521355965 43992212 892491717 834594195 900497333 469056722 877203287 597306857 410138703 552613817 119350201 800984886 178189659 477371610 5441160 930821051 321003999 229035814 966669408 55433409 314623416 982310032 875728863 305342508 850592380 972499733 210090835 906285067 864171487 585336850 73003079 200732293 644016275 294823679 588107977 463725883 568611469 377796464 234848495 885475478 932049749 483006851 915109567 361255772 443389562 950522850 781632321 810915129 653412120 956799392 520252815 596358827 363074032 628274702 347566198 699611319 404495080 771579059 831984554 163089899 673145765 704512106 562181666 289376684 429588933 462375761 156418463 316371989 786432899 172254324 503697940 66251463 431343217 856583476 115535303 666511771 380262267 684166509 701107812 462092739 425575453 902214253 783740869 665053357 996971878 211762066 361976591 133774063 360521166 959595958 814532278 960619874 780278796 751931077 297089836 619691024 715662367 886513857 531155738 627530491 998292570 736715578 193505646 957165307 944602392 414629313 456458342 950649567 868816809 425030610 679740054 89031873 25534039 499380965 306357512 104499264 978710295 614352672 970895038 601640556 990686243 590548023 475041057 522538337 717649036 464423519 690408269 671658986 651187031 476330294 627756344 599776319 257788005 706453546 266359527 524369670 356158747 954485004 35606800 270376627 347102800 493765734 234794679 587919899 634002553 309814800 818159712 993889842 179565210 147593829 663132902 726516444 659104603 848790674 272625518 710024196 655797525 742324816 310718336 364539012 278811045 945529633 976201534 966283176 426485961 559998510 916434857 43146593 381610721 154434902 264150693 815718453 611381945 313338482 22448335 763732569 328733182 14685047 70448131 402255288 969559536 343933053 738869445 384832356 869632902 305055943 154458671 782370347 723381807 817701670 347119326 828481617 215966444 607485409 151657203 271037953 356218054 701934476 174515654 170963294 606886372 755559915 473903448 804238589 532553132 106073173 371471941 125884055 989114624 891167047 696547375 667495151 829959798 56023722 842154733 447152335 170253704 104155768 419037337 334343508 386186976 333791929 564902702 143962315 898552356 509791080 9924073 772033118 844655895 870715360 349610998 323721801 315993452 428226540 296729799 839544287 455503311 50854321 265008535 612516682 921077990 628825543 926250162 605583793 754478124 337490961 851883858 785438538 676427958 149605097 935969178 97170293 199382174 154335495 996494270 770017327 579436059 596233403 720593280 553415439 131702154 317311839 90925834 591109841 973251690 477262116 98974156 603523641 913900440 90999534 883922565 715056329 391193989 27547147 832873307 321846813 896612959 955108211 322392421 170134603 187231207 696854186 330186822 786064329 354306758 101475484 282585412 117151659 447155608 161478705 996923043 384739056 115273261 375879959 853401693 865499396 759431509 88758280 303158641 339841805 73801753 610398770 800693745 63154127 109711676 491911951 51202093 345269122 968694685 59270120 715626561 748798949 535129892 877998272 807589630 99806422 852380090 214873434 584296651 609886066 843329347 136178487 508188259 692135538 598134796 61229597 263015096 940363108 440948317 365117205 256595782 650420426 786334351 903476636 256808132 896424295 851730118 903030050 717157801 319571320 122784997 540437594 518281366 707810692 861409170 710931004 115720531 973220344 558968269 439925886 799976229 767794437 820379471 969796765 747419489 358290558 514330988 820283142 989053116 748573364 779288414 759808260 920830937 932539473 181172603 464723123 972469055 770751229 755284447 397979195 659674881 573258311 230647203 660706892 529750675 802522132 613799192 325115345 749118090 26805130 193020916 767493770 959520970 553528205 80869708 571218004 19174544 337671697 308639274 704545072 425137182 277316874 719923771 948613037 415864442 764970958 982315937 540180360 251204291 236543311 729932791 5947221 174985657 596927830 42784435 321682166 331839706 851033675 295732587 487174606 805054452 48935857 553543149 839206053 989763363 271534692 202449447 137930541 824939965 151831022 51061098 998437616 673873400 714450655 943311701 175432697 338073499 420479378 33731388 397988948 304395057 525910620 223157588 608795921 555773389 228591363 447231387 720263105 373374005 563318276 658876246 118230937 813822388 430452264 885431188 276282114 39350259 461367239 360716788 553683359 541246995 932432970 729439359 455989071 225637915 909566356 144186927 824676402 87357970 53575275 462376591 995768752 69399515 424056842 146625097 958281693 826260640 327353966 833414757 813729942 653009636 384498842 888549748 944071064 210912806 953359285 635593359 389985799 447398719 394044291 846137890 463852417 664534326 195895388 367546360 670474586 859198095 100487251 454906551 40745917 462640277 607530834 434403663 652922962 766107221 929825976 894456838 796705304 519560382 127224174 633068201 971811913 898923858 769979085 906579325 362831085 22965864 476203116 356733292 894013069 76191268 387392276 531562004 136496561 248515703 220971415 476007981 981740884 798417163 369305153 829362548 798056962 908913206 526801917 815999420 154251528 459812213 263161966 993719170 177436343 808211290 98191907 206104994 119170193 747724401 253390467 558239453 111868819 140470278 80247496 933056916 635885055 351906293 353216275 610419703 294825959 243415002 112658910 608051882 696820304 509367399 921626878 15971390 419288079 309758146 867272401 558062061 846995027 392665814 845492577 320648281 739608474 614973821 759299076 315670552 542727743 284355306 254847496 673696808 62492092 684987527 967202234 811172008 674876517 971728570 796151480 246327692 177817729 430964739 254966069 172256324 973514472 961798120 769759513 442703443 782903429 588569640 10053841 835583562 857724193 206206297 507490286 395594086 817171530 411789382 526431653 159338600 361675769 299724455 251299812 581266467 727530421 114523097 429385129 38164646 432736972 212188454 783463681 270594084 71270755 174511619 322402215 808091247 87365480 202486668 107309523 812822480 567793408 686816224 300073509 288242923 607438770 554457786 201198991 852540864 9273306 713699801 872097533 244786831 782610370 134467740 138577590 484086935 958490417 118602622 712286496 15947435 563567373 143647112 4523430 688170625 172346517 326217619 991303173 837233100 122124663 50988231 239030470 556776400 53209635 447667951 912715734 101777954 73466630 33551239 956740251 657025487 531409967 815219123 566361335 402140341 291267632 632074850 414888402 5494791 723642397 600649816 180649786 919845637 976648440 304178222 879785085 17116779 632910738 638599240 831234491 940694183 825186179 154074979 85301294 534771878 618338675 480701156 304233057 801159445 976669069 694969978 31566358 681552834 773205518 109928204 607856568 397960187 719510039 588583527 671337686 353572283 880005574 985939556 630422487 527669136 604887536 320169079 907506764 864659838 75850740 113898676 859128873 598951998 288331148 930412983 499784179 646659763 364648467 763460941 109600211 378345423 789992722 830402107 551854415 154292320 862176 695014352 953358245 654558844 211771796 588403488 870063830 322438135 182886159 630534329 703249532 355843731 794649697 522350148 462521371 984760990 329720802 95668540 105487091 447520251 260137314 168728166 993373193 627084548 375002816 124077633 817587501 176583609 319019674 286613387 724615078 591488323 237556452 961675385 981016833 461965715 387985471 161824570 540343657 446500941 344406761 718529866 131279514 837079661 880478003 349496876 546492077 108374586 795326440 838413184 201273784 990286065 583947455 947074208 638363444 159041201 125613680 996992162 248458247 795020870 758066860 333411719 245996442 746271413 752880213 69795042 963969350 686811620 644178985 142162166 954047933 72590399 467251492 961863487 784523184 970145967 268225145 329914394 885018291 593825840 398790835 698700728 229943892 271379157 496095039 386214956 386927343 255395775 865106440 494576827 9410206 124154654 50203487 45538891 377908706 133903252 984871879 969643554 214983333 538952870 43222234 222343774 892027890 223530399 746641588 133625363 305443995 36052683 323429774 681083495 701217223 532070246 61368216 471311402 991147806 87256636 833452786 716246050 128773863 644344596 579298016 468315619 390820838 828402148 692924247 218734193 831222561 639514364 679946198 36380238 330542278 409311634 356157838 570249340 473247485 883552140 368433467 934794948 872353115 39576775 737254569 604535886 143098574 443691014 32389085 392300514 248364759 334695332 981304348 236973548 944338969 484842376 490679455 59467595 898575331 727176643 671653002 42205779 785160080 971442613 451013632 775506664 759610958 944589707 691693362 654742032 520740963 666204422 351991172 520163135 919654525 182739239 462503669 46118743 655691018 116212442 231740861 814364001 211350215 474727338 517360033 141560049 353298086 944075781 414150067 271766092 492303208 759077899 217088061 149693518 762020006 773106292 772423442 801438503 721073302 893264368 315204474 916991879 581642975 557078319 668789931 859686265 154552526 470011498 12461103 430424515 571049905 70742021 27639815 433014128 228719730 421321007 381937492 400072594 399009866 979643051 579551864 494555424 993531192 863426622 57744958 564825084 219438898 738884898 580006017 253953842 434772443 369666707 485617263 758643794 889240408 868726588 474405877 699584292 779517936 558682491 787436211 839315499 794411711 130103386 636411145 959663201 766161381 830676684 263221058 800648742 515088664 227039163 727463698 910428579 765291368 25818724 96318642 438710968 34020554 920629223 994257783 493828192 209709118 649139906 802576753 530396080 208158712 456950225 104742353 810158456 429717850 719005434 406563942 604528147 663990484 177437941 535851874 72079270 65892708 7734720 757905163 681118191 776208424 607935116 982276757 753032513 2304562 400550316 184701152 254526959 64417987 580335742 634612471 359168981 613789368 628486688 688630263 41313680 78529340 300880457 106105767 392342197 112183699 151341444 821271507 721787334 291159559 720034202 388870008 936742255 106577652 207982781 715104641 39513997 474641401 521106544 835236854 193041322 52158825 17111267 357151838 675762611 203292618 369762172 63960755 550108476 137229400 993613673 619640056 838836671 67650623 298066876 294948006 385901805 52096827 163039514 940423624 862696987 390530142 563986141 849368793 347217513 7230513 55829811 267990643 690623811 258352651 519889088 267421678 536548247 312473326 724579297 429125666 494865771 528691209 247502004 308635610 769289685 245420623 818672270 245325111 254550341 15139299 555212116 232931655 981938348 81566935 618339201 772234729 395498140 919885269 99128295 553816745 746028148 132116210 692706415 25298766 962314741 311625984 885516667 760958368 689723690 352698092 311724087 47468423 953030945 727583744 528635701 523993258 240481091 591478222 841453558 277911138 99750927 196807784 135706090 28533760 492971601 315081389 847390543 48724514 527929616 122023995 919223013 345281249 885970231 425150966 950496963 497474432 642897157 992620848 932364429 275758029 580407615 481444253 404926185 531781632 428124474 583270685 90947581 685867689 251052351 29068198 420389893 549431239 696806675 723059245 769384367 755329498 62510355 818412208 854118542 62093584 206827626 240732617 461042958 638807130 721294809 195056200 399842154 973798445 94756635 369130230 34056315 574553412 141208845 235225585 130533719 943388351 584073284 174547326 276354167 299073398 25274851 882752348 481804637 737061665 766196676 547000457 672089080 830458862 988215291 860566300 49576372 937992103 99018488 876328739 11545247 582429620 175615812 827330824 147079337 545719590 797777136 301426804 340567385 661633449 450710361 425281669 390381985 558122233 485118083 527472289 74276579 232081004 488572444 257478364 62374716 670302508 488701270 606453860 191522276 216978666 57423488 757739669 100518391 258519206 758110005 401332025 60929593 404936598 680558064 619987294 157273352 314399591 255303670 950655228 913776857 358199964 484195204 156373862 784291795 782903007 167068920 915961902 738942950 316853496 60753100 332452464 510079158 462179842 759750183 212508686 226048740 845851199 651197858 976798624 169455571 241842916 458789408 559168234 481594764 524010852 459804900 847335026 189024153 596160952 16785133 306523828 804079290 946441965 973974678 693038439 439244468 487326484 481873667 303792486 874958821 630389976 175298717 640940682 293088402 905796970 761082391 344066024 615843181 158091539 231428525 708399981 297955379 344982343 544031949 511046311 40209986 193597405 845229145 311186301 883966425 261895620 558076971 466081595 484317750 966055418 717060353 559557607 358669574 153461387 621605920 425679823 676018473 22069773 633662733 550024449 133159582 207760207 559826448 438900296 813401006 347258536 853981042 309745235 877154120 920890519 11370921 424732945 678933981 96914283 127585531 525481927 607796117 521529889 861107021 366785741 433894068 300111524 937610905 36348231 563626861 923856455 724008274 306799181 639536048 325110256 753850034 294439975 656531030 87674012 204376731 911858908 604365951 7225693 60517141 449862057 637382377 941974849 508896284 688025301 160965602 430665190 487318416 279134160 328346224 996536327 533016130 756604394 334367044 238276556 711672700 284743022 532899946 461811748 704553904 799373887 394516908 32207263 219731037 890088235 741013108 275281006 694840317 307259224 379885866 567583002 604482722 777461318 984421189 373988274 424332315 668108437 922247703 792843027 56900279 575086065 636566950 523548510 352345689 774585808 734611700 164482180 10661360 473938795 251607638 395156662 30435217 631451735 739090003 116476647 562606607 840016983 833046779 806009113 465527016 729612309 47862077 95927585 856851532 581338390 938901065 327671299 292396871 595346027 767623781 116082565 304523822 695861665 367063198 525854130 726211258 408152329 974295396 84817528 975285965 526189000 407240063 532511471 820107369 312144883 578793263 300910502 796079314 937655463 266745359 393863541 970304171 492015392 64138458 95339133 892836718 156520354 197967113 663469682 364061930 592578469 902166176 358279611 818508186 420741164 466016211 567233765 897778153 848010985 221000883 251682848 965721492 232918847 566407614 807305232 747827150 90168039 822657227 502511801 818784344 242358734 914119692 700256851 419881464 42447745 599146115 813534396 700136808 224991200 22053553 434341430 736494735 39808757 116624249 217630965 962397785 44833490 792862067 395834966 401542033 532780755 58553691 661289272 321330289 952199528 641511961 560001721 483117059 696896782 194295425 828937600 658017634 473599121 327994049 487776469 172291307 905457554 439273049 588154580 386577164 511900301 142553478 800238067 390016280 158635998 598747916 61611031 541206497 246926668 883256063 997959122 433677037 499544744 530920394 561362481 397187404 720324674 172003059 750801512 987810793 730761878 929721981 593654677 249085789 899146227 868618936 621046696 699513231 934511453 761658905 862207224 700299242 665186202 417411751 507237925 502779304 287976798 647062154 451258536 614958873 942548985 234486586 265092154 405935857 323441446 503869947 225360371 608306110 294178717 769212534 126387009 769297063 746389023 722867621 13460452 611249135 594627966 268612406 804525315 33539809 779156058 292106480 706118027 807065817 880879477 495689558 527559904 729696208 563817564 165922960 199804975 192204056 212487639 160000426 829869465 887426420 382328389 9659860 574113365 688298957 299520614 949341054 807215918 506728341 517717697 665857044 871436824 19492247 315693125 805078035 173508937 139053913 702962098 368955594 167099360 652655992 681535469 459627565 527793255 116999291 543357879 730102217 908994375 412557420 94825950 167953932 571810453 690463136 798098031 887426200 492114322 125470859 817587339 175002001 858437800 415243006 182315625 978392465 618007693 354383478 778887267 714879972 569797918 386880139 800699553 346275206 708555 699147399 73412180 509428897 511901828 931781609 512965976 712810835 412969196 510597684 536275762 835269098 785562500 490624010 957753834 423873290 947362190 198260707 748018782 194793634 927647956 994640762 139652198 111934174 16768712 265514780 42570273 833553561 878223171 795465814 922626705 919671505 105281682 490980843 236193279 157335922 632019163 643988757 726992032 274965812 50656781 98915645 382501812 435986223 59031983 108677063 778902950 585884516 434417583 609659380 620132547 131808270 738943247 711159296 700353291 938954804 23161276 743874218 258120869 751659743 530313786 773834442 648345586 277440157 375561258 608180201 327706799 28711704 466452275 236092274 942153614 208722641 423470424 605998031 872948832 466535439 991713907 207198916 282522785 504560274 269855153 956053844 985629073 35394671 999218306 884074671 846785342 374772414 840431277 980142165 236157074 374582115 222326494 501195114 921150777 692945294 928444539 56886881 596310265 324070629 601015450 132587297 92259757 433072301 605360751 141259269 551759743 156360046 290271231 540058428 627677108 63559427 500694566 717190741 484664194 568415637 700769435 135569086 853497445 878354106 860703031 99199386 73300294 152525811 498491288 262620305 991707545 979881065 110974432 204015745 697988329 256089245 450944859 206022154 545719817 628446229 540528485 164830773 331994449 31551518 15783593 714136918 768472846 759207192 431565962 926096392 78962034 171816324 65256326 497377602 772845824 540434163 511269843 554211616 570492611 797766449 63225019 872948003 519159061 505572496 483952728 833120480 500681615 54346416 236584353 306871961 365772608 619555314 687191797 123450136 109486652 411151725 518870656 922151894 417233098 708842698 679367119 276086605 715219958 540334114 545460469 804642132 732756496 754783548 126652395 592503067 805820310 535953261 205455105 254696248 203257541 917341062 480425975 360636359 365856532 225152289 929509642 646980755 92935118 952755701 978265619 738567530 164305627 190297786 114013519 983444818 750912955 129820580 595629359 347142572 67425312 804462991 331010397 843064783 92093101 413475702 862700831 942753423 684668073 761949288 526552342 638586858 337321707 911189764 327954060 94865437 249048559 963875968 508846869 609436285 218518484 909499206 802429939 524358026 985473511 36228816 573076601 495431146 161924046 996562164 382673927 910672752 955762409 476229649 361839272 186427804 813159725 561824112 79159358 936285586 471478762 127478391 510180414 544628732 415313455 448453756 726431049 876894928 966008662 80554575 340651891 27453765 336862875 825578034 969611230 441344354 113095238 394803048 225445884 96592829 764821999 218934266 332443199 84445903 701448610 447762808 801201095 235448517 15909511 854355832 267743776 897566841 4882887 12875097 30725762 293810025 344282788 564855638 896214493 670939840 647992189 310228058 111666100 741828196 168213542 363676155 718942364 799879561 163134004 263876103 545155210 911814260 352349708 912792249 838983894 98402530 301386518 692918208 852255049 234125058 857217920 345367073 608744887 845283619 373325151 481338946 365304112 815144140 182097723 279296099 441786473 753994295 61318958 925212818 666670269 350131207 66049578 443070385 235381465 684134597 709838557 998452308 625755230 836426184 752245622 59247192 792660510 403648443 327898271 36253126 854660500 141398764 690837645 811621374 247902611 971463544 490744872 946598178 211795978 41000170 833035081 103719162 7821103 788580699 108338514 57006906 610782531 937686122 866216925 615785487 138912710 990324807 103537264 167066404 123651483 117681520 672866376 602483385 22396513 134726308 757010014 351382399 891421639 415418578 954491669 534273243 781999239 583421479 978137807 391325160 196571279 383406579 574982238 290157034 216343326 422025947 123826192 541325953 232706607 76532756 366502861 661047755 217576660 561176193 23024085 713691260 632747306 988163068 385143970 21396113 511314437 801270341 210578511 550027825 972572549 375940691 577684546 523237483 323793466 644821779 497309924 544802729 375756048 52058119 727157127 254789096 754904869 338618282 997686915 106351058 113136411 641897185 257727324 941540875 851855870 331529449 213415274 209705326 178318663 388753199 439404181 866402686 539511790 478009744 563108454 589342492 646720696 676093101 855153377 226262177 796137687 951854421 863919662 66159641 453636223 579413582 674887529 328816771 794896011 965926161 729689859 528100603 922791142 965180418 567004195 823348256 574701744 964979275 840242156 643699940 979905889 918008413 333315410 731033969 362796937 532443170 555026881 799219224 614740565 451848286 710884279 577659463 676837608 622015774 559438806 856952306 527789329 556098304 526540545 697390331 300451179 202444990 478230155 686491603 898926885 928847960 958585418 391509910 815722004 589033190 746137422 701039521 841945952 302925703 6562129 179485545 82427251 385438684 188541665 620614313 188205315 817996629 364249645 259011186 211833064 503644946 63467540 194139395 821089186 772353347 890220300 176398606 603676584 89099829 308499300 924166252 299286509 93870326 199815085 779509614 699374079 459912892 942908729 477067354 759402490 463541216 779447495 486824620 968412046 928868972 330260606 461999696 490637129 167130866 440236689 662877807 906488358 639107399 886766018 900976452 348985996 546227912 653554112 136369112 315076671 127016073 946576416 349118162 140258951 218793707 678735592 125920088 134599555 223890026 113059665 35852654 659778238 38134002 728344855 408665926 900065548 226044935 466834895 174043695 835459251 49948606 371442541 689179478 975410740 948257742 342943440 747900266 977555194 999340952 450953051 221871234 351741385 721521087 657972446 569023934 778623255 847510769 350714676 422169824 724863626 65404212 876338141 265515855 961974402 826207257 94481818 369104061 368155076 338989588 556805189 441391217 892877692 471938409 852110245 914899509 437761097 392968724 606760601 973905009 956651319 361816796 369643735 740188810 752756736 876244463 726499943 268626268 45726284 668527871 126880988 247879637 181168942 243414968 993376326 601581458 570899991 385864270 946227982 847410459 544179473 186059130 529184859 116479781 915490933 289907101 34004811 875267840 322162777 344197068 520765963 210588327 619937195 492961190 259215159 732340699 596406842 332105120 457224341 867751763 779772202 713473641 557977162 78327041 750408148 308167577 701869056 752199619 451075740 593761498 817340475 289729243 175440726 777370154 446970953 112805530 133156670 807857048 870275545 395534203 623784409 821441235 463022465 135604398 561453688 177756712 853288076 649861974 628772986 953066556 413780456 710701101 779156693 325871013 840966856 576295859 24414655 949390352 899575897 578987803 7542329 387238182 486274304 461331067 681765499 234955369 261532368 476403665 277468960 702416688 624058587 137594924 933481215 456407274 426856849 79257190 876355841 666858021 263528871 623262888 847726086 254736255 230928920 552526309 621924639 672513030 866462428 942023219 644692233 188450063 589812973 998792833 47284023 352311359 182919676 296600453 432796816 598138794 616206449 77928964 90805211 889391235 708227232 689131942 842530442 759778077 964159013 328897594 561950294 424232111 265122221 419452312 209102213 389930407 207364169 524977224 211292776 615704248 787350521 570490202 544625541 379511333 862041632 406037643 49065137 167200908 786382966 787988474 177283662 266055365 437928328 989399051 70354977 242136921 48571773 812431632 768596019 303298487 561835407 569196272 837474469 211632076 982210180 618386748 510588350 569857759 599199653 988152254 970822938 850200942 894627133 666436129 228584063 48352499 253766627 931821346 490550818 612151558 297984382 822363799 3828529 408963452 542423710 965580409 282601487 506478673 691883409 645478939 487971018 110345776 785316997 909105795 64883085 79017768 212374516 68962069 879527837 195363448 652151254 391875035 217775461 416125649 564164175 544689232 161523095 915666191 920843279 817818317 793057320 581674406 812645573 875930207 705626688 247094249 27593965 61668242 34842491 551511934 909013328 783120137 362995442 890683308 492210284 486483538 418324823 430461624 977652355 764690477 174545912 424435290 796345603 751886817 194822675 680975047 981962933 990168866 746932126 624339741 256974394 708434866 923550935 844273734 712951666 730951992 705321459 9867075 18611656 595862414 736917970 2527659 6339202 145621828 54608792 27633210 597836949 192857379 492716868 595491075 662328406 346343595 618871740 307053913 144002870 923856186 777824914 119909766 189257272 215140541 672862122 638178695 718511290 78114693 744346714 150859311 858705483 687352549 533971100 195487 889408237 908282307 278004940 132976934 138097256 789824002 476835422 656952022 373165430 657800770 416398875 710634211 237070172 195544512 856660811 765977113 101544896 546941762 949862523 356050653 152194729 326568874 879190029 666817105 110277632 8040372 809866237 586573941 926453720 7698700 867768067 893993122 507705036 291097422 239186421 318546490 492144613 93537841 887675766 465346341 186739783 362658591 998962810 294553329 135057041 999133451 504910160 761684153 859305836 33342646 867030288 747851654 108192582 874470198 374589657 589510912 938429489 252452937 243195284 933418309 890701580 913254049 181975090 971150361 873360157 13216150 928989830 188605662 227809147 547825043 963702899 884578775 818332754 59923519 987699344 246753919 927298987 671376868 758651164 623117607 472406153 669388473 703321546 32187239 271073716 987744171 138009250 606277500 718654408 557999761 26394753 813295618 693678644 918595916 322173194 365617575 331149705 809579781 44710857 835231477 253756286 877831078 29057882 741219657 816657033 386912984 288725761 882753167 516941092 830807220 475647799 897981922 466143647 528945691 715641495 651023880 253996538 89641571 259596675 707955413 7195398 134913670 15692894 478647081 595359433 658355850 514508174 925512026 933947010 668218891 581563411 457181972 202719131 388627781 165857451 909792991 736177314 895175858 475334217 221997628 529815567 736426336 316887932 367084479 200360968 424963629 469321008 448708417 145837389 125235004 791370600 681224256 983769904 489310166 725280022 470393298 209809172 907369263 365543791 304369721 46481500 683511495 816458488 117327850 835517756 531750450 93861106 839252595 13118532 355451058 501873068 291802057 355477240 646555356 943834449 693246435 855770589 537852273 787481971 728975148 345546844 517574011 686611345 119758146 385885789 545602371 536448493 983584393 468125518 653080886 887245056 238030738 593385228 530590022 756153430 900529263 680233106 464304773 411842960 833966925 655107761 662157897 458154009 898316426 247979312 801789354 538979382 177290438 128316410 99620179 828390883 844556611 852569619 14818825 309847747 565338689 901803179 681761672 736525289 698551422 13680823 501881106 946446866 573682228 862891150 250262183 80958628 230939330 336061783 157666445 95637221 70826694 953925526 845675991 910162173 707808099 994523132 181593310 936191839 135686913 391236732 719192828 237903003 210648179 505796315 22359856 92075388 299509267 105268351 389958214 102895082 65383210 743336319 997494634 524123920 361897069 182610604 704500152 632249620 198360963 673379570 742835771 601189977 347704566 395618804 679869219 762942416 181180369 811091473 72149132 302986282 4770598 313700342 946663210 296223662 308316531 294784485 147742343 953572152 768004614 15540945 35214326 307375690 429604743 634059177 497641691 679292076 351167572 821692594 249175519 782903847 664240028 231993287 119791294 436570763 553185309 133901180 992487976 888054358 733329273 69093975 108964172 116088957 265686283 33229385 184313445 759750114 96236477 139990261 602059365 714237241 683585004 771363376 914453630 602651858 291814852 45967426 616569541 804547593 530454560 854572240 702063065 140797621 865628258 514810359 229734229 60178356 865516636 504774833 620018154 588303958 372583980 728926631 805204255 661625940 466737672 667557343 170196380 738350453 856547961 82350497 924271707 152653495 962561823 748350960 957670079 945214449 636619886 165048611 202756604 807377430 403537486 36660823 162824412 765850020 580027634 72567682 419436352 259211043 99755920 302475534 429173776 494537793 960917064 3546008 339730222 415180160 803639659 874078555 587429523 255995492 215457445 869398789 419507999 705335898 630140104 635072076 890160872 857251706 44884643 254582981 664625379 223248554 436498863 130231360 807929933 8502294 187825710 100566241 306136343 677766694 864789534 477633281 152460996 910654947 950032146 555641622 894693657 647508593 716867344 297263896 513374720 198651971 125621552 790577109 488685691 791327701 266043285 595661962 507779387 346099183 823247302 361319650 142334932 523024405 628967394 715937992 207712817 53895266 433022823 852572609 715588885 865876524 273598303 121743213 879680312 466956768 923174128 92383301 846430478 574777010 155463596 913078026 172774585 24024977 103745867 472097550 121535999 257670297 498912631 824933071 890589240 433939402 950186994 505672401 737385694 829537879 23824507 176367969 588895403 100052509 791224475 71956316 937685431 731947941 385445608 975308458 344147633 412982660 353304257 726519708 269095550 863832309 388203848 196315561 402670433 705647908 492310355 639945678 159884693 503084161 229346179 293611383 302890296 951206252 683469928 972532324 794442052 173621074 249455580 870909981 612418181 721878616 746956144 406135804 827075334 115801041 275761086 664400901 954440762 315980391 959570847 946141116 189484284 452049524 683905114 50148407 648546087 976953982 858372076 127747189 297218089 412139891 340979478 795504901 858153438 709180235 645256500 292590224 936336070 235349212 563758836 279027171 713980788 360998945 907645187 197014265 122807587 147833624 885084381 251698192 195453574 817950071 136771989 26058208 326562730 986432699 472831610 91527503 295329650 359248702 215063931 573448486 164962455 705978117 547366696 697996123 220774265 159930638 433031733 28558517 839864027 472236065 229833090 312970820 900756848 611821206 48485921 545559889 927883575 657860417 543465173 725307960 651664930 828278253 622250564 542018492 755572812 676664844 653846528 524679104 181292537 902763688 65158606 982772821 61556554 723893049 965840328 508579656 691485378 994300990 71201576 79629596 516622219 477444269 791210600 381521829 801870895 937165318 260328712 541832095 512692801 175361371 548949766 867656405 49595628 151780030 215393776 304304401 598709450 476211277 380372277 483463756 51597882 654399108 701135132 187904213 426686682 405449155 329615440 584995406 553071262 326457639 307546981 768161581 495871306 329259251 675963912 536610613 189707797 738256083 346459819 911311236 455860906 464572041 843884234 77845054 844009200 211089 703912375 188753174 776233099 756816703 588162147 168069218 995423160 308136551 659859075 945818694 742939418 451593815 920905327 299486237 825049786 888690978 936583428 86634650 124373790 496030808 280309198 537145680 486855690 836949474 392449330 925755926 586971339 94462857 554351476 608012936 439788046 571338774 667926532 386184449 653504360 341098071 90939955 412662644 556389227 908056196 898718248 257876547 890995051 312488198 292536061 732193044 240599014 914321743 833329473 876482632 771560410 281085375 348247626 725792977 779112451 573828029 995314650 536908096 657000090 179344290 28751725 40899298 598563792 776181517 887921804 522250728 553953202 24802121 928547969 499944873 851411455 104092193 769354103 25683024 751220968 750001782 158874955 375811838 681766198 43142640 741671575 134798489 30010265 887887791 789601199 296836627 943663757 727862492 52086669 783189450 796366702 253011980 29807504 731067183 532424313 416223289 394801463 475349900 739667585 421322226 64398334 193911826 190781196 592351759 597476539 878854819 948900605 922403697 902689826 247658186 283886381 280581463 83322130 769310276 958470607 718877701 49288834 316630768 658232249 747323191 939477392 151397105 66884403 209243528 790860120 640488235 481054847 380071759 783465596 426925235 426039513 104666233 304890554 602423156 972259856 297131311 740370100 934109039 366272441 659859773 248205357 335284340 611615867 428610679 789340286 311790322 234326442 457179269 415255075 300517465 878044170 251422206 345019504 10879235 853165686 984811713 525395034 40327289 647143416 809557320 307406203 331264391 921243451 288134616 844343233 630769178 595682655 430104253 150171677 758182357 497770580 761467473 573307291 207994033 204155162 914824748 909410715 106684725 919728172 809883615 901547295 29874297 421287622 154372431 712606694 293574674 486096835 702645420 657344974 391389395 180401492 641215981 156453996 810091370 171792942 61694017 840623563 876898370 834720650 586859730 898133872 547109484 646462406 279542903 927086188 590784623 377783423 333872982 884631482 826699317 835317870 193673803 37183061 961654165 854891020 607051984 90437102 326010548 84976065 742948824 69476357 206743427 828868034 992168976 77275 193501023 822142506 394479569 2398755 262627966 590298159 826758355 411310097 678439714 663720442 277147096 938777742 919884909 114592787 444866169 422761967 756994235 777219436 805140719 57189390 384669938 260554240 375771739 321601078 378236418 567986148 644456721 296853988 51325415 831467640 668167998 153847059 356827842 22144601 675101655 206589119 271941710 623863673 406493127 443075569 261882120 489671235 113339191 401275083 183086397 727440564 498437060 990500668 724874396 208593569 285672106 715936641 118247554 724694592 568158467 665582771 42904385 980624670 464663375 724041987 230246016 789226203 6903218 201028801 575538223 637307082 411593358 963309228 403448474 807266475 880649404 832312199 888339861 226326008 630669607 870934668 481267707 201066268 479748778 876308925 299959178 603646773 110813485 464497656 561141832 114742797 951487090 861939950 566235182 916170778 804809180 881901999 68674809 722008141 763374479 586290132 806854454 171031337 137600687 168861912 695599136 156339063 170529572 529021963 913906410 588886 82551089 968247181 930661430 180772384 781834331 844169725 834351455 306555045 159042510 775410521 357769939 405828049 430912662 35927592 709014680 244341744 853252514 421387607 694433033 940600829 438248756 742025701 635759864 102824038 262517233 148357412 740305057 645388078 962250369 663449909 886319110 800549296 34293722 817246904 991031548 964871668 326405723 576436334 934412065 489432166 520117417 504549437 238571055 987113304 15681282 562888413 85701817 571383493 97775078 830488 336502101 586607624 650123314 361715853 329515968 647919319 345260159 356537870 179553034 547554901 215840106 390596363 817882776 122796267 958865193 186424578 564086579 609064897 700004972 243274661 623765707 713229430 401603460 838821470 426633077 828513652 898807143 384301976 723314105 963868411 326676348 590206247 661888700 42793587 420074240 166700181 772971186 213981388 969989407 903500792 581417866 804363455 581210863 356014593 864562226 421414081 756450043 234928335 11371912 621382854 331370686 413625374 998724517 327477671 68479291 680673409 432071264 718986557 368240823 604018363 808403238 731627582 880328720 252788957 165604461 495267880 989430863 768679942 889808598 344144724 175084734 378232376 840748859 514963720 475647203 250445249 771638480 641076975 99933239 477957552 587204694 353932613 762942449 853166258 515702524 905793369 785286044 792079909 702874072 840113358 153864630 578133307 942418018 243860225 114634984 346203010 252479294 33034344 500958582 808981128 45926269 621846718 704858991 38873902 440431133 419606047 110080562 458715213 662076215 373251622 852937271 536175441 593523047 394784152 684964258 496789839 333862227 358538172 931395168 823458775 511715778 792339780 346652449 891308237 736840195 965918871 65339930 779803152 15467422 341859564 571548238 201312713 814133370 743694216 627386966 10697606 661705750 50546996 426125179 89237396 807351274 310841881 852994904 840036765 437841220 283797208 69777674 389285200 777191442 81968896 605317097 416165337 214733207 973133895 984477841 254172459 604694546 402453801 624627046 660108798 760372478 949903667 418463514 42134808 182966955 102186282 502681870 888926765 974484725 162212953 72470563 27196216 548768015 597458623 811315025 613455601 540681647 752082076 796057326 402450565 281915100 607744441 992287857 819101261 806747753 944699212 316088329 339183783 975409485 39735550 385662504 924781631 306418065 598548831 375833400 307393113 897585678 913845282 658119859 685782747 859281463 335159360 802483063 436225045 281145266 532131908 964048537 429174116 129924549 724575100 240645810 890751442 266646526 56227914 773175716 763094952 666041155 622707636 475282809 207461224 843840932 547972666 765550362 487828157 342877266 511026330 651227369 943076999 805727195 820536479 480481437 403750864 653510875 378581113 375460733 381661746 872052640 502401796 743873663 515731650 425493863 460422385 348311371 644881464 632686184 670966108 316318771 668876450 273076123 270571491 933371096 430793814 681052349 776482300 44609192 977253000 590508693 53425987 847563222 273023478 859731342 220588877 30050210 139394394 468732648 366116123 132774645 57581353 750249907 102488689 891449330 961979247 606330893 273122171 845966234 733139333 233944483 327596956 31211587 935053804 193160625 452119349 285151514 244390809 451746784 426884935 898395774 194324099 624787849 932083408 155697736 874301380 405175495 312235836 252684947 991708236 414004351 557528947 148943897 747225784 564017935 91876556 459938040 117934742 872562493 104806472 945303107 769494676 175601753 138042856 983803784 552460243 91520549 926013469 961852280 980365944 547545160 684025136 731510282 569787097 704298240 389834501 973589666 747207651 258893729 134914862 590418248 685712902 547038318 150994164 919413551 273134077 119239006 737378157 941519019 960827620 99706094 463766096 222026879 821434827 672184234 431386338 847296691 747403996 775022094 695722807 472916740 499801724 11088495 969375065 552855324 374825316 309840830 4762199 113208547 992262546 170910921 344086808 139750099 97622917 600574738 353793263 830696523 325306138 443002744 582929606 234870638 631410349 839200991 716266721 584987303 190551456 741000551 750344313 234243858 629243575 666493492 829204360 368917910 290949732 617596254 974960665 704614199 264956010 236302134 856812997 818502837 692418077 78611521 990999956 933906274 521991158 726500570 412573303 451943957 657713231 802939771 865854356 428718651 727808904 263480209 264170776 871149374 94799327 471293797 212697084 445873219 757936616 78170114 402856941 424565263 622228492 350377374 647079135 111556629 580923430 632448082 969717010 840716325 794238193 604037122 667546151 482425217 370097823 146878686 20439520 926145672 452237248 612426802 974078964 68081655 781715419 347393039 679734421 599348529 854954210 622569640 652847312 248870140 883168606 546598122 522461289 434373015 892336087 821943887 755151367 435436399 489291397 525988635 408310021 784171419 239516487 726246216 615648685 467833264 737745011 594718387 467742599 390069265 392113287 752100290 179466815 994673737 558121293 590637342 205235085 748508048 310522366 531406148 841056240 35297503 917637906 650196132 421875254 702924205 533720693 47021769 44904701 253173088 994801879 554640829 598068470 877950653 259966349 957393759 10345408 71020886 897937014 556468971 791482517 153477476 61337471 130567861 253007654 568400197 227591476 745537150 819543351 292050106 201266427 340066377 610034660 129966246 914067407 801791972 892168327 212726916 568351365 464482743 208523295 816355112 289635774 468425198 621504336 56483322 885131850 316744179 925388898 444614333 238012124 524440516 164372576 126210063 699420563 248265205 22345721 402048309 760505309 489570637 479994394 775335717 588661899 487837095 195458483 897194528 266074865 650196018 866914296 342135643 343584812 336493314 602486372 168744945 25887318 353751274 315483516 465562207 797240329 33643614 724936865 539044442 476889324 139178130 609009614 207807004 609086060 958303862 107737460 993335711 598384522 936506379 969506726 665108494 211292781 771599188 415685973 65880413 299988833 436812745 191119160 734625137 758268821 646329258 738764067 107509809 953623043 451409372 330551774 595535645 687431503 868797234 448542122 499165796 46103361 70618098 776822829 620431865 771971065 236974909 455751395 58759570 341276248 516683306 742127787 710362889 382984953 407376467 933581309 990909009 272716382 439017339 937814288 601886743 648745912 365974060 917430985 6918823 472898750 89165768 786915591 315264353 640411805 199057291 359306387 487078163 149921713 40131540 205165193 650038741 354472394 195524395 223810253 869479831 3200708 281049952 250081936 639677908 108146576 108415800 688306730 343841563 899460547 362402093 192679612 938784491 998895928 932570174 831011644 266759749 249854530 661458004 97959393 804190332 532208386 857007032 965910265 634768194 51719075 33442367 476942792 616449608 219098211 934844522 261293097 750530484 68913511 452803850 96828036 883097154 464180807 750084061 455219740 506729034 565418347 473076463 422228470 807708611 721892540 813365141 884823386 191956603 283158380 799376473 346473665 255069261 405667420 971238245 833623833 515960508 732807368 289156107 158464467 621980943 646993014 794192307 146557197 522091521 32386932 529095127 839560487 616905279 811352108 60426877 372247126 11609280 572039078 282572786 836116037 389559938 735843887 834992570 127352376 22675408 236363799 255604781 32496769 265933057 703650644 448561167 101933785 586603504 264355267 74715697 4166458 84854087 675969833 110886257 788052908 56529287 987152796 739162745 349997882 348761507 44338871 4920846 67932117 263260308 410157454 533958427 399496599 707143336 143114322 186825792 191757302 870297625 557006804 988003989 199877619 527459055 873419401 973892176 322194920 483901845 821651328 729129126 255830886 697014694 591634395 730619753 839949480 90481592 489444096 267402227 56137260 481689572 69379190 182462121 806483791 837212765 960687651 674774673 906118464 673974958 771260180 315764571 579565969 817304993 894513209 902099547 943360204 495706111 871319405 31551208 254884660 259250596 113910439 401623431 12513173 91951750 992501608 644543055 561688426 23630119 361403119 928308969 398130385 279552620 678407665 38387549 304825620 141681193 713160513 654493837 536372614 726180424 689557872 75437759 291264513 993258829 179739122 908491307 730185703 46452407 348460808 830413046 781958479 315102369 686746758 322911331 452034057 555316076 151491129 543995314 350686687 656703439 761173994 622817851 501115664 234598626 385111866 559577080 665431414 429810447 165679270 129902638 355093674 831292139 583104149 14531187 643047815 727538758 797545647 173862837 313808775 520645465 814877965 785602474 733535593 470256087 707243951 569428474 781864709 370777463 182813836 29324692 900927019 952400228 208560967 206395752 285834864 599383784 59263468 539808218 202509734 391295082 177558200 665466304 980432743 483583013 116345131 839340307 556476650 828282713 99182274 351860363 799263791 215298501 905046495 159794777 598059147 750748651 462653317 898055645 369705436 748203183 708039580 539915353 434587565 390534960 768086153 192547471 782508045 227809697 662914776 723131731 880354426 20626699 219865527 981895864 310481059 742899706 399978755 236321209 889761805 951246894 786649615 8521723 435536416 74089844 336021003 341991110 772194400 758823656 218307776 58825712 181319433 944599500 419864976 487895018 554694404 814419462 258026326 900687578 952524502 785242688 408993153 555489014 791731001 846305108 309297652 555178055 83130557 462636438 320952767 698759501 726990258 903173834 738114945 202560877 889932644 156341022 172466645 230999992 578688553 9007904 38094785 72029257 330457968 391930200 755600695 392601924 154036635 714816302 375091434 596718850 467203973 862465315 100845753 982481116 830435554 288275902 649150016 385510832 174422622 867316692 794260723 764010148 437835507 805342091 691436519 268662934 840334045 700322884 496992342 647943132 294292418 663312873 515259596 152850983 898477227 648050918 780579595 610247681 186898605 239440996 365737505 943422519 868476019 753020969 506407326 298256346 957897579 170409850 870001966 270631632 20286975 914858132 747202702 655578615 778386685 756485128 908293218 372491747 201102653 32967971 544546302 355466183 123016450 755029402 802338712 308074224 842689896 890569754 34183294 947845006 353642969 720978959 716270804 711328028 207161999 609162651 792118184 383728925 822943641 593667701 358034771 946494889 261685778 544892318 159046411 88637611 585538376 473309789 17664291 713096679 171084019 508253928 811554182 537566186 728012602 357825491 401328420 252589798 98683006 493740429 603018915 185012349 728230274 95525386 853794456 721635915 946472026 920120587 433518730 611020075 482238567 372590346 870518150 928598313 791317697 458570416 148617072 506447509 248826108 61311184 774814801 526372219 976037588 984618856 117308587 125607082 431367163 366034989 594978539 167057618 976807031 225700525 935885261 377900852 933935146 29803274 367001960 600267755 633214900 717206076 379589255 227671741 838707758 956568525 220636970 765193886 7299418 156354019 55010468 823082648 775078397 167065455 452903054 157378091 226656288 806250026 977451289 825302987 428380242 97162207 394730317 158302337 103981133 128205566 29315810 199038946 257590134 897294400 997902742 451075968 731738540 69853373 827596174 306514345 497904648 544456569 530006899 783234287 567842736 474206972 251310167 365100625 538578841 406216605 470244613 633877734 905773913 887425891 811487747 946975552 914443278 505734313 929192883 426298517 536636694 523071253 485193769 930128691 807746256 113242761 509951341 385068940 654765591 358570380 200955898 69486303 400544389 886023272 285404513 831755099 38403358 913356837 142788352 730750921 59694691 733803894 986005661 259206666 924059953 500708750 808357927 224479464 496925570 481968914 206120884 545763249 152847 336190469 676513632 459344704 58405617 335985168 922339984 207222334 543798917 244984482 599207241 439017578 744738523 405572022 839034631 621775585 581777983 459492283 700689408 712775655 445915880 861752730 20639645 126102608 969220805 329586418 605412724 113774558 727511113 539539962 915328754 434165870 649968806 454214004 280739637 581378194 246069398 474469602 370849069 834971722 419518036 327148890 272076761 999646866 983543376 554632447 909930861 283207355 459111082 781568084 605139765 4131643 779378245 654622649 78483516 739746498 129751822 715353649 705949159 106798372 468739172 655270354 470448244 96205378 833686888 244887535 637383585 77774569 963752627 864069038 811493359 691191265 756898165 975835655 724046172 951306452 374594235 766225734 23918153 887192503 254994307 748201504 210901331 903958959 749451013 444506321 912833210 36048622 953628868 253089898 815529394 235333099 542221016 873440847 213901679 926271046 176924443 562671218 329987729 162724412 167717036 984876772 548488977 586309948 788417408 145588869 854332075 882290060 682434952 501638707 23792430 105468802 621178754 484604708 582953614 473502386 307613031 234158865 507215990 850042260 189417196 543798533 109620261 594750807 732065160 584958541 166606606 7958927 238178644 691752553 747581706 266107188 619432651 98125770 482989183 411608701 732269988 545586808 206120684 252814504 110043769 20790197 998136208 384871681 7538432 949467325 420773181 606256320 987020370 762267507 746122605 164801075 867310464 399358120 307795548 697543233 902172824 782618276 343343686 756333968 209855109 170150786 866374305 21924345 967086205 925923496 884259366 406445509 776746125 943192854 955675827 259405024 992491169 254818474 236714661 627637524 786750115 641363012 226657284 274832230 611960263 359211105 797762 411219922 922602287 355703288 441439787 773572981 761342543 171509253 393108561 920919923 898502635 351084337 599517306 629963001 158548451 434452893 197531373 695501447 459080888 850996390 713396411 675510281 471472643 176828709 421623440 760954043 641839939 506380518 576080799 198328067 706195674 212842222 278321554 33435071 617332877 161779331 464977078 579858201 384517267 705450303 41678252 333431591 209502055 201405080 668850373 667810842 583813404 747455821 307422112 857662761 349826675 580113348 796670498 144580988 524919863 796129571 313947637 819662696 704984713 244769298 843301557 735795953 757058689 203352386 762264435 721265749 381573004 576520065 157171776 638397851 617049840 43674745 537986947 813138302 79940974 336902062 366402047 92853295 775874278 58049262 880081302 418154898 307892449 373161692 902955242 593925035 471580341 927433769 262985037 976558721 691926981 834913776 140522366 182928316 495201534 278169124 859623298 700799920 703219794 683099969 450094398 579738310 238831976 383832914 784332754 495277410 174428244 520270358 209895833 292122336 137111866 50721242 349743996 395823940 43877826 606443776 355222530 129712424 265550156 385633117 56467089 237337844 818967532 952752303 679351634 498169947 521164154 980435143 483480870 649430726 536102779 756138489 734178889 737006347 971385420 770413607 889103364 944874869 902722580 739697193 386225605 63796827 195919486 503332848 942170882 19400317 541795026 287390069 834986340 277500531 577338372 136107635 848415374 838539293 470879621 867934761 969818538 997391347 487756363 304746108 641475156 412001899 219927775 539052168 377318568 159042500 680585560 420921882 153360008 174485693 372049239 227426703 497074082 800475549 158591853 308777845 619222972 255364549 567929276 142897483 324720144 727889791 750416990 543512986 487899665 219718237 894209917 174601467 227567310 348390437 820658429 361092343 51928066 952348867 518745561 601525670 32684817 125889092 113484914 846279365 950476516 811754008 165589723 988050157 901030901 741203009 912855392 734240497 220478927 406664611 527392842 301640202 553643304 830882389 338690145 630383826 431117548 917278800 931398313 773184282 30740473 598041796 518680822 584117162 138176278 987126775 110723917 204351232 115200688 925429411 244251767 942279297 819809762 601122970 459405575 599072941 691267168 122697164 360054997 344267898 529327646 219577520 345826170 354485835 900730869 266341569 682789121 255941255 146160799 645854114 600928053 150215914 152439500 654578015 10689026 2263650 812122565 698360098 103594484 342439864 880320383 461621624 997898227 990047545 464778582 951327326 982756088 453854564 647117391 804116486 197904563 823558413 858300784 73748544 63034216 368453471 155537118 554857119 586519726 847462981 490664392 451841361 310323667 793509723 391818309 482547913 130545410 618845567 384598108 579504635 57986318 486632097 105952293 30483682 67772227 437003377 417071546 398581442 541651396 677429241 789900616 418101074 957686354 792560996 81495100 231300969 699895542 668737390 168210480 440190878 831453954 804359467 578889012 326273376 310921703 815305433 305207975 325634080 148793088 590693947 313345601 62392351 9950619 809182075 505599192 438829854 747374216 408778532 155593150 987018728 977585948 855265706 819306295 471645709 869693269 276225735 437965520 224368594 405597385 887094370 842780954 994676645 44307834 658262056 470650000 382382140 5000784 193128965 452196441 46938689 11733975 539704417 189740663 551487970 15407669 495450200 19383484 410130147 450337227 793103330 154292586 755205263 79128716 728562955 998332780 556880840 774326233 586460399 639334438 504255454 458367257 43422218 331827701 550896103 664820472 980021546 911660159 653493788 454797778 787482216 884133140 474647616 261003162 900030297 900705899 711371987 343744844 396889322 696886305 530767505 936782540 973223141 762347012 480833061 621522392 145518522 992835111 26433782 425468505 467782202 338129331 836871418 903013253 476302535 639649836 44636746 906047682 817238253 7571547 86699865 224138712 287464581 430324676 985663484 103419483 117375557 386717753 223441590 300579601 787055567 679478594 922073431 209880635 212099070 979107422 22890811 501707680 131095744 681920231 936679534 306797754 531964663 789862589 738330663 88391467 644197253 925976405 80556875 124161970 129283337 44148726 216644279 232880676 168491851 708255672 389851454 664832319 498433532 407277713 684014327 550514091 945652464 642007485 566403132 671840726 284152355 157389493 759169 234646369 378077072 301548249 999871336 977305667 481070375 675077688 775941525 683219589 49570861 569077097 340568826 50549888 710166838 818304019 220106830 478047324 978769045 322605654 733977224 666496584 659997821 491744391 119486988 986356930 524810421 324045917 950253398 766736629 952289399 970064354 377929536 457753730 327521390 338404304 547835247 206944134 368599234 782300255 8663639 556520720 553356177 594154924 669993975 34806825 410606392 906408719 387713924 110417926 718124321 555456070 890970524 839329631 804589455 840081474 51700083 224099584 800162135 776387327 774571572 709501012 921153681 941302569 869784741 325023160 947321425 282910528 855914390 507378053 114770320 90171143 718241162 750321566 357139073 46953354 757059606 605291982 437637794 954158686 546827119 269811900 917138411 606041939 31932369 917329831 874192094 477276634 444625165 265846659 291546594 565352125 554767120 193808892 676708121 162165079 195041631 770253587 218978469 154497164 843737816 440806895 520919607 670679366 988755209 748749646 828120888 819017579 842391001 967570005 983441117 708408498 649824314 665015842 835808356 187666461 112636408 931300092 287767774 278909834 410200125 765420923 897463030 37750029 478187451 336127180 420782727 912167216 449758018 110713632 140854022 577973724 76463696 754199681 402645003 749991070 873653170 351744324 108829156 848422967 498842860 254987207 685684786 63953239 481598602 447439022 419560257 981363904 406818518 652815698 662017718 198274848 815380384 556278212 344548097 989966789 691935596 793122091 928366281 192640628 902849441 494541347 123771735 853309674 756939974 477857954 984869223 919179598 680439831 22119322 901741231 348819156 971575490 874910218 121102584 243561221 792322671 660734364 781359293 350051015 948774864 965258729 941028367 510687867 928810713 400149896 146636023 639058579 268960410 356948147 833288377 850600890 731300127 447495347 23218470 492951774 292668097 287121258 721055591 324093796 792134026 385306868 674843371 283853538 563340137 42620154 600826346 951659451 925281807 149481888 915028414 321332891 536396343 171189372 720419700 174654075 84164424 283127580 963666608 677311776 765974807 173526095 370690785 478572815 643904307 379816317 786627249 341816679 791943768 516890627 208574764 123120818 834923152 338200818 197038147 635201687 453094158 166754966 625162982 647656760 521697551 825843144 873725629 731312277 939259988 409124695 403889195 900142490 873411133 638307721 577160503 560407067 871919880 928707112 639407893 810137262 663150864 990585930 781091965 828365824 679722855 910721177 457735730 674832542 951208656 608437988 676183471 26273867 93552669 12829192 282156448 869046129 29442650 246040384 328219535 533962037 123827979 666063605 456288386 690148639 907778270 438031658 182419702 150151318 373959863 143313601 330220407 852235018 953284452 597257264 674188237 873416501 663746795 566188843 171265497 753363633 228404298 409848879 839355714 937288875 50053562 899412937 16207931 101093637 940399733 342241422 292037744 501643826 281693825 821553980 1678244 798074496 410588957 79081308 924867157 989385210 139249613 208044953 338801208 542564451 7477649 987236030 934522177 112803976 350300989 550028488 904241597 875695390 539952663 666662546 744309273 631318793 574317689 236582212 487045 778123957 310625411 777884593 542244297 649780613 313458785 74630392 148605272 449886627 673581062 579611116 925685168 56617974 50893040 716519685 581129955 285059014 733070359 755725749 417911861 756060387 78198669 13822673 783341635 54089227 490257157 454900341 552076849 807407071 630214890 307981362 374512874 70532717 988948103 280816167 329789918 855453013 832871683 222939292 218124878 569067664 510074184 626982400 326722081 139157774 413807130 669674031 749932807 476675618 83635636 699081400 492363511 114216783 178140346 966169211 180226072 531452295 173681511 652563159 796064549 387128563 164682348 820439929 634746841 108784971 151318532 26671336 293157958 917430117 856060369 15025623 331264162 45125595 416120192 734810820 669424654 224840100 878465206 258914244 320904004 744038855 891052672 214979186 324922435 544123647 634461371 441215049 796752184 138202079 511003743 366462080 479407160 724424899 832445052 647185632 207555474 313712901 165338145 484211269 107681317 850059035 874579986 836436531 826348250 423144110 851558227 971401630 873608553 675291170 456134962 164610732 810505833 205710772 738801677 481656670 765782655 453721935 945889836 71554827 581496758 435840457 700643886 743403770 259668375 291740730 28686017 416977027 152834808 379638058 148023067 498582025 764701350 470714446 222697066 843542600 73795404 272096265 882630917 732127836 33262846 130343488 817464950 814559362 854873812 67427542 838933783 745335980 495221857 619666753 77043745 934766558 319833867 474675529 586194234 957083882 150727344 793665258 495865311 689941302 229770935 922834877 416040002 427995021 936405353 359438131 883544448 713416793 634216883 243319493 152097247 812803101 494441695 951781325 266272680 698234588 795373333 929428136 702529411 405550440 617149524 559358957 170984172 770253739 67839096 799993433 935557140 327960609 845438761 19836044 476349922 608878664 108981119 171291397 86210470 657730142 460552039 82986530 261584381 382590985 89231251 827779443 359181796 128453803 302444886 652488904 674636500 524924799 335011636 17537868 200169464 385043066 533591604 887482659 354785195 666254029 190045906 483731514 746624983 66501321 700012857 379565242 672731133 406993861 974621912 951917434 459566137 722998354 184537849 896920599 52440543 34711002 347347261 446686252 613540207 453923238 246785689 793664533 406213817 225349164 853434550 738781801 38718309 645064649 618327662 186009581 970428928 503454752 417628782 143962899 888266913 992279067 239919466 150531742 508331927 412674831 69189689 80477730 339563929 234246181 24295252 440090461 512790218 279479952 787054774 369517528 178146262 947444202 804878335 772418042 886459131 702420523 297890521 515725139 789375585 740307831 409132636 738514090 135964205 21137745 65891955 696609872 368262164 356243528 559008900 226880693 971374745 493206349 586982771 704498819 967184087 127588097 982188822 381915654 991690036 993016807 131225570 187232048 246367264 930049060 580831721 892354141 744589645 84770563 547370794 299038587 697079706 123178610 360690725 459064793 888603200 796033327 562997082 910403990 937288811 457159567 584498193 223627099 228963609 746747865 399350643 377098372 596754757 860342945 851416622 167952156 226154708 401487581 591515234 524216213 514201703 268612988 337537595 150691603 354106037 661918222 270321017 429333667 493892260 258599139 715913645 833712201 37278747 473908571 913037408 47652409 571989806 494245199 887224059 998198857 273177773 646719930 618556893 719857808 347522571 909339428 769067895 565012095 844826050 452379800 167987189 424752203 678916838 706095236 374871558 690744983 670081019 715074042 187375848 528415949 242478042 79023063 261460606 376146273 245993682 56362221 922684393 146554238 34397887 41446906 297466069 444270116 663649502 562718828 423715924 449017085 14446659 694595352 838359509 748651535 371676473 198906861 580805510 533716215 220772416 760019681 695561004 928532638 372932671 752844405 996215784 95909238 836560090 185303602 399457335 372129501 935408570 623021031 782079202 497954929 696937231 664398369 937194002 809363467 20777046 39326751 731779702 614894528 495929188 486200429 14390185 940221602 322065671 639945719 639792471 168175070 330373687 404099142 446532464 436581380 649994248 427613315 726380491 57267155 175847376 627852291 243959565 76867868 137405537 474695638 344218958 2576431 148393858 112256831 828989788 318431891 987262747 568055449 265091176 537350433 188400126 787333045 273373188 470525283 433711372 763563466 909424033 640321430 792107603 240503463 175828596 923858368 222184319 184272206 723103123 482913999 821196561 39867962 486390988 990493319 225816706 145139324 599543295 154014891 358968192 963056757 566911961 494449602 652610397 12193516 566072530 973793880 827658748 127839768 59924672 320342281 472003020 916841066 245914054 514243252 167517067 281897969 466362170 256380213 472566540 941672102 197397555 493863964 711941465 465069404 944414402 714878083 668332965 219335707 726955687 482756690 442566992 646595613 901962540 750406682 125283689 476363381 95712860 423221688 914903346 238661101 554223110 536743773 785000174 672034329 837896484 978417029 752521785 571873564 42352278 714606798 623610506 407111919 107377974 562394588 837847744 795606917 949294271 885369033 400526144 710903997 376230312 756160901 203722355 290017255 912895390 226415103 857912836 31140639 866948349 238027179 155894256 657371645 439693314 492970927 858953619 123256864 674956191 298150391 474018709 459388314 486836739 191467962 919704901 876651390 641455228 141925954 487028975 858459183 826500542 871589920 649004129 829354993 167567204 992605437 910180885 497630754 346392139 78280633 640731374 889871051 195619223 137065822 205745407 518487584 46629125 504800596 187170318 149865148 4609773 131581199 309173797 749626623 577413640 421517059 158915349 926269272 922941364 809397998 37394405 523511571 466957508 436794628 813419192 16238639 756047279 478552848 212786362 632709833 72723412 18783321 442246045 463800364 517557870 328957153 99613313 899733098 19343900 686605971 864359764 60941102 857392061 659733222 597224666 638022890 560419920 907424005 716973388 693308404 375644343 523654265 453500154 740254552 742593841 285516312 694573360 943345589 65956777 646328354 578221402 427364641 401440082 639204418 632094594 504224172 358329364 559876635 84023462 165231384 780558066 598132610 51675759 25937422 896880280 425737881 63047326 617082326 856954682 325201423 870133322 685036269 584457244 247761549 150073485 240164882 469851444 936202484 556019474 319671202 827360568 453648298 645151249 634385509 781019183 381372994 270847213 728291767 881717551 557546343 990923847 654331712 857000207 901511877 942490153 569830093 762446185 397657557 237188143 172616136 737334185 548217622 109663625 23180421 417146388 657570941 170041691 761292546 573330084 268007839 910087947 830873335 18307188 956749660 205347865 830362920 170029565 843498098 887339873 995393521 929855778 596042202 152922407 703192376 341646094 791620553 777486887 667247528 368341918 208586534 475962683 415530250 257231200 91132110 478498159 476712093 711022086 859448134 700908622 94709626 374059647 664399248 192561543 238679909 73020718 675085766 61791155 855845356 966284012 787226745 81451924 340907522 824389539 203259099 566733660 837883436 342103652 540689554 820413487 126927957 159983389 755185772 478422231 329695631 68882778 463975409 833493122 202427274 615194224 985191961 621625596 491208714 963645439 880490773 887507332 946382591 566429197 888645535 470162642 995127002 810346110 659501461 873945061 983308780 631428455 352147058 247315095 48362940 854064258 729760549 800612722 938517688 338624611 378286953 849867740 869570592 284647301 918569941 628039330 715438543 948520897 581537450 333764006 740507672 823660958 349000290 511336918 266214701 735615519 997310715 134701132 898016015 349318965 33794219 757994671 748586666 315391283 549404731 422542254 278643854 379266837 998282795 829998909 247707509 49399483 822996796 639917986 134505717 108198481 452759651 735376307 237377395 709198190 733061351 364849657 600396566 771565636 533196472 262065680 986088411 866081141 15484808 976574978 131519025 305954703 164528029 13133347 95826898 783005786 447797481 734705076 212739525 777834223 867232625 986806552 11323472 926540798 701714053 504100253 189311720 793927826 636855680 157156589 932763699 608677848 796594310 978946461 417169316 641430622 854610932 833743108 523181963 433682399 889285707 5397335 960704020 481601946 578037200 216397966 506417168 436739124 414116343 756075404 562334387 234615135 644887995 405652568 138757927 973637336 909865824 773230693 518576315 687206292 680437976 248603281 946105938 62342789 819216667 164654902 610880290 414900566 258398612 87117189 98704987 825532164 531400698 375214849 709671567 400044704 260028802 749055881 270820763 502603818 142457081 247150865 936486231 329051355 991166505 928547334 95374857 161241163 681091341 184340328 684828867 334230107 569644399 638944543 819755797 660216379 789585812 154278252 94492618 387561642 134999214 827550200 1943281 796159112 242910219 484624382 32196183 286764820 732899394 765023641 10110737 220495735 540754287 253171552 638916478 668082675 230666541 51046978 507717767 197284856 657759837 61707869 554819726 962183023 46541944 322796657 919233664 594534183 495868552 311139555 77360693 339107806 267396124 711291811 965245996 905320937 840414400 64035167 464291429 360945948 245927843 89348999 23310734 548219319 257364341 631876822 448674502 119991955 355999077 901387251 924743742 524762879 430139276 525085598 771363972 6444442 531546168 646320527 613545631 137952905 298364680 298309903 543264949 102888051 272766214 912680273 869955485 261063542 479874159 887586462 880457314 761949716 713667843 321416557 239361767 209063561 42197337 290314739 309493831 370507677 725242342 253364007 763262166 865831699 370434017 541437827 877811886 512827339 564817176 790786105 20359100 364233384 763393647 753402160 439842438 666790732 352589002 996262844 34693448 251659185 356448762 730926326 934089834 544694748 311544566 660063968 892596993 300533396 42240045 188126517 557615781 930255358 172654902 797464003 450602645 211057908 528886367 339379321 741542492 366009539 874264384 248359626 279636527 98116475 459215603 682892282 263209226 398442307 333303590 505817984 900276315 692175546 139436787 496329707 76518689 657085970 641656551 843056805 146317463 957229122 913990210 851048220 931869837 466472528 596304552 905960823 751556512 66851079 218970677 273677635 178701388 166387165 890075630 807287057 166803932 980424527 834757307 204991048 506517701 621843301 363029306 260225792 585633108 710080258 971921708 811587304 414879311 29678166 447065448 793436058 399469335 933475051 889249014 591502486 405020670 759981135 703890208 370344470 42164294 740143253 287610762 38597694 259677139 522566152 421807709 395649169 901775872 284364918 844334715 861193710 83037143 391916366 724997709 192543409 51425256 994988615 912672580 645755838 474003403 31483951 463376857 816716273 75948732 398446100 62304913 159934394 391557391 569422194 390177570 162809699 823881341 489395932 484508160 707169480 828779743 771636783 408338100 682324419 363918147 804644425 387218431 63680074 893323543 128267514 709756034 178817530 604176938 87890144 732090686 392552873 493097115 273541973 24478896 883586234 100329950 936348533 50798776 161861117 804271571 66907643 906053272 672651577 154448911 129215972 962666187 699118683 21296882 86492499 201550665 547909094 967176556 10336854 700970007 526313994 347196866 239454944 658849819 846526269 23787867 105070711 527979087 147150739 824013627 304851561 609128008 1541437 692555152 533841953 153979663 399364548 657641058 619959057 808337709 443243425 355010872 976374709 489480775 144913565 510145061 813624372 763446732 688658607 630633780 965602892 662456002 941027838 217117844 88188291 667021383 612953972 710170541 261461163 893026458 850136628 393346224 406333044 990549771 482565368 134630287 625484714 926079843 470735926 260179460 103931508 910409955 557518017 499759977 253010381 31715106 338158567 345910219 265681577 981558156 417871419 824840907 843191934 94159176 908992982 564166467 881269355 390918208 461421550 650987183 266799960 254230908 16692285 519744322 706198911 872612963 919761096 450553072 516540618 909398522 956526309 613095588 509828995 976657934 918993917 588185439 84872989 156982410 573878460 925505336 793078984 324019653 679028410 357826362 370165290 906618403 556627014 956739657 467444305 123463407 845034678 826909687 492617248 513933830 810799 131749105 248197702 104171148 66520980 62313928 432231579 376060366 958723482 176826499 870844193 896118488 109504893 59426659 855909568 461777403 495128011 166726328 541826485 197826236 398220755 366914645 141488869 227026640 441195491 939942992 888193900 826365032 311024819 656618297 544257798 239707364 237813523 319329197 492898763 57153957 205621190 849877003 895725061 450476603 297818256 110216729 482249518 655248098 625641606 707626300 802731870 690440459 658272389 136503445 978754615 244029122 143687114 198986460 423616402 628277525 994461332 79957965 944120900 266145243 757746013 436566748 951543213 782883734 747964121 39497821 210713618 252618000 280707483 264711618 467547833 154404021 521929383 603968799 922910134 436104120 116174200 809828677 745342865 271310707 243628019 793429634 617332191 952386791 809907197 461117211 773545599 654720882 502752963 874765947 891715832 862568842 380598163 970465021 297882198 936351750 692366501 842736655 141687530 103567360 767889079 647002394 498761437 355032673 613043839 372705536 578181834 186937259 998897232 198962483 344622202 326151836 607958910 424055458 615047994 830899988 883515401 445733938 721881716 649513266 788700836 42363260 375165070 610017987 118131324 726211912 577204765 370486378 984914383 71182536 669947352 130175259 373943376 779314732 307168042 423133329 615847298 408912193 666932062 605618628 376620219 566279397 769764254 587561562 971543703 65963556 533351951 534757097 859227015 319490121 90202245 273700355 615854692 20653457 645968059 473937673 475092603 93640369 653774653 47643537 774765978 353766942 532073873 582633755 815075341 957271815 89227864 578871955 683211283 105635059 584592945 495167611 512766549 557970877 586968386 101124097 843122710 516757800 723319024 300909432 262959059 949727987 997986625 644815092 102146008 76568825 822278081 389071247 852511328 462559811 742925895 315331952 301998887 128046252 618966228 177802721 818124569 595470132 617346102 835826170 545396920 790342884 393482652 379383140 223567774 1730956 18717984 924340718 510755703 663399784 786179918 436606956 821258690 15225085 602538269 588536319 689585453 260284623 724692232 161632722 823048362 350202629 720379614 389394258 301795499 477714865 494420396 943379253 630402298 456376096 65416827 794561186 215068296 918909336 840858508 737593059 147386665 151665189 71782344 90428192 327431742 586806981 161191228 569432056 813420481 976395710 193845893 816641032 994008039 791664955 560784651 847028673 947408514 843837561 222875082 745732284 902340429 435444818 179679539 87550159 683160726 49258594 177343912 773849725 654513564 475305510 65085037 435498895 357733587 417940263 125078418 688774212 460145452 844207849 417672049 907747734 52887720 211097840 236725727 125015617 349987817 726766943 928579827 164392996 467712491 303063165 127908848 140523578 126430444 411496519 755696706 467980267 892059787 694749970 1820097 562918618 945406858 995329010 621944193 948969465 707872472 491628795 125786747 366206744 403133281 897325761 497910830 973612507 242602435 981673021 479905294 656843469 659843160 951830598 883788780 555113121 573187656 976468170 430825050 692514325 290338076 249055838 976373979 217862511 375864657 488388109 200627336 818298091 600024692 477279229 740422619 38288964 660795186 98950599 515048110 878889014 144399347 946374077 405399574 236993610 568399611 883076543 501901201 13331583 111525611 572635682 574498642 188949398 271557414 844019752 998258236 263777593 435836181 297140631 271229506 286691616 63813185 938323292 881198804 156569453 852231761 42924931 530918271 297227393 965582806 758441892 59259958 850615872 546739562 55964440 753095919 731466739 397897771 728557277 476314475 780671307 323484684 732391473 662545357 216726555 675831240 523075118 745968374 985228254 64504643 798879998 307386983 966832728 504022263 150402747 761580604 178870339 57866750 141787675 646430384 384152094 108669720 657294416 241078234 160701817 158201933 394460581 444994937 794502410 434595083 95988127 473894842 466789451 649784680 865462968 302908319 650085748 285169004 279322786 161554443 814164167 637595270 619632291 371939755 110432625 884753207 467699247 801939523 949281601 980250830 196270156 628211884 879416791 963904778 49707443 161411169 375041534 15255054 285016137 869566269 62671111 632135874 389704364 465935091 746169822 513003165 916838019 656738723 777916750 252030592 150605652 849210333 622217821 247717485 555841843 807277995 292299492 985822415 947474418 254481188 106406373 639015885 1649219 974537537 887652964 44270033 768800907 34327243 633991410 150086605 7415883 218618584 939788538 581369577 849919416 25996296 400614985 266527853 577041528 134563319 128364730 808665958 509281619 399400417 896928646 105689480 791051176 494877011 431989323 576287094 978878358 990775305 388923346 777824236 722619172 27958982 180364634 333856365 930117171 596327087 725732719 410248741 444847450 616815362 95302224 17100201 32065726 984064788 408652685 894596850 190477586 309216359 383699743 736168669 509173898 158842944 596964774 890374278 715307035 689038006 352562083 340175127 242224077 486414694 262971772 987846503 50619453 446851526 594723291 81846566 511441599 414332215 689106501 511374487 622742455 977419851 124742527 914862235 354827181 644781668 115773582 478436365 566034220 979620978 961566156 250093860 614178231 707310871 662069512 542322640 106097025 432520394 144954468 287460672 186095045 205557318 430609184 950274993 796029649 598428110 70880809 384801506 599342665 916987963 527715874 814711052 823378182 898932748 462018124 964192240 865731331 885353943 102124024 269026279 461787708 188294347 994254084 353502643 153727848 607571058 879044576 915496836 267037476 966676461 531241407 645182884 721926634 289623035 819341382 832412447 266778995 574101065 391681689 514611608 596089169 157510349 355486125 959126220 217791227 335428928 122618697 191302973 291489391 33581963 649427675 218111351 315882661 128466969 99325668 180652016 308012321 69935908 500464158 457399320 806572081 336160692 522773529 166628810 950233879 384170073 88430757 873634494 590408087 878857789 971667460 69846329 512422889 183670765 170789217 149452219 63269621 391057972 544840613 206876985 252735221 969539729 672749388 501941575 441640730 885340217 570209370 575547896 776266493 44170296 891675514 259212730 787448911 380207704 399535774 771292537 2229436 585055739 125069869 717858962 301616036 611792398 942049555 407495260 70748362 565291778 390450613 176033032 453953105 246006291 443289520 883487793 715721074 877309533 999669631 790444569 749683666 331098159 568987716 700985349 409699688 333751814 41658951 685075372 804083680 400455186 842826465 575821174 964917350 68334072 734070829 929677979 480488754 896543037 935229366 735565638 748631957 523294995 502241037 822544732 822487391 507547628 668318052 636237308 49307235 411435968 46544959 399071992 529170937 705888994 173035536 455070345 348390304 856464816 585157484 477888162 874213580 331197407 29272247 164933740 82084964 251326296 683557465 443539410 659090930 615807825 767613239 859422630 194940318 325836597 82247813 841443744 776437199 742725626 73498014 244269662 256879329 861009312 874408862 916930871 23886814 784795294 77015292 730079864 313744195 8255418 517281270 87031623 937105749 38851054 351706392 14202440 550019615 468290515 138942344 301959682 6511895 800432449 510574194 370309958 404886679 430545077 62723781 855225370 508281460 912334508 237285449 770756843 148494164 313011051 488221469 833459255 765723903 430201314 219732199 137241997 814368267 429051098 352091288 475507210 506343108 788933449 378490494 266425574 280825253 786155929 433005680 948653761 6046219 599348799 5771478 415139202 770411387 252951810 104259553 54915220 996052918 717189456 194707982 79000997 873468323 537496248 382970270 475217213 73299503 774595377 608053548 580060260 382689106 660322772 880004665 807255798 591497014 184509066 916771072 926141799 334650612 465036899 338871272 16243720 132210346 177371811 141568890 455478542 594594382 913903153 709765334 368713535 912553667 97094463 702761270 755927872 529061194 811221322 192262663 641339101 137524982 432762910 638300747 699154567 518633945 181488920 350090918 645481085 436821426 313698809 58129763 900480476 848086881 897455447 140176179 693367434 972020148 316255567 670075250 431987218 531703767 854686554 893711164 986001936 759397804 50927588 4242814 226432183 589227114 207130462 640711935 621015419 896628112 350824012 572005422 211783854 249420744 491799825 789625347 260250015 884306259 421687492 352753739 436164284 920258690 375215560 559344134 514966462 857266632 555946839 778154297 233750521 347675607 136575571 654755454 526094593 917406254 891598981 473658518 540731540 637160777 968965029 282804681 237268890 966206289 827859967 481380175 590539526 891071238 755692000 999364149 303398814 442117863 243506794 374743580 660305771 470926923 5639731 73784931 820695769 827796788 7870923 954912938 992367804 209855250 83600649 348434758 149526089 323688945 465573493 217932230 619168060 709578914 613582322 654070661 257660769 375983937 915971280 407281301 800257205 495543396 958843867 361115095 851161161 181039818 836244265 765881438 791268386 318329088 41368281 173486047 912313826 926218466 62645842 498395716 801972350 84688044 813380976 56295172 738451632 50418452 674391382 681221002 234018543 556931652 609067563 823158954 790734727 926542123 269748148 281897526 94799835 69601333 466387402 573353926 779324293 228504503 659872711 849577532 646215827 878584299 362969838 892784191 876351972 766136702 986800210 719348054 735241527 189662283 528577346 97482642 914379240 851936949 940119048 781643619 733696523 64509472 510032638 56846709 357318617 113722717 759982581 24088709 827868628 58262902 110087048 444557489 628284780 599050172 877580372 171930345 444034571 49043420 530874819 706328313 571141040 536128873 793980758 729454039 414007608 575807202 658674429 520818980 827974562 181905303 908381692 619220622 727557258 357501822 174101628 775258858 80496738 997257834 628411005 217203346 561092338 51300898 333635681 737215463 963424935 410969439 181078001 787444177 434502472 996292399 144944559 167588288 273991023 620992306 124557798 373923397 229674049 144051947 278726365 936833285 479250611 471644134 413772871 237237918 794011648 710575030 594356399 268527819 24101816 864188825 349898443 69274137 36298888 569941625 100112820 759529037 301177038 326670005 70054081 219607274 449522788 543106854 786408587 202240139 530102538 123483068 57036605 825421559 519459984 56708008 605674031 287647155 973977364 879853625 739553044 454769510 892534061 437822647 143365437 991935322 563438840 216557123 598292531 471593880 699313714 420444305 577002746 874474665 268695912 639251287 852810110 930228889 256028809 739024757 130061228 347690014 631899723 488916225 507210581 698203408 848031959 487048511 641786023 247899762 660685805 382512048 610137851 498534540 974144860 319995860 835976053 39070468 367656512 475618595 479296604 471580651 879625174 546204786 808833574 690297088 173251337 287609430 508967625 13666427 679508748 560293702 90852750 838407243 454108866 888142533 809091938 374478618 932502411 800445933 805268144 124904683 541778180 79523182 625038689 750200071 851488589 639146665 977445093 344571218 301526198 859890075 346907037 390537081 619498133 3318961 891131187 990106847 749885641 96655746 245568910 723056693 751105685 846127159 152189354 219365461 845280476 424893278 886927719 170575530 640672160 647368467 807748831 912184059 450917679 690091340 129569701 21457748 70802508 250015670 898172759 693047385 77817055 156464423 968705578 286868133 367024725 4365920 971780573 371130605 116261590 895870841 324101179 967213423 994942864 274081307 816510552 178137704 201999312 880088220 816746481 294161930 766387028 731759768 660594811 854992539 494484228 207240964 236279707 917160009 433480 977925573 185518642 508878801 979357254 700025980 312715009 567125654 520195720 640084303 288893808 800039591 844648516 542974501 176028820 346548246 540326006 762312924 20074405 434187505 84239669 948196034 754764504 233656486 989624471 917488856 35587483 967682008 848902328 116979727 169137615 346524037 825623691 223528863 54916383 8575237 442337978 197750591 111293598 102084975 152221629 72473850 187328981 512849584 793033327 502720022 480299016 988956231 640864988 156315476 714689441 251699108 980397177 441580191 552894440 954215825 323343967 891499930 601169104 354046551 996920735 991159882 453876781 105746339 964451728 409249886 744709745 507529374 81232475 32883692 166938298 377901425 540494001 994594052 580149155 477841490 169972588 262377519 544195566 894033432 167167349 637049024 337328889 901178598 837033151 66045217 622046128 704832162 487412845 669868154 236619995 816070763 331043074 628633865 879772502 722596098 600538750 774022164 221238578 955567631 646657137 908467393 350906727 478473040 559336489 447573362 257008063 317975941 608485150 352214468 920904988 817336125 901922777 856078155 793600687 97289524 704609913 583878070 735227231 157817909 718817547 899270246 216207751 527761580 693624124 388740070 226907203 271553744 68911133 805173205 446087012 108251054 122172852 964362471 80449323 570973626 391300344 401557316 739588193 373815532 402427880 474538456 823123885 593938329 453097264 348423845 926457223 162194807 56794726 738613721 784634872 111881639 698668627 676826367 820054185 192042685 64983096 391576959 129395040 468364034 530140511 366264936 516364375 992618355 448112661 269232271 932942553 794407132 963103466 398051972 803347148 200787194 864948586 942864914 568188204 668228851 42149285 967352467 848333767 778898223 172679861 557108458 547679474 793271532 537718397 477703321 512666550 157413863 483408203 480987144 689133143 873000361 509869020 801076902 247043796 738389763 904017854 108676121 555489953 762047449 5309377 585931496 166008881 675148480 430534970 682879812 165401106 112831559 502389928 436265474 579681890 861914694 227994812 223987645 308093813 845381043 208407571 282605473 335572359 86679459 267706819 798921191 689200060 555256167 909662678 588735330 410352665 622118097 981048299 340163854 810212257 383187374 825609389 88264402 127777439 828660391 713100901 225359428 87898714 827201701 66721855 970685572 175424620 562205745 541089706 523752017 203164144 559492370 527694238 584643398 615634123 891049390 412537095 927152324 25273268 825657534 126990620 866143914 941369639 416478480 502887787 593859154 380076846 149478793 704999632 652407880 268774229 255410192 619025437 14689601 537584081 112790991 871816680 70764190 986744054 47724592 119890047 924558077 469659862 139041101 875318237 577638323 304487761 647085619 719714623 372366004 206883061 156440974 68772755 591838630 321027863 445459351 970867504 378345855 888858339 745769968 201012694 27191923 997941195 67552798 358993690 222768956 926931040 683306568 574500734 590641001 765888154 234619286 692488133 410824519 174631919 166803355 952143659 884982477 466072556 434317384 62190845 132762480 999402635 775905245 547002153 907428253 994524920 902857101 353004252 897343636 381616707 632742289 193324415 919861422 647644531 866347817 129355501 769825854 636607103 993718685 69935530 355127729 361616088 656577827 572980901 173753130 618094279 131004820 83622858 116718474 265080498 415118727 707525358 305239012 680822023 746334018 140792299 60014657 187902701 21731815 528251197 915670357 907769154 496618323 420380834 91196760 503953465 909239683 404864272 494285491 971786252 835859137 278359339 569165463 271783441 733987840 416705606 747276780 987837148 266410359 921857639 644970071 752356773 15403293 182008405 332324014 504046888 976677258 14232865 478781138 166596287 852912456 146265232 323873861 717067622 114138949 527697458 87949542 947413399 572254899 300577019 42955944 565041291 618502339 144294948 946050518 86960875 637011084 108832015 783895577 396680097 372927990 101028522 707615879 693163071 816961785 178346541 619492642 559952105 829328039 385622858 478003119 270362746 995011273 767324348 373044397 915882729 283356482 485289712 962741529 705025083 235037368 866150336 964253352 220099165 705457840 931112369 855205353 207466264 31773942 874872679 11051424 746854453 453367802 834685211 480464894 854292412 751586970 493740164 521292513 662701508 696544211 29842232 166249384 987785775 177194259 448049979 3239742 606460229 744400351 62409482 773691554 618075011 655935922 283531765 582174406 460212881 949825505 539184766 861645929 540507100 800794668 809010188 269474237 347869772 942836708 322663559 303537831 555118144 787835945 596107803 147209187 480296322 348735475 203753501 656814154 41816543 93400685 482181563 974678000 282530407 667199429 799976249 807065242 265704051 885455220 883581554 20991702 555265351 66194215 464175696 21301991 352590432 598271960 164315373 749408097 121130048 809729464 225504207 353945034 224205677 547067059 871635309 403504532 693258525 916369268 937835384 45894509 3190243 250150222 615819724 300240867 820299342 302846502 120991817 257786353 643628773 803006268 804003026 591499121 461895716 806610432 173884844 850154498 465140111 273853159 173172348 158986098 376921391 206032994 21915742 64553513 23229077 801623892 446989736 855667652 190289111 502167825 286266307 444518906 371958030 756425789 778007222 619995439 421644960 816326258 744297838 796890776 654762340 993185466 472091978 410790584 629782527 39080624 681539182 159583730 985069040 996530043 814222542 366172138 307308947 739081223 310954528 337674642 684754973 360911359 913164393 698308064 485350884 929563954 373051006 702768968 283051859 316961469 216624494 964063867 539880845 442476040 903814788 865351391 465984413 219795491 66948033 253730292 723751042 635917840 614751120 737069538 274155056 646637851 292839005 88014581 431291483 387142060 872098300 133926106 559166751 112765135 854465124 801508857 115142369 252313879 464347549 614113377 629991445 954950835 453954934 487919232 825813079 896830414 661138560 825832590 29373910 790357269 122161141 330557341 667814673 400574978 479213201 451087349 696026380 250658027 914539128 837073820 743872897 257939231 80569563 993023111 679947916 166342665 103983927 69984747 726450827 359483888 506517919 652407356 770797384 647727226 665141676 366740668 722300663 263616905 718068460 149084647 146111845 967466362 523214958 84061019 354675960 846562921 854871014 601342088 359946481 674517511 780304201 683751837 517035423 419013559 130858600 793970930 439117391 505515384 820812308 258772383 581455372 445529780 725424256 387249796 42660060 619270607 842810390 939140589 138509730 482483866 514250947 738951569 564628160 445205877 871891388 594352489 478825761 366745522 271277944 788034582 714444900 243690772 105773705 614492521 393792354 339425229 296229250 921111878 629941569 216485315 443084628 862097802 614587774 45921246 361921918 131354549 491174361 774477347 383668140 663075097 260101151 641402034 649653125 173564510 549436393 433155490 729214512 757658427 146802829 530236637 389143088 999012600 852359125 379619225 165978594 290658784 851356686 86462260 296593685 436064257 75484402 48099764 431020146 442573572 220383152 452680172 47334858 680877145 914821877 539018823 414514643 549569543 279192523 474525088 957344383 818480968 337727956 238958284 893282103 1778945 189156131 417954493 774510015 914433483 136286384 933672994 59914128 287600824 699590567 770502644 804304754 952314477 555292555 353011722 880641610 746673311 89409427 189291935 584371200 572802010 377216536 840088152 267349742 414941003 862165305 427305653 212657256 470995811 333622807 205498978 947941030 235770258 890668665 919824721 870353753 266415417 515298054 207898643 76193113 713527410 292475049 726025283 981653411 456825671 645334000 561425074 558072223 812930873 980854082 761553192 299868891 404985751 604779492 98914072 866624665 249937156 142682846 300525976 727105353 66467955 411359627 631795467 333545524 331425923 831986769 438140548 877777645 986212083 81885843 213448117 753656162 969174570 615621732 13786676 28960756 746365081 332143122 317102240 437818913 407708168 302513846 155024124 503424710 855317018 978042710 66411572 197237403 206072443 770439557 703843338 481193114 821513954 86726076 452431195 181928824 152108643 761853474 483834592 635193279 309194662 823302677 588591126 71640198 56535783 713628397 804099229 567416572 133362084 116082997 654719240 141478674 330165906 926239187 109197006 657326803 359507636 875418090 777047975 496425444 648140338 949643641 603733798 684280402 679710165 365193977 972909224 877219088 974504841 449917485 947393859 411917392 545365905 177813326 903504022 206240329 48817984 695383607 331943787 530888263 171962947 756209911 769871000 990463332 751485644 442888580 816437525 652171802 550771308 181404345 143238517 620206607 956150138 877656258 574650676 700405871 777276578 225343510 951472318 453983348 930720142 668862768 94553527 950955744 186374200 270262613 903399886 454968319 800530343 218997728 166221692 531283556 504377455 737742217 391250320 302521670 594846466 607920182 821884280 517257205 825818329 463480147 727477330 161221109 704064935 868881696 700295720 174906488 3105654 306404600 377932963 741526023 900614347 21750648 883240242 185039952 373311223 120969217 854241353 614873280 777112060 827493568 824109526 332153397 151794028 469601534 417904866 249610281 190563235 796878508 903898570 690163835 409200827 755343759 869898961 273960680 134806076 605965781 877499022 161459103 340208540 43982315 440593134 714559730 783027170 420836739 875919750 598235466 246689957 862200445 514339642 857044915 69172480 481370739 686075439 825487367 177271123 517144826 322755189 629367270 272154307 248784052 649276787 107572736 870587760 202725834 790368947 21891229 922660928 294966601 167730797 16531495 753000252 256658933 821983992 349027883 301148889 776489726 264652565 704575401 441371321 174111364 445450775 486505428 695146572 597810997 586506562 64989693 329854139 747040829 680828827 557787414 260671534 543450617 338753760 999983634 145602999 425668073 635095193 332111125 953879022 199340571 789914041 11644860 937818931 111528386 705632592 369438236 216118690 994852200 954071941 559408727 923436105 930707908 449102416 298322892 51141749 263752313 761603447 371149295 252775853 43492523 969486626 406904222 265885479 773812482 451875941 966408355 236885013 130496777 510896396 288425007 505408710 921082758 159688492 773779909 138637805 630893715 568534368 234768768 780966639 608662464 318432246 550169645 964652057 727723702 421821424 201445008 520570174 776785618 888564763 61791473 675419548 575071538 150412792 935907787 52806010 265808063 243841428 924080638 384419213 26434654 787255746 549997292 508264363 691396765 313002834 970491699 126232107 685302591 875883897 926625891 811765211 408147155 149103066 60248324 103909766 888864859 45054062 545536301 633758494 770289768 810997890 739021333 200352153 266662765 24901586 399883209 486411836 717534912 726913687 500997180 269175330 686829814 950436815 471862339 263737984 524539615 518099087 528030833 389065679 183712206 626114024 654042866 631792377 778934031 966366421 889646250 247537770 636888639 406203835 744890454 392634688 871486539 922504275 928360352 626367855 796975573 931224392 861909883 414084833 169382687 330389661 424893019 652933898 517621906 195752115 583851284 281414575 16414627 766360716 315903029 876462928 861805040 440467841 828329482 596405850 80687011 944516397 335269113 904638860 335870777 214916787 259397324 955934352 636133272 887807000 299549019 332562912 77337540 892359365 423173035 384273550 233827576 240652560 786676512 597017789 58154452 932894815 837846461 850796412 553931896 255095778 183883835 627095239 363186941 188475396 19251586 252060982 356186347 738139048 422077080 537042145 2241266 932889823 45248628 737633408 302749483 443952607 384249368 532407494 489226638 992386566 630646549 562961018 587277887 727542250 332791258 772951357 899646934 918606066 796368466 138538602 59701071 918959679 252770405 561155543 676559458 62095597 778429137 162742708 644716378 656365668 130525893 812035218 816689012 653920119 264380420 473103201 376437517 494103690 674873368 566381763 726869740 335015487 117287159 889045070 801629749 178989386 869955984 716234408 897387119 815352062 603432967 340275591 647763732 402464542 83140718 676407203 788581959 387189846 320689823 639886836 878978894 848079060 213418293 858151684 40305963 285875601 177251524 660605580 476301510 730541311 424342723 19464912 8532352 441743940 776825254 113820115 165853750 982973802 38653477 490245582 772942756 654518796 182123498 157573299 291239070 801325933 997013944 147957956 338375492 644352024 413813174 915398253 440912080 167698668 162215614 213562040 722068866 396692269 871003283 158957550 446749610 293671405 579962714 498086423 919249266 725981691 329436687 154905149 569461832 701181756 905147262 886546902 864662130 584536529 631369929 552001879 72556844 263497125 418266399 973484862 579042462 597329889 732570930 507703227 132725982 568983891 793790776 395285562 377599509 426615567 776128904 464942363 18711267 561778986 578656917 11600174 747292742 584310900 385897177 549931675 687116662 320819916 591905083 373079655 60184774 570209121 951326468 601474366 809452529 60757044 772904549 205294335 863082434 454382198 758367257 807055368 575476218 474966723 526895207 12461547 121020017 143562967 616057036 194039041 193885361 944782268 212478982 329304628 627616203 598026704 987352021 575770834 540370677 619655227 873784704 865916337 735325128 411760943 46161860 974213778 814747559 590777621 467825413 993368338 969936526 968441859 788405249 367154763 563277023 817023597 791069796 578567799 105409863 128383462 39419832 200444506 331309706 129874387 988728145 800520138 64366067 100532007 712793624 474331869 301206981 225874212 139551868 51188663 532393654 460832059 780049725 418068130 218791119 160057306 713416098 141665027 871569605 370031524 355780575 395000580 53721022 582211765 503726270 375743608 487569685 1288283 336232710 83195870 503460643 747260816 952877844 872847152 626348475 398196460 718728829 880410047 772200340 504135403 879112021 990422444 125612597 76017386 366748733 203856556 721292929 360307449 279529523 859579151 139520652 933063708 410514112 559885081 41921109 443482239 574633921 111508733 510614162 528225364 657990436 317360263 635568205 470327606 217856823 945220386 885011207 427148094 549164945 926194731 113432157 772170583 419926003 295823943 456131128 298287628 799922503 897136333 948492472 178579997 839896155 788776307 313450311 479053982 266450131 548143374 70115709 739718716 232183373 522222105 517094183 417643078 69844913 587684073 197154642 356839581 502775236 691801011 553050227 898511316 164539338 792147318 393084122 735161502 226090351 661293814 425702005 771229291 844792846 632823779 568947376 108698504 117798146 218693165 56343439 59176190 933585457 285485766 850327637 476520942 163516108 745443100 628169202 373223299 36335337 898842887 741039266 688415300 606703643 264831341 67874440 202728866 70407731 704374153 267225370 596560629 904157870 6970991 540114522 467954915 90696477 42233552 509228384 689662600 207831672 558949668 184512004 695959643 352300189 15967519 428877794 790102748 6127732 822896129 478522694 446720987 245541919 18139315 972862146 787861852 272198931 562646556 262029590 355628971 36430844 697591369 612571669 267063420 751900408 211752623 40866249 664978520 416042661 972768009 248244414 599058709 927785335 385076262 300779988 452802809 723269942 451340785 453782100 446233312 495759112 612989984 219013433 125731671 692976336 464024634 65886992 776725022 169840884 624299065 748011368 588226089 709075756 116716593 442179628 38116800 466623223 685526624 366396359 682393009 801386514 495647059 385285572 252568158 899065430 135720612 610872631 317850648 860890964 4622333 199672397 322810274 829328125 786889436 10446858 499635696 438580071 145188278 755075229 652844886 658310815 51394154 33798964 183914904 65198383 974142329 966016084 347470154 967015791 712249087 453372110 482899414 640911826 555338595 400322208 660794491 371098159 887295022 596356905 38541427 904503463 390356849 722468913 613344440 363542240 528903922 25258964 478169919 441127603 541527822 173050002 354017046 717584006 228915726 216375061 189106720 912698716 94070531 997957059 993683207 181795247 485549043 438894828 880410894 155698500 819089376 202506411 124520897 214513302 524267521 33375274 536738097 631327386 781920576 170111114 965751161 61585563 151718648 294358814 200070857 518886339 946397777 456576130 57124398 819951719 21124142 959229915 766920986 599235157 185260030 688633668 889235449 937253407 817097213 989005055 593304400 284059437 975420189 61617955 166018211 121332145 593796517 557725059 781083581 154296132 562107520 852320994 336917261 69209074 718672272 322000754 817509237 187875064 130686091 438890111 446713200 690507165 381913860 757581570 743944172 322030896 456943815 848871775 699711689 546437542 468147520 707056845 360433107 55573222 28373038 377152353 148582695 378681840 316000247 948263182 409667175 801742245 38547689 212989181 728922269 552644602 59409994 74038537 271390858 595459856 334984849 228665824 978591754 975345193 186640409 314996141 968879664 323202965 438612175 691693971 309177726 833102615 858636064 616407314 484784286 745712832 540257074 951962614 840977392 55658703 769919536 361411036 24748094 560167143 306183331 426030686 244247161 306931942 810789960 623952842 568195195 379563499 105690827 249627120 146580502 397269295 343964314 274316436 302098776 352804345 489398855 407523670 783122779 886876403 355807985 335017314 447160279 637929110 312069492 943326232 957960611 933180516 386520289 785790394 225024860 326808366 672406585 509221800 329875105 185528068 40779197 77817655 326462040 303721674 29518284 256920887 73198044 332890107 251447604 899926549 658961660 239726320 307376992 98437503 249634570 103585866 662192642 395120951 84233381 706395115 566276217 268421576 373005123 973708913 328096748 379753496 813741811 320739880 114451387 460467536 260670417 7353996 698349256 809577895 737070390 634191320 111623578 492458049 502560022 777368383 899312176 182506474 437784640 247884595 198972129 990387903 647608953 247766576 716415224 67182529 706108133 639276964 646602654 860104407 537528564 257660575 581256285 545119551 947720932 583489544 723348741 82439964 454677030 802887334 893022872 162703686 348978969 8512347 790516272 742005266 756010339 695518729 332793953 18691734 475338753 316354437 35349343 547353403 419919011 638321698 220969949 606525858 197822495 864235717 947272670 899858631 544865992 618994476 834263947 671187388 954210784 529685757 144577212 467987646 890105148 525017454 719309952 673763574 570035035 263773379 29879779 606557026 108883571 179753076 675090424 278174008 296104964 673883440 822347942 711549947 536915721 431129004 229989529 961823154 495677644 765458979 308976622 870416131 79285960 819107385 462471038 31511256 3680724 100953643 425041078 1618513 818587625 362225079 471061787 578350550 920209059 920624850 563531038 802116175 88133783 608216896 238468513 794132504 869372603 528940098 200324484 383922383 419543021 431545549 508051003 788314082 188895662 34138946 315107118 237380799 55045576 901497718 786218602 643179930 52991833 352519613 244826286 879625217 941932342 944906667 72925261 26600094 959766657 471056637 134596094 867825525 578819927 410355408 200640164 760490129 430431867 535744843 243013318 995093749 585836867 459671405 110357523 288928238 236682792 118942338 466486713 997695367 380926707 81416109 844013283 984662436 654576321 716610354 561739616 507276672 606530758 598778934 185123735 447825446 316452949 791777343 121912766 86320447 521293062 609328075 834031437 950661331 38227427 971398586 795124400 425107634 202706871 511066973 638768034 104566863 520527026 906182277 121338401 955661732 87234223 814763705 942177634 40605412 965053722 603537 333432118 509643175 197098358 524179837 202908714 565438591 886423308 970325670 686257775 289539031 310942329 627245823 453637748 612398811 669584528 631921576 302678082 742929023 94508053 636480122 934743019 538763166 847865701 745768134 59036749 207597440 863199717 454543060 744524345 713648314 335139139 568461202 277827210 633615722 944865026 75782126 245737402 455988380 679574804 46586344 919200904 859233037 60672528 436436987 237912675 951447032 471839883 954890752 399904260 283652070 129430754 766270004 450048119 625137701 367011793 467017998 403541017 353103435 344418171 395951719 106814845 254328857 968654427 407905732 569775595 245328291 900135274 335912351 373917290 454690249 832850791 571301444 51225695 627728535 767649424 370456061 304621451 650256338 122877459 939817160 873497511 227936716 459495829 727254237 862264106 442268196 940055890 109679149 521574812 142250457 784526274 382635860 156219001 382791087 975241599 747677732 990304954 947728059 95554431 9538718 47019423 455953140 990483560 7986839 97047544 434025396 583134196 287837139 843963342 240517352 868587085 837124429 982574691 719088873 427167752 360382907 823079916 109261488 737680208 904920570 327733958 756967733 696261572 786435626 799622623 55759853 619210209 503383814 36436275 635640641 22754660 990939392 67915679 304834443 304172129 564161054 806894552 614878089 759514419 10816984 642855629 779675502 738644460 386635755 219543781 537176295 377011834 606708865 196054925 931603041 456033859 974006873 827228360 165061774 174296850 49617608 327083097 516340748 354848487 334578598 866092254 936785297 656721824 277079013 594624952 61603604 880287212 374235451 165212725 723173464 430746970 263853349 481073291 378827186 612186146 456545092 806673085 691302233 180616404 59943525 954565737 988174503 155604658 84223469 739608638 372908581 537666675 803085358 178091852 516730023 773977372 651951638 970881889 124678741 265741082 96929698 840585786 946357869 759540259 970504780 723752002 236619556 724195767 154622139 89112643 899713175 406529120 721129324 410596475 799957700 540141750 651183469 830095101 695085676 682956147 560586692 86755048 365265474 459570068 232297762 305562214 761914192 780249621 113642954 285117669 547675901 101117285 411443754 289528801 707759122 535505109 628838820 46120992 641942284 85332993 44717383 732302633 108758010 777955464 550307823 659577971 764090174 423636681 48152955 599477657 731495755 778907281 455501584 203359287 527192994 40403697 215729405 652788444 778101936 727866517 884001872 328214196 279159329 552890207 269742373 730838268 218612218 139045837 141576263 464582535 116982956 6367668 233214063 452381579 116731323 389577991 144308316 949254923 94081557 803411854 395845510 948300666 181292152 873924026 824224630 294119166 754962259 806401416 267127230 432871602 327037720 798357342 14895440 649067181 591401185 579800146 859078040 728980018 450834152 724277186 610453366 939597091 784079366 982765108 703652511 252291384 183391916 341741440 766704850 252310270 988702509 807212713 362050725 123468922 986204339 202287656 899363734 7845072 593771157 331396817 795966370 525044763 686105740 501398093 855949969 268312484 617159753 629830714 926571721 667758601 297333247 971195935 689332944 612747075 648294639 305202443 833681943 974638891 532416764 820186520 950533758 949469185 869175130 664056160 348148080 511908321 889806231 489888452 813235002 784205 874552666 25329407 533845491 918785428 899970653 253470548 848825978 145026331 622605746 130694117 825214266 329869791 818919882 225381600 435793487 724544401 719041562 614542546 71400912 602054204 756442125 768722656 248249845 595630773 493702024 832472736 51043154 598838487 840983412 581471110 567340325 414676735 810303234 919144067 653052554 680407553 620361697 454151052 539838583 512485424 90872428 784676437 205223733 226962334 868243190 944173559 793299538 818864193 993037353 227817785 164830054 920956042 878510285 91545161 149458108 883155341 368438268 28657496 945272025 839737659 145037039 878597243 356635439 957265859 299910731 362586643 871339254 986968561 106232835 283841074 414485725 669196842 512458616 575327959 940966554 106317469 355232850 540563433 339349284 89542027 854532953 716653899 637199661 450934301 259652406 655595886 981011148 100511712 18277364 675656772 419983348 104102812 403001978 517324460 882961813 183860445 956292010 364854203 719207735 396037187 556166206 576011293 597397102 393423678 404029719 218915590 51832059 850373385 773156468 932745765 445558580 200426971 818847927 373259930 10548797 66178840 432615080 379905077 578437182 551568795 647940287 601622289 564237453 231729835 360188460 148130792 283129550 426218390 382343189 275885320 10463220 564375584 402126713 106123910 77910754 945647878 670109204 751785227 745829751 314336952 167237147 247034652 266846928 562424178 236070113 790274240 620953800 322592998 519885136 441443292 121599075 632990125 25094543 69794002 465096275 410194666 841225697 955000599 362169582 200640005 543941710 146870913 597949709 607719328 915823484 521945291 289003764 162905937 440323887 693909832 68665755 346774063 407307667 687187794 205280496 273504279 239976757 864790064 288223183 99052738 394685200 971497045 568966592 28557883 549481156 372033623 675165344 885966037 504028411 488541972 641207087 559965238 925763982 375328565 129374984 863483028 37329257 181364364 891861349 539350253 386895641 956338995 197548941 641151857 299745982 489242345 382537194 463838612 133174307 642264208 390353283 265858425 289189064 252180253 619439493 789392685 675249782 265164721 738477765 597684377 249698017 889294469 493399110 400924880 310205787 119096584 875154170 25803171 576831135 921999019 589786976 122090274 922616887 856702875 348006942 738027161 674282390 962592365 952763167 781171241 49923957 535575471 848624718 376717920 124162067 794052919 165250404 292804320 68554866 279650359 938905516 59462356 330357277 906543727 223238144 249437051 791676748 975820515 639644288 620775700 34834661 119777220 974837916 70763573 167087633 680069156 132977807 849021538 45016032 640420577 56586862 35889538 401742530 497921900 94238626 501982904 98388648 273501207 514467552 543928294 230104252 697917004 905331542 776442715 934476668 465011529 217385200 915990043 625527035 550588333 49018784 178713193 903311076 928317773 47455821 678928678 758713431 453928424 515005398 469418154 33053372 518346622 601031483 461805241 490326634 420786283 916637860 40942369 279135775 650389024 350811551 589390645 482371561 185145990 425789080 202547663 662748497 797483999 907527262 673181983 328762803 809281404 219360967 821583806 511359773 416697539 658860541 291611139 773973619 413809150 520733621 454028918 248593187 640639735 975274616 454789504 949211677 961457513 568413249 466325609 14352222 74747459 380820715 839764797 795640469 443653727 268595713 344096177 832982591 236970287 613667634 349727519 227028512 550572385 638834897 919632060 993612696 422386946 904724917 574785260 852962131 369128126 36201968 875512090 668312388 427764056 665561266 24275205 789896851 722414242 93113954 885392669 303532049 389043788 402062479 364674998 452765072 537833225 995956028 848211752 622927834 906436853 50384551 819516323 911212407 966806730 231095812 929832208 646283428 990677268 379647638 408300127 961446117 3569009 230932882 800309938 606165063 660926909 423998930 619184296 772625923 633843453 884984681 641874675 406824727 419968527 434901513 449482818 582737353 828408504 351943882 862052561 463409442 33984426 85624636 988745777 571873494 212012151 847243593 763911549 310817219 738051719 746367374 301954589 247490558 151813173 631315257 430202087 343460029 193060504 324858646 78032384 224244686 481285778 431286091 723254621 524116189 911054877 653333864 384022166 507772481 500521894 121911126 757911440 426386917 714811265 559384373 208660413 500816879 814752912 796978588 768671936 703127321 462698386 558685045 968160674 33014320 961186961 103497957 531338901 840810431 8496009 625723454 859133366 678619873 955136308 19686760 376857907 990709999 998758746 181921318 49380579 637538427 161698701 129501745 97879559 99630816 519200273 230614911 711027208 32928048 182536206 634307224 706249144 410147912 684456379 941583371 614792366 246205909 571366759 419648856 916992151 939842561 474467552 85967018 899308 892701744 180795541 189610539 99223549 357322774 640542192 368905202 367209311 129615912 268255006 714448073 414450418 83518110 216201823 225535622 403743263 509461877 928540392 718580127 821840663 783196946 989448120 525914519 79007470 451229580 49398617 731522695 799130473 201117637 34159744 462906911 259387126 447159600 735075839 551227286 738801256 627858465 112201977 373486293 439835047 646895903 301792073 616699459 5616378 962066288 796256919 150601115 704370191 3231557 768909859 692244831 657114183 303629815 347923577 956619999 877506464 718842250 463557132 259845635 106537354 694261275 60454841 691746152 435613199 658580288 865885 133552226 717551957 480430383 486801040 739440563 400112278 765783629 319240621 428599996 875047856 105244535 550604750 727086531 899346708 513304107 705893928 304759387 358478093 299800551 802503499 679723467 880758065 407876132 746635844 778976696 754177431 374052577 611768465 179526717 19541147 690262641 421555482 14049178 93954246 97544097 362966732 541374314 21073686 17592599 776779564 252835656 535966855 355340702 727774736 145827612 389007101 610535054 629809679 131333799 788818320 536090892 896678125 770029504 533730912 369217761 192196163 2312858 305322761 762691809 509293865 360083402 185291186 382825188 289142118 366593645 287294797 670750651 856376426 773653979 539190166 405800389 905918905 694170873 776485436 853279062 7265657 563000491 846777626 932104205 469157354 27985156 869417134 169258109 334202503 705679398 809700946 237590177 943567289 584858966 668927067 323653409 698188522 336447552 711144071 399840358 981976511 993425261 777267115 851588372 230959541 628215357 911601429 413406257 343225745 759753744 869791598 427484447 180952085 552165026 8831344 352511841 18393328 585443406 172740404 276725182 908563723 311626726 1597104 531434782 377954153 230007703 677883328 745539795 187405440 601834663 281372415 120392675 879130396 991333979 567964292 552515894 788767556 308587083 981424628 266063389 480208683 626834511 323073821 766380078 261875059 500302547 303848307 243816419 946996335 71210395 80437862 280151150 889976975 283607989 909948499 844892928 221250597 570629969 813037487 554973780 230292420 646804594 88108441 935986670 716768797 749977070 304978985 957488973 953714727 94207656 434110070 96043745 913533248 764508815 24558024 417596391 967227952 319620486 274436938 348226575 716034213 543617630 209249474 624561378 848145642 629117549 306250751 963742407 499771311 760927103 181092358 486135389 867409152 786634838 198878818 447298409 140379589 91812148 432471412 871659660 788932935 156690099 394583288 527897545 711732661 760062615 645246523 193924571 766098397 115907624 688341882 897136437 157484204 853233434 10571364 325293655 801309716 508606417 371978973 198484219 44034480 649874547 501890305 414768923 614254579 862250439 58255885 179689710 358469847 822040212 166673113 814704941 359941824 813055331 640424698 540634210 432186721 648497694 625896128 558946435 818799846 299592468 667639344 432409405 424419502 306736464 848829685 132440559 644786396 138469720 733675331 557590117 47315487 631571325 190274672 468012592 25679579 405117684 867998661 945571707 216764286 676128398 561601288 829609096 480903426 366372496 998659794 279855446 654681843 364325746 4129791 892741756 128660972 716562053 423425704 603323631 904515979 95348195 299334549 221800620 388021763 763523932 259101853 32602506 400775748 472894215 551207406 583661191 359136255 79740916 368808941 7918403 92432033 309191901 37098207 588009393 688974582 908814448 621299260 831596721 856240378 742165892 186660450 168563343 782225594 715562340 708695428 915043964 265814450 365679182 919291503 997978599 234056864 171321053 781993538 915896090 307659673 44012046 731702521 918520646 911908175 325495486 355509197 300613733 806243596 282961656 270385823 732934969 481088171 994838950 434915237 132433481 144706095 201359164 316008848 975351472 930758946 423527918 287561516 278088527 962599990 497508352 790414849 517484208 480692179 687457187 39389382 550007295 311907041 42313495 543261545 525666580 333601449 984765019 345942942 923602472 191077781 534651815 320717245 652296096 762092705 847698467 113701345 398642911 442475631 712319251 554722709 700535583 180290881 501978875 508403020 47486656 29522864 232610556 838702032 297020288 597661435 544078475 172208533 659051989 139544325 546507846 477384826 122620023 733164122 283693695 215932539 220090993 681478824 551673626 830232457 661973782 140133137 83153908 39067330 976127141 693423739 559905065 714340848 330819231 193974294 995759038 859208551 803662536 285241356 742253971 435670620 542918713 282607476 149343656 961372636 302684212 949877479 90615335 401633960 573035437 281550820 486308511 178870254 582811069 654393285 542065892 286200220 906314658 70145592 890293770 153217950 197341810 577294873 261987274 595366098 375114946 760294385 305644722 901040068 51672730 837205970 333202835 259884528 784862883 721156400 627696587 167124807 121811044 372933955 39445209 456215319 360729290 284364099 984916964 201767544 199040050 479574014 834205406 374493283 207628996 866542855 706161073 728330023 815372357 274231744 957891219 84354645 930532215 728750888 465162844 608726346 243523101 138082217 911049563 621715494 139885764 248018832 81154741 183483680 785676819 274882903 827310773 367386899 133454665 278324195 342526047 223989979 652368519 42033633 38405176 863007658 213034325 507121644 772433218 939715470 330955249 961117607 596952160 33119180 226953410 658770316 741088765 270321104 436703977 442941237 295821514 814563324 931186018 376679582 970116310 43608366 729165392 876380321 265387494 524183780 453222208 435278872 993256494 942122425 291266249 481399773 905690338 302000766 54877585 151322515 480545779 689531575 889441415 492855791 934213291 521024589 172318082 658924250 710736183 111177848 228128899 783508815 286145068 805043946 50304901 923413357 106889225 431809101 221059994 943341378 178155 606757692 537627627 737080982 565226955 529056750 446206367 858840552 438988044 662292278 559339209 140614074 856135310 85019905 29660353 260282522 442332822 366773010 547934992 453822685 501208196 110463276 778958593 638673831 255603982 570728612 313303723 444551014 984713159 274651051 69728501 631140379 894491098 854123703 634068471 124113478 284396348 498571700 667017849 721743876 465273766 765740797 480472276 809488789 624692219 466853853 185297816 548142465 43779556 826985079 2993024 174738403 863441782 138888886 374011188 607302043 888987575 385785110 83123539 923935652 727922779 75801838 519021414 629709466 924116373 285337972 152704636 916278851 183613867 95835665 804496728 150612569 14433688 918887392 620526632 513048299 462755653 230089809 274626707 509310960 965746125 408474453 950421678 341729231 715344877 890697613 573876406 921291779 610528159 20772978 7345405 148443106 426645637 230388857 840408305 490105153 773644875 132975649 75740982 466348406 926585341 368273304 210311170 610816059 314936836 471905425 820964235 70875242 853345221 339369817 479883657 886406359 94900366 384896961 874873572 63650076 650701085 307728968 724784835 979784745 677617965 374439553 758750367 876655667 28347393 57199303 362648896 700158082 787110395 679218314 712816433 100200171 151225254 8903807 927497234 252542552 850518804 643371195 640638284 414848011 668847072 315634237 82447781 265344847 398450540 291731177 304326350 898683100 315064709 259697128 344333838 887978990 557052296 488495308 619209125 844144372 338363933 112380222 447143505 846705038 675064377 323688470 337320555 294231327 256746004 43167610 833463364 995391476 954243277 450065074 846256390 759750795 661185153 640990167 524098462 923003498 348002973 587401104 613980799 126204523 291123410 109022247 735321107 335236966 990814758 607433583 326549574 117390834 710376773 234171061 240627165 135276701 111431644 250000976 465864565 929217434 134661245 973917907 120722069 378807357 196123414 114589281 516014852 70778770 12153707 198054856 174190357 984834622 104170759 21167741 242983743 662264095 210180441 79156872 788085586 637818982 71997107 465665328 543456864 788236058 616359247 571648031 17681458 499586083 869316760 367942053 823663643 333611185 408027708 818496963 147421493 565895863 497186143 262511204 220729151 603997018 644171463 60375410 348475763 351569860 237126335 851204559 889596255 815955234 545607086 749863428 135535609 350224281 544988749 552825314 344420704 192103913 646682485 824044533 110562960 620365829 758970716 846130351 800596403 156215725 399241850 830845750 415003878 963732524 422362187 348831879 350617642 149982699 578751423 557505243 901323629 392504618 798950612 808540608 272130666 88592889 427629325 870156477 552908767 539148169 217639770 813180558 738671166 99512817 642054745 779990440 160564145 364537178 992762521 346975376 524198990 893294425 114665051 912100076 2697777 916637563 87314990 22488898 819989325 939782803 875049555 746695684 73226728 540341804 772818033 197135188 494468002 370784786 261882125 443626215 118266704 127166033 625427327 702716508 581246239 477248361 3975452 204207480 775197746 814302701 841599177 769586793 677636275 566911206 156274936 249672684 892037008 319455988 611960681 449834044 392371946 444475071 438584078 402069453 158616046 623148408 71099996 173996967 17811286 70851724 393238671 431684742 458910414 806541174 552954979 525148461 258636663 719496699 889537339 148218160 56743389 42809520 609002343 368337691 851943488 100389375 503050345 773233607 681565230 803880973 455754484 262663266 781807915 71441060 834811235 913835934 593158800 20885814 445889211 480051423 817390452 236186692 984447937 973775626 507276852 431446604 98828554 298091788 883380345 753774859 496621180 693284419 407972142 88408964 668712320 241627791 869286296 756134629 595097894 784631639 56906335 470398059 235235788 397072041 696204035 609428201 676433031 841496687 452401167 802794332 593491181 607425953 929585768 998924179 684143541 260122695 871015945 892862322 301451890 22294675 538350412 265161193 829702596 88395807 951838861 2111775 705809582 398323826 61530754 956069406 696835776 649946755 911546284 796323893 562546905 289116016 84109887 135917524 314963572 122103895 867911064 873061508 252909514 771519120 525576257 201855709 219670734 15990073 426197921 806993918 126620948 410785093 544817558 939096637 553817993 180337387 537956526 430071649 893341228 390577230 445494215 627891369 50054037 116392648 474036299 265519906 892770440 691393340 859071261 587826107 449288674 836612262 386477376 985798169 790612605 844169635 908652836 367543879 952861942 87990810 263531433 487844008 751000180 673687767 59908573 656850454 426907825 969581805 334419242 606347051 670300956 758591546 314262238 25227783 422826464 559007611 138121432 641632196 611745109 226494572 46946029 801872869 805431453 622590810 307206860 431031039 426338771 49439158 72602235 683538581 995780998 511405784 844301467 240233941 173991301 895525171 674939095 945976937 65318076 987495097 453702647 507214455 2943861 396771710 817013799 875279195 522350018 7588454 929652838 611106720 134878650 520360942 444466449 218473721 655171520 57960292 260675104 126076827 87627311 606524687 401964273 163496301 503056182 969362104 7912308 912595478 262470763 791761262 231769829 259958019 933186126 196346194 997186199 285744495 323812710 377940892 571937399 710524353 254956055 648874738 439872065 332203540 124614115 666461394 456315992 699536393 126390682 684190636 855737507 655965111 365975477 189713844 79532977 421019280 179169805 902290680 516206698 442568776 678913389 726338748 808907683 447190630 236763830 171926071 305288347 144930109 309771577 369591997 843634135 780886370 666519049 765401252 83972766 340911046 533297096 928291673 680147739 26706137 937979917 499283348 234439314 139080698 350890158 839420426 714102988 291143389 883887620 546739423 957821672 639210375 735460689 828425997 870204228 182090836 809502790 299370840 674167804 823793317 487882364 173031757 782444782 529690163 716060036 510286567 342662249 291013163 870393232 546297910 877522124 494062909 482148845 127007004 645532554 953946213 628026384 140483652 590880135 599372291 133272587 612914802 378524657 868034361 251530370 16225927 213563709 175325105 301931649 411534683 121966463 817754622 981248669 192521134 54379457 259968134 618240333 674945730 963808126 130938224 890231515 807021871 295991488 783925748 134631958 732787950 472347001 512466793 471771877 907167910 752903688 863343567 347827013 242198063 837766747 254643040 859599184 184274098 158125781 825221764 670244254 203937024 626479743 328859447 917059769 99570364 794970493 260202193 522472281 181086316 388481292 337203632 6368429 552245357 480885534 56861369 241861937 252743911 680651009 597363277 653527022 922183871 156171979 824936515 650416647 867937616 587731038 325742501 525370510 386062570 749144268 409717489 676853827 758360313 819786157 745005105 123586267 246342822 972594230 202461974 895171435 668066032 69040704 583069104 735196234 330078035 328974436 152695170 407911860 285817895 235176692 741019818 879066036 701577557 817284475 544346101 899855004 866643598 370380970 491345160 751331351 704521617 190160351 277233518 910504960 784467785 987002555 365420031 611751754 100471117 239390768 421550011 14626016 576104043 195826574 970985005 246330598 18247557 213263323 720641193 943831634 931016529 180391086 683720857 548439338 658628494 522655504 968111355 244852091 409366543 64683749 466851451 551527049 138553620 816315547 791774843 15627365 966494239 63987246 783449601 620918067 797570992 919848866 874469912 917877009 185539771 459754693 204788157 985701860 562890393 439036988 163679536 227386035 560998610 738860452 321973968 280719439 680452382 455777934 685962096 242424896 281249171 126024033 415733997 739502655 738553663 447906087 188602227 781939443 652947899 328654534 952333109 516942010 532336543 636728793 980610397 996067623 132423905 941581534 767161545 468049453 31121572 402950075 599071215 753923762 309305462 927682787 330425152 692427540 621001675 412461817 398292395 883597390 147573527 82155972 284821810 961123259 621260119 695048193 573617277 219672856 587548324 571642247 807590452 658327441 835400347 542221522 565154617 236346681 153179851 260469520 741670737 324152695 881250409 741577665 743026728 151008287 214902616 427372221 880829925 883844482 892775756 853110056 906978261 761505775 384565025 612137450 570972428 26660782 98340657 301219882 486386767 668845138 970040061 390046153 153364267 752601887 507160018 299852906 701693294 829000477 128560399 377637606 491745738 738309560 276259906 78427343 383639950 695881305 337337282 314932202 748229274 589929353 724662753 460041760 610173115 964523179 861621792 350401326 637400016 903626823 981132374 109731055 555871965 665253918 167006617 513110423 559458398 567343876 475986819 613285765 446003519 82154089 207002288 593133065 800307067 928115441 77155420 692279765 336886838 686500312 466724345 333936848 352406375 868663576 12789453 32525638 834975468 754710866 330826679 983893605 796793607 553624887 665122761 349131511 936026572 475878694 363513256 964304486 366919386 184209173 268135057 861752150 375964747 365837741 254996901 850921969 875845924 101845437 792307754 519328387 474056434 152428249 578098387 484410712 623684097 243346308 9631970 145661097 127913820 753107732 18674605 949221166 284202604 374609319 334775102 990012390 551068599 535588194 541055849 799900475 79693580 828959941 607604430 987484743 898274051 623172596 920849721 397318632 316868184 58668391 98570135 724609550 911602552 323032096 172951198 954278923 290618102 395999823 498541105 503334937 978126465 659565666 412615860 977557145 287042782 512683605 826845089 474452546 621878130 208056507 274733155 850886208 528719304 826478598 866125737 94890424 470450885 246543570 811969985 731583433 199389014 707139896 825321529 242128803 29597392 713123935 405271142 70202670 481084243 676476204 704090911 299239390 211317120 699803285 375131163 622625865 106828574 357395725 89341659 188790363 530185258 376494196 74116627 304952056 832500128 383822052 192344120 69208489 687524715 940775086 205664901 791865288 135960632 704740968 486255673 476341071 279568955 586707509 842108443 294372721 127218974 999961533 905841864 400002413 323028496 847171895 582804590 823535201 185669764 452271503 532009368 320926863 181499678 969844035 566940139 161198811 538382975 930019927 603061634 898815301 433564547 727225562 319845769 763290205 558492357 846137806 378646758 285261161 846771402 90011178 959643066 928256190 41742868 882669421 497893400 953145490 876669064 532594554 752654690 889902118 171341034 522144050 244036721 446967186 909643701 969386671 615784812 41799248 577640883 490712986 347013031 374953181 210380896 938846832 913215274 1797569 260614768 164664856 477002652 807445433 366144152 127502647 749612881 668105645 313778736 175459710 368373718 295517616 447596421 61734417 22230270 814297986 310452454 12000973 94044885 886433528 692217943 587675386 5035739 166855741 715902516 598854308 658747179 653163028 93424290 117069898 813828121 369842324 328047805 126472676 427655014 348394767 743412264 158904277 599102417 988830429 618935121 334614271 345356171 18869382 265513489 175593848 656410815 774154003 459012497 747138213 587487199 891858075 84296465 318158248 790263322 747783996 725478319 851087434 371495059 940111564 961691026 307257433 124764745 822988609 431343786 370404262 685274054 229635832 44599447 89751540 604953780 310019527 871008404 647532069 217708936 487553117 481072195 11406446 261510057 909752974 956567645 403286676 473858397 295271221 477976339 773443358 401106859 499209913 445023685 690664944 819786323 267870927 344212143 410640640 490928351 157126225 916358361 627346873 708922099 321510580 915392176 565281366 480975471 318353878 726227285 408282140 361174364 568142800 11570554 524822923 210248961 65875182 822445767 356213131 158661673 100985821 752509809 234961340 840780223 41097886 817080959 941872901 808325499 192177046 573360458 386375667 286603506 146041201 858887632 106311948 476076068 571265856 599005170 122386952 888946851 774800356 178846224 564995548 251420124 507599526 861128448 705430293 665475888 476754790 160552457 170250351 824462821 226318183 330922127 96564084 996026635 770562176 564416303 683972996 284586661 510157401 410307111 188767676 600927795 479422116 137540325 761308577 692266471 703547218 127476271 676982694 885266952 7764784 415328982 730753887 466361117 332405079 882450581 507709960 502901764 14842622 940079722 763935547 119728966 689734210 546995173 690401505 264094892 393165687 53678382 432270714 589801348 841982508 578140733 53645437 449621118 74715709 97194583 450120784 538746025 299251866 358513446 828973021 267152139 112956118 768941641 869078319 744245658 792525689 346310979 31414607 448102030 966897731 306925658 942623322 201303450 187572698 294654569 885782384 957387907 43269183 42880656 906709128 245664721 670858189 245685534 525512681 835508598 43646593 629352515 346103377 935379375 156569330 585007628 632062223 515686074 554754082 4044601 890140273 65947855 602506529 638224166 470523746 990422936 687894554 114662119 393902607 535764770 494191426 560831887 488278183 181711113 254989844 99479757 486507172 33164027 591044638 522201281 238988433 814387214 662242878 491662659 361649335 326731236 398784989 672452477 248407381 572530207 756032330 593749154 693859795 324896077 488843540 241201965 53232817 975869481 872526115 928289984 282242280 50416710 577466269 794800777 194766671 326769330 639653879 935300207 828819919 346687826 324002652 313481908 546484328 957216429 710031320 66200532 201986277 344590506 45443872 922698734 43219639 940384511 370171811 643319721 871573448 596294983 273667420 82030199 284472849 880328507 443443093 525338701 573152462 823732458 617202602 131415017 87279412 817157153 662505588 864253007 625291196 369596085 190883891 604123771 782759601 108214669 153204443 731076033 578287426 788600350 686160124 4859329 465427075 611176129 115278219 578103828 3234178 609186481 710622433 466524345 763624439 130545359 196688086 706655395 161797384 875124294 752624144 179523773 604443520 586375414 975079694 711523732 299915322 63659157 395989765 867028732 238732851 505645656 200229579 807795064 70921359 652292432 417625531 20905824 967274123 242231207 335633581 237373848 54357253 288240531 97238875 583768268 842998793 344744389 400216249 1374908 919457992 701402696 444256713 402226546 956345508 620578950 106393068 284344134 170987968 440540104 734251383 243971303 759595874 616328111 890453981 794578381 437648622 242657223 686024200 677961019 787045162 199722975 133562329 260742025 286894659 37839661 859389847 13406459 108417294 453695089 824197409 390377073 709911942 390828401 150221685 69892695 837883026 63454324 482760603 598787005 142779310 589683466 760337466 631959767 443696466 331281716 486473525 594834324 722141189 142763001 505313241 953768780 10280875 65648769 52966172 893520731 473252221 304255131 979977872 27870613 237594920 645504026 995118352 68065612 946605031 531421909 59839412 171035182 92556572 469508769 84933182 182386692 371127332 545287583 891622983 646067685 3825231 29246366 542509831 98984894 507098304 159180669 320358491 882783600 76202193 810064853 213094762 616802355 910057256 588228675 348213373 48246742 909084810 443969690 599318372 36561678 593619542 720831610 587786033 615010466 887134224 981379247 775906799 567754519 668521831 174533884 585785411 921584049 35034518 685075777 119608052 352727711 963147478 955129763 671715057 942877263 914523164 200649269 979593799 819495760 168080977 960409866 596476449 807434680 835936702 869939629 785939015 364274137 162095591 214690747 376040252 342629460 327212396 140714500 604792254 13205082 845371466 495045767 28921777 970929656 859652506 775106638 556462668 133095182 705091703 260702068 815307514 169789620 853405521 558153744 470974945 12873474 783398190 434711001 47674591 649317995 796422248 148774431 241191379 238485740 171909359 105562371 625972648 214431086 246734527 505367922 463271567 412022013 477020554 816994810 284805111 841546932 16921681 289726927 359099770 531370650 969143596 864081475 866799433 583378062 32932449 260610315 923911581 993801975 481025062 389918420 863192324 269692238 715185804 602315939 13052565 698861245 768337489 238085296 787367189 378286322 817038297 241509944 159878438 562828714 109703104 321274398 875001710 501840741 285981628 891523549 10661534 383599944 943138257 727318432 589890253 903746542 239818396 401573220 841102237 798221175 216199390 737928225 478398634 165359858 15092963 314422886 720365263 627450822 822893456 898320020 991346826 207321583 490403733 225487291 135733056 145166174 304341856 955511537 970550380 494663627 247540141 494743335 773385318 754721776 426636099 809421747 365621166 347180967 581068775 598939804 767869670 718044940 867127779 405598817 468353648 930289 466317320 95847561 637310730 647694471 762692903 622782345 482378447 610160976 790131016 27574535 976343442 560411629 409220226 970585823 34543833 561972657 376352397 278555775 803687248 161160152 227350387 9411391 192557609 658559653 306977022 261841876 650355896 475405695 985848816 492490047 875876673 905604647 175917205 773986338 900464076 153655050 638715946 208269727 177752050 92344601 640498666 924422017 316826629 141521730 465514103 968733462 907199691 298325358 833256313 44860401 292128849 310523291 618742265 368144230 491050787 177824391 578419402 753834152 589591878 563715313 319303023 70666216 244876649 463892073 703114241 714137674 431733643 197968964 511533142 872373861 532177147 714607954 467205967 996147117 786126294 887821290 419966824 819279534 341351046 915170172 615412420 240600935 50082376 404696223 895233598 287393412 534046679 521370484 580414010 529126174 817672122 782884839 911321325 781943274 580305353 790958978 507987484 401712208 55674142 96465535 73002826 287014588 645060143 489541589 316938881 198925800 393746794 766849754 886917517 629571748 803975146 387521201 196711966 777528451 355972368 274111897 816866451 607403068 631614335 123711130 656111814 808696506 762305620 109006662 449200539 728115212 905314269 569826314 555907285 643381676 666544743 304891973 578622935 105727198 495768610 343597128 303587058 829387050 28305171 22416097 109599808 6156663 910549766 669043748 501243498 580088040 267529687 912515694 191336317 547819478 517844490 587967331 577131142 851763982 957477247 770653537 344841003 917234160 981207318 100012478 944623062 221848504 709850947 591612935 168122320 664813412 113311693 416936021 128846122 590843441 524947418 219821155 748064845 699645020 710580626 22194410 240360868 383382733 229893413 752508623 908417578 130484397 273332783 377180705 204679212 991705415 59618072 125238586 89447781 791049565 128433802 593643710 514309014 118464021 397483402 700763704 330559804 175797612 585593816 314520736 111872821 576169179 216774416 979179580 203905859 976146459 697293466 471376969 937631190 843838205 825058133 45951459 208061602 753065363 902305265 419070701 906137422 492575807 73613397 851801012 866389961 474555161 424216326 262425444 578565054 846117790 381423788 258046128 907670932 544633977 867164694 224018232 862463240 179994644 658635368 244936148 233840255 853383875 640880974 187659687 993710317 186240346 759799838 533950400 981752753 272889447 842590390 657909244 100794949 708111850 618984059 96411500 166962890 749023632 704119970 295359592 937634424 589390633 671661656 31932757 824772316 342758638 445355549 172466231 273695557 808225594 350087715 325414972 781816893 342834472 849573279 108395141 175136150 448805691 419170881 910188142 375003599 536367647 19647772 22061649 335100841 164762395 312263858 287144819 951915200 993980442 168408842 356546246 924226320 614482193 442575130 954694128 177868504 782903979 963308043 248611413 432694557 443577301 944064135 100125646 604169087 580177652 237691188 637203696 522591977 593572678 140976950 80983205 301210196 783636227 359153537 494523807 977316984 578582356 642520822 955651869 106561567 320926476 294042657 436166097 48464045 989840648 311600101 283583781 400698249 268756829 849110448 605440210 574458793 944069197 327701411 788356757 361251581 880301675 81678605 371353727 155645903 491449564 882994316 765299092 292526114 592610888 675969520 36647580 117124312 835130463 367596650 10616404 345225177 593533439 336681136 409662411 622691363 401151372 326735479 255145392 812683150 410066815 49479076 545599053 198499360 174364694 247422127 906731345 648844115 960232585 832978261 457950910 689831668 451927929 437081447 503162560 320716894 837127884 688963479 715343888 114162447 575544117 897582341 489559804 378917992 137335868 989269010 369209913 782747948 923066944 128615971 701305249 796780116 454218032 303615099 417150783 629793316 642296589 249472193 45920715 960639226 145194014 154281894 158929646 73960274 494888677 774392654 496352753 819319978 840261305 319494244 408429608 257032150 175273017 114691560 325117069 175533886 122286792 961789587 173580286 939935493 624576591 255452 879807561 438815683 747372865 535310488 8628371 953010464 492447782 478051663 306518202 364812184 828641070 239274902 859302552 465570523 166251219 939258404 166512255 19026157 250829422 228368565 801164393 838662917 753902147 285466405 597725995 686018483 523513541 83606349 767938525 797836290 512392239 779040200 570618320 938350029 755096999 584284876 38952043 488911262 416166466 241564593 904832055 223482451 989199468 428051144 848741835 702605977 264115774 968469139 298362168 961133671 994928694 852386367 72224167 850422839 23747791 402615275 319517695 35354308 569918930 812705981 181542733 20255382 156673048 444415254 138580374 937897978 567785985 147474312 69797085 701690748 624692599 812042461 696354683 868492145 347055467 563561360 308275968 879116500 873430798 286390228 997185220 29286985 908583813 970907594 64997723 220584546 897108079 592527808 678177224 515325995 213497385 978837737 558154081 559495014 103002454 22699911 552813213 772384431 360751463 196218882 117816373 531440327 671337004 505816455 944687884 356000046 303086979 881893305 861405992 442172024 94858746 289363652 391428573 954863725 516182508 381476560 817185005 266627734 572649110 930746948 96307303 832275563 213327446 91896493 596344074 336919262 389459534 633285658 555922743 516471715 430266539 585178911 601754386 839390293 512581421 742740762 578559569 699075972 689099684 943367793 640031213 117402292 811367754 212795221 144951807 726468655 904394027 819792825 137003578 764186139 521707560 573988666 939641511 574792097 554762684 863293418 70287981 851332280 289081806 227162303 154455636 288554113 585479921 962569573 222797518 967669405 211234050 31319610 856309639 418733582 38582166 273271673 90711038 470323845 148090612 770673624 823078596 205310855 291465453 200468898 346517175 713766228 310811000 107990956 839881649 401026094 668056657 349229540 906865528 824115853 229681156 715617648 735160102 454538613 870937564 447375384 535037924 778061826 437259208 503107364 973235972 678330520 137499983 143926170 711754645 235225368 290312060 158447687 391677074 496996974 203796347 896593213 565406688 287798592 72566981 563346046 304231651 251372265 378042189 355217935 356435807 20956157 665536103 164016617 163346974 237862459 538434714 394751409 957455087 893730805 321815983 561348560 673707668 672483338 500708365 589320732 981298345 687285470 399974736 658771346 30247683 985692016 716396201 863027501 667360980 466426579 791821133 429689316 420731450 133525158 358009559 114383155 794897136 102981265 70034792 243781059 597592133 579595258 875450986 656660373 424833229 295405830 415093729 323900356 677349121 746784880 399280244 593108836 798043651 528187545 660758789 951326801 539147955 626950680 934530783 55642449 131715434 426014989 788049475 536520461 686091472 116929503 788578143 9102658 307316831 630811730 819895449 492314958 864918671 326748494 768726786 724331756 240859707 590119077 660572035 578477057 423854175 223333681 483505566 625656361 789460274 553865548 899038521 855662719 480365191 833703153 805885985 151070671 899757785 955880957 462527336 9402023 503669909 822190761 260487761 95800189 592227986 178018262 58947733 899726832 816617600 457071916 128722850 588162858 115717603 371964402 312883564 530112268 468318012 194636866 134822275 137156531 315241322 531170557 160274855 157385604 828082170 141893043 956794400 322601579 659810682 224995299 600042099 562044043 501087155 390118419 401560331 491485604 642473185 390107464 884996354 538962871 926881931 742303452 678753623 79228594 913723878 680195731 299006175 931856286 193045170 21630347 746838497 31856953 666886184 29262449 219261767 23857366 741687763 543468704 613905660 649115765 1391921 238679253 191759578 159023151 695292293 819206783 583244967 500514749 614769214 407166495 793354843 339629591 311608792 529932658 210359133 106175733 885553690 771878676 918780733 951794586 645350350 966721743 757070959 683023079 842899849 698674012 490156976 505962150 684157401 287270952 305934685 781960722 527835859 310810607 696939688 742222770 632018475 627419946 955163537 838725620 99748383 330467369 789721070 615310859 301602474 762206304 553126072 145371454 960494634 298468235 970177068 753094049 294288682 749646616 204586623 247269811 973235534 40174831 839882531 38664053 616443700 693073322 709038986 143049792 769055040 62220536 733630917 400448233 622493050 978260451 200908226 205653875 339971003 560271916 290753803 57118998 125643581 243712977 369548226 205478092 626229010 348653035 183927012 710889404 709228752 532264163 701992115 50550240 557588986 524446525 279477843 767778651 973090053 645031681 172701815 597906089 37557178 644593748 549335537 562297666 159999095 963106481 398740803 312732498 850287646 25465686 907145592 6196512 274299453 524921081 93118019 137409387 529462650 696372454 538887989 27180929 207855850 745969059 123047174 245794146 819889969 54342041 266161013 732276736 263299680 220792424 317261563 324760836 244437284 98179684 891924303 144418735 824151517 621570033 658717635 648998571 624684136 518804012 937366291 481136588 949065878 455735062 505629637 896537998 763460444 552225980 986176936 664023717 272922535 116590067 825040617 389180062 269461124 763404814 326795802 378556635 703753935 918322707 922042079 395732823 99579106 629457982 592863893 865362502 457928131 421053538 26058768 667492000 60397003 315813254 612786364 14553189 758962208 836430474 920863519 565542743 830146083 649685361 694247846 308430472 520608385 433800627 738469531 294472711 360897747 206849678 724325438 252283535 251894031 69355292 415207728 240402397 862607729 127441919 563566377 524535253 137641245 313314029 324626415 993315986 643598466 190782129 64940775 171504229 647458637 547829117 581401935 603848028 875823054 383678559 29570110 830748852 316033572 294836221 770073961 896994387 669818642 696213750 935406984 801348118 537234234 462928353 883611071 20478855 143099402 941014817 737392094 819241005 706049298 972416709 480670206 658113025 929764887 897927002 429046235 259876257 730438964 915886562 764415947 337100647 388227485 418719706 74112700 651241953 45849782 994986415 472726186 994099840 979479746 95676721 766677186 846238775 791280163 803430893 766249902 125451006 595039221 902741627 976363280 784517534 922144440 25561184 126471973 537424138 395703340 433265215 671247978 494510573 410178706 661191988 259284014 411877705 621688852 737229543 338303306 139341440 610823876 550108890 872922433 716973932 951136839 303742205 489960897 377335820 539896620 880039502 846239462 275303873 235046125 65358035 317945733 847893184 285497744 724444805 154649751 190116977 315528966 548131329 107617777 84705706 792733314 71487259 114522965 278406424 27826990 973896660 463589748 784766147 598202758 372902817 511567144 767333509 686140954 674705271 877391167 173420691 69287640 799109396 692285279 436336894 129153815 91465408 89541455 952475265 437428013 111928019 877935076 382558958 168696830 442828635 459588770 125491058 689564888 615825894 705794148 941214131 62165623 645080648 193910633 157736894 484291989 867229220 860267533 665049934 942501468 749202377 907303588 752179949 931271955 347548262 931285711 664840270 556310679 713318 993159798 314364997 419452209 37294327 332101368 858907506 976198367 453417878 664408479 278440001 858397201 751568329 766790824 930812834 511281384 779607848 850613507 248587196 510795145 11144189 744407974 638598020 75775399 799613523 390884678 638090563 837943582 37743350 518149749 499434137 493924186 235418436 71745004 219120969 846357077 139015081 934838306 591413984 588138892 557069269 331566371 9069147 968309483 543033623 87179343 972288553 573249773 500577558 294222805 190388933 314911105 834440124 387743741 326242569 185252235 144835583 148480764 619910233 855133098 895402980 108326856 307044093 940378991 216500709 925338956 236258907 657385587 83247432 608203349 127361348 816434962 426544069 621194335 629605626 556563584 579038127 801172942 560128017 332374068 987370488 113261893 829954937 554618992 236725224 247476079 275353250 65013095 876812811 981568711 790194716 353291257 281628459 735640666 654056027 164439902 353861383 872165687 78556119 988887804 162857464 49307462 364668110 26791599 880285529 503846169 820422908 974111321 835387231 513942150 450286852 484861451 418594971 682935559 649914366 465009345 971468577 690424911 123963353 613166246 193534684 140908025 253719820 162204540 652925354 715565271 508750224 857774422 269278716 724781189 384716079 840930244 366001822 941894591 111943578 342095843 828535108 890617345 91386578 90530118 351591696 72337175 7354453 517170142 374939767 919036143 496488929 162201162 565212708 295194703 141183281 809533110 352501479 343989931 2897564 226185582 590927414 460004836 982155475 554652611 655019351 887664283 411035153 176579845 608486506 227577765 881930144 44290291 631448049 391575951 837445681 177876285 196377280 662087282 312236328 798885521 673151342 948887017 901014431 453687694 5905852 455375089 181204611 876221244 194794952 719340848 432213618 437528925 827528964 623491034 234202978 150982204 395629063 690074700 978914572 802348335 672921666 469685417 81738518 664778194 44974955 290810267 455114684 707892270 533139775 979586142 264621800 633791142 962306556 787169414 298025927 441588413 788552246 607552094 846599565 184425011 782626018 555459994 961939476 224074898 393659534 58941963 294087235 982296887 203022982 106755591 362784014 335896518 770898319 664873646 856963456 43608122 287231086 860597504 320068669 404879180 775217647 450395442 298885886 294020921 32044583 49477802 496020255 180621645 669684517 443545512 376313665 904448817 800812155 498280616 431652565 106147376 34124906 809222363 423918476 702276309 214034040 285223231 700037066 146749203 753137713 616548136 58497174 856578451 832357791 400584729 291838519 696513028 420393807 722483428 442983046 260962821 21517735 925244318 737046537 634516235 563635279 395408430 155642430 574798684 759000353 609694533 912673503 444620006 176392301 750208649 957728860 51905466 613851549 544101638 871982948 968230895 39671138 278756234 944727111 526807025 121687440 752411257 173006329 573897949 915075309 253941630 177121562 4661369 51478960 20594411 667826741 579650322 112999538 297527257 624360646 251513217 87525143 545096999 883315092 674430508 466119137 188519092 135536103 224888078 902721711 489756143 136471091 189881717 891353603 147188179 118431606 136427356 510459114 10743558 140515153 300717776 94669499 235456712 279030012 283392495 594119445 782427458 363560497 239202110 374150218 811191515 339921486 446504896 759587993 182114471 271474090 79456592 283853827 957641535 954764623 715337552 235848451 267214004 965134902 722592198 806566602 249221374 324304049 376596295 971972583 800441683 76176393 620956710 634478090 186330129 204684465 544903863 905316855 371492229 566290891 340040 184019792 404982147 520796586 364793285 144917758 70527900 167463310 689203405 501455663 532559729 817265666 418528903 350548255 98152025 89329824 977224904 866850114 50515761 444416467 61656524 446572606 492730159 799778429 812030486 931865192 214867162 350453657 200878917 758270838 760883145 769870625 860289092 263666023 50787800 754529678 720492646 476966619 593391164 789377852 206116777 851720106 891232873 810871931 837697213 789705045 369151442 765189916 789436010 342925825 904784078 384256182 575588864 524452419 429817284 78846093 107261453 757087870 181226060 776687582 909774788 286716177 49447990 945737247 760302403 908928750 424134010 474994398 340444811 301397214 561948378 218012219 413869568 481994459 345689732 913856882 714333227 669043725 325994482 97905502 572811615 160249514 749278226 227079651 771604306 33730162 348333450 595368157 723855312 981167362 712020795 419381354 75695479 151061673 737325427 233283695 916307563 196078151 461369607 243188529 943288951 133949325 765741136 450641354 475221193 531066948 921528363 508493574 686747392 569225567 617831259 978001119 685033267 410713298 386886738 662914078 110352970 805309043 781730984 370313013 37583000 946202433 137218342 135666052 758584852 190241128 821031211 997217987 932622896 884614874 133006301 631701318 987367616 543799033 206312724 334379965 638670906 965844504 423493094 970571185 180451326 753519250 916088632 883155038 953238851 316500848 690254877 486687830 301833401 412761454 371235089 191271496 895495500 956522093 624911007 655990217 484715232 925477265 382564615 404794154 638978404 864297686 259284204 728141842 609649598 143204470 27182559 89186171 196707007 225666391 576543674 658830988 831592449 215859347 410138727 416350271 359421529 336746982 631139556 397178087 47222951 266903409 861346851 250618574 643839470 630935202 800537015 126314547 712958948 829576621 57967328 428850607 453926753 62436220 86847964 361610333 647838264 675297341 691932571 866587244 348870523 357274146 236426932 330378619 164912104 1929375 439488335 677187414 975805211 712616651 180813829 649843241 260236021 314080870 621252280 602502321 101948348 664955760 412665689 502797531 252042407 833563880 64941164 340327336 967462534 497174512 791762163 151495824 500813549 810747188 516178061 194554477 214224443 468866429 2353650 928031799 34554418 849258954 692008978 404050097 142165174 362441999 909458647 450888531 527371546 357898929 680576626 638399552 189799766 390379117 308728967 114006361 165548823 10692458 53657975 177807087 488353416 532148022 831843179 156899477 941068820 207035269 457626770 707662245 907965477 453160910 448123214 976813073 63365082 159501545 864948955 969350566 220442674 367456314 640890577 561366139 941525067 747431510 164018993 334238528 753932181 58110210 986965458 918963053 668782793 701443032 836112257 708402784 998891046 333612629 326615632 489682816 319693545 427016504 564056482 897374743 656024695 459140611 671039276 577726730 826480016 666423377 287733802 281923801 282725402 210119193 748342276 436108895 624787105 719322796 580811638 790787714 824344395 291097720 166724658 537856105 860720338 153283684 967230433 553423430 317615945 952911534 759528648 446028373 963558140 881223227 271609109 893460464 472968294 892134689 402814569 614451864 89564625 402813394 467952534 625443120 235331315 833202852 618436880 487184120 448766767 149868867 794746260 789098743 230559557 162194401 189613968 997182277 652609556 493414054 474640204 398628510 118102650 442613964 605496151 889457564 312579906 722137524 262475634 411996902 226873436 731631119 244956988 954243750 517034046 125717130 406776749 978588591 841574513 860239307 283326499 331154425 510182691 271515101 509774886 505613263 1155058 647193112 16574773 746585466 275661697 538695596 483996265 888319437 892067313 810088216 475048537 455436881 790049892 569821602 958782207 380445886 408655894 670623013 39284141 382686315 650736336 108731785 104856532 922556356 717851312 122359124 405533977 224851789 567723542 177297169 51143685 392563496 361825807 257926323 725308236 580959478 684649575 882367225 556064213 164604726 434253164 117196692 733314731 474734075 94455103 720688447 475884339 14741537 960608779 296553012 483275462 36764742 457293501 418395779 711958912 675521711 714234089 580871286 854110380 851924928 554288463 780381682 934021175 246931561 987290206 433804724 545908322 141944607 380284307 984317330 665345612 57901876 548393632 555652864 136551022 189863104 946264736 349916493 706384363 883865493 528245243 334256728 558512877 89378112 585658481 15518792 802114775 981518254 45540236 586168375 419779945 166522964 511613591 998491388 416558137 876318005 956452624 225575998 255105061 947306519 612320951 574617845 474649021 307727295 131139566 501941644 242773781 561563900 223062199 113785524 911627893 815817227 892198422 455488020 597159089 955776582 365666811 236454394 167702774 499510468 10583807 651428787 571866711 926584792 351391813 293710173 324485576 921291943 140332665 779419365 389275417 713267084 351439383 175512401 552624447 709393544 932261314 694987347 262695048 521216776 427047158 858762607 398539417 812499827 254708891 974229831 710636540 893890094 161085289 961113470 705404347 47743445 335523136 685883948 789817931 989750857 514763120 338563181 584127138 455536683 254450078 972830595 182781748 285517529 848233024 377882187 372987176 242769329 200186818 515053008 802209101 303996282 615836626 870279775 75125948 791775127 503078577 532517754 161385525 92513483 375063517 524727351 647561983 200756647 128253235 421265052 817365206 740219166 104430070 891710798 990814702 361845309 821344367 101130781 138805891 857341876 543369770 185676190 107239052 182895732 756261873 161115147 185908624 649783415 754899953 237425357 152079276 468479683 796714986 253961691 582255957 968494637 506796569 496057264 635759135 962994197 361600880 388103828 663651647 977519187 38526373 431050044 930064056 883202210 482886835 214321406 2402546 390075418 31214129 476191304 693506928 323814283 534834890 949838898 646099275 937460973 284626339 473574299 668650237 152126577 768749332 736238317 732937381 482694304 383878763 452968807 659321537 968637580 138083772 281465413 936719270 893113044 801777633 174877717 65918969 105840265 253293778 803128033 498139337 902927601 207096315 275390104 934155508 925162729 717989618 537498883 2021802 930411151 232871926 410363149 763001511 969421475 991358737 664632230 165845504 391998021 701112283 445872525 461264564 137989153 828772190 279331386 527126328 121565133 475536578 219898413 997992823 416411628 610192164 211884890 146526257 439074998 542704514 943653647 875279924 973853755 287885676 192205191 907408763 175953089 270241454 507435712 260122081 772281359 78354942 553961635 938971899 146235618 891097185 603844127 210774617 855334101 745492863 51308800 460081205 900323955 433963887 543375882 663985802 572342865 521767071 30747362 57868500 844163942 138077368 79830195 55465993 187035186 188614427 172201814 383484995 880172 260065843 421126590 248709 597184347 336179735 410623903 478834243 997505002 117926406 262643342 299880275 131200203 456196823 813581941 794543077 79766523 552397610 259487523 889578074 857012375 3441667 595067137 504531759 195665773 871046965 596510796 418759998 811191778 117478025 889148891 191590119 677778265 911095770 354569135 38420899 241996332 20827391 710882309 819297388 714803178 786446327 959072416 862558310 205817310 997124969 938591428 637191925 121587296 101817335 445759023 963690498 897334377 339754301 900155736 856757229 485445793 69667028 311922224 804227068 292826648 481939474 896321370 619120707 926431944 364548055 447474506 570268271 485169340 620580629 124545470 810599458 675458682 655705244 467210929 521414265 381690039 439892156 104849275 603073528 196060682 488850915 565247010 36058187 297403554 817289435 856138203 605771423 709068798 526096304 679314590 943847412 21700003 836194389 536296679 629241332 860436742 413862626 900879876 603676149 295898905 331543349 533606533 805320410 582959609 166473164 498984379 329923945 686310262 89450266 10800445 64567333 40261405 570001762 623344872 778470656 900028532 9300251 384697281 329396049 31761294 870704099 858329775 189065990 698437040 807033817 214225625 447234856 171122709 827779246 155951539 78314549 306007601 158849015 936522896 845828988 326850916 743458000 2742902 62990755 377309716 175081702 150746552 770185647 168524183 504703393 551021835 668613709 227926815 197970899 747351535 879706888 356589742 244937731 776978035 726236931 550362381 709429788 313147327 796068968 500588794 971982303 503242049 547247103 535860301 402091846 63763544 40182077 911609633 136708224 170877481 223618171 768164895 600465787 82860093 724002951 462759099 57754701 118991497 241935706 501330546 55996951 252835463 737896342 211174634 7493179 231249158 695717340 525506521 687868240 887287807 547059750 184574621 522542120 761306643 678779654 435309717 607330379 632486012 133916730 381146577 145414951 269078329 443122986 97577553 783518905 422467436 185133099 465877354 986260211 300699528 743001997 773287540 349695009 604182413 927997110 964242477 545205136 117000649 579760608 653714041 125486127 936156841 650482956 66914718 180330014 6864516 444273106 468760258 665272767 167762799 652330658 833203528 648210801 293086374 384342982 287481507 371839288 128851992 891189636 622612433 935620489 702045356 937157718 105386617 716687259 118574204 967278018 519567077 101581921 995731609 759881906 468623420 852532335 481814163 636238143 102566536 804563663 883043610 281312704 330529042 703827843 882811085 412668272 985741849 402847677 57564379 432599843 235634913 630746826 647688714 834550320 974679230 681260518 173989774 67988904 950455759 217376987 525411088 154015637 808778055 64461595 270320022 665469895 654748176 587114870 659688830 840941345 540124236 747304291 23959649 95751116 337953906 50372517 710415440 175030763 823974031 565704084 485783214 459966585 163945863 341213955 230803716 24926603 65703440 85183804 461651628 506074287 872837315 347966520 107851477 76298131 15265918 176372577 836147073 499227517 405190595 883582278 606421954 129293409 526288115 534139944 47519206 696816548 716940974 383318435 278869886 809311414 338150228 625863594 931826537 320493492 387945708 167771225 86941853 992390204 696020068 507178188 127865666 525229441 71649345 46693083 620684407 678594068 333004050 153968295 345538849 721028136 588122987 763243126 560541563 468331027 141826844 863399549 729272624 182984526 743820297 532332029 710550910 797533299 901374003 898841336 726938592 530950352 665800131 226155571 589673241 66482123 883279504 959934022 401350423 283981287 712848446 754161015 186718203 969227863 526968637 446026878 772352677 713587071 66449510 704736379 400068432 383029608 601660621 349715253 993031737 697564373 790554595 962496142 87519288 846440267 126468383 402131300 893745666 829707459 316095305 62586997 683237949 394194269 288118899 26162546 562951082 770500317 172715535 13164553 289585096 408579635 43221981 938715219 569091591 164115151 101454155 349714505 411279098 457303365 76941257 243505371 620746915 919217907 780550008 543929804 746416846 891051735 401107942 327617552 53632772 952725551 32509895 466250275 99799119 753470398 636098841 16466821 513284975 653997519 620944477 606553413 662238317 951810075 787919722 710578979 53281026 803309960 598539900 926451321 470972531 905892324 606164141 563792450 452318666 879195988 324538459 460874273 388802496 326927634 255639467 483587599 610446738 213228277 781672425 205827337 186873883 311867084 223118812 4826573 437716325 13593453 872241950 42080341 617063590 564667633 800724793 115574983 697420897 482438702 588510839 983711307 924643975 693986433 956068637 446734096 616227829 203390148 789349013 869481302 160486784 549320697 396075756 381965873 379686487 230108656 429535392 454096754 832924479 58160315 21864266 827420401 640937551 214903083 932193000 923397404 468396268 75419727 41443786 660261740 856142202 428582665 415919911 449417749 32846146 560046828 703209155 986225559 104732066 285149148 664037529 814237901 205484835 830473248 397423368 236760258 237585842 74724121 894516373 115893149 374696805 646433391 901820147 264609823 730141909 559393196 772518694 424061393 335717530 389405854 652221851 139027764 115907543 209747779 77752128 727499585 843385287 754539063 357453319 30734588 916576382 991334363 34052040 536795649 70272719 762019158 525678181 246031645 459161648 68967207 18706067 239405018 178698789 89594712 450966262 908440223 527290992 512158092 997342499 512839808 991062783 808988511 647806974 135298752 602562327 350475664 346136694 906982436 707118652 370024893 486334852 222314563 329507657 546967219 391015863 398318634 358564523 562337774 989488222 188835228 965910523 347657174 963768874 45021713 782782020 388161490 531239255 527134705 267611080 880658716 889460767 792972942 863960953 641618349 887307367 51775870 540242684 915008013 903644603 165278977 434271577 147914022 408736825 87097501 788268277 869265330 513667458 37020488 211256613 781856640 996790935 267308852 53091253 651712513 58503229 74503746 72236249 437616944 595087767 74286706 312709391 124605751 877290541 124791426 424771650 161638066 663257561 378361638 884375410 435062564 785162397 109262907 954895158 166822121 214627417 93512061 236585519 26731495 62472469 334780077 515814261 802496438 621395813 998841270 322875894 894771483 667060992 613477205 336761009 589753989 320313767 951954488 558567877 815933738 783923339 727671922 805521429 371190368 418686379 40404366 55050333 86291468 973376198 260337354 138763939 25020705 768456762 266073905 550029842 648986043 157274163 636027237 896342103 616131755 927739920 620046886 964162552 177909567 36956782 683466521 453548642 631254081 800039356 732566379 87029628 155159284 208339717 677055550 975710914 572942588 645060404 387585317 802514870 883564325 251394519 188073642 207840075 687128346 747189284 421674534 408949522 257357053 23206239 691397000 444748869 174836666 775559003 390408050 956629141 367155347 653912641 692298675 277549744 150995953 89405325 129915497 942807486 893395793 43955035 289558466 510933408 23685182 571013623 579481485 724424467 880248256 288746284 680256924 488568614 137296379 34525081 93154463 501996514 428298196 176068327 627985996 64138406 396080175 709819344 840770578 156657227 155318255 9856060 304774189 6746524 148971618 302808856 368601251 666656350 795461229 774917626 663012487 181508546 526110317 129398461 422888156 427373788 745450546 501512795 703139098 197664655 11211508 3025141 318498286 312046103 279030359 122824907 534441014 97975420 669735967 491668888 478098184 346438279 64919722 595939814 272073137 595645880 205231321 898538962 646996358 539886502 916572025 964969833 831389728 459838495 199659646 699202772 472398488 475730823 687747522 336081378 540658525 143852442 362844665 892171164 21690548 857429712 726781672 44532252 77635218 897514242 377120939 166029769 441611674 94449088 751409551 245449094 343019343 71171443 713447626 763620808 369296815 224974771 124506770 335254621 358929981 708702198 616617103 504950409 185251752 904562826 428544151 268368160 103024979 366815596 52644538 798144950 793554960 362773763 463197882 836101741 835912566 770610616 412985100 273110078 119736229 649743131 715943139 280707642 338344821 445909484 649657245 847139094 441260386 673006778 534333593 958306062 935083565 66966216 981608806 443711187 550186689 15682316 613467168 220923475 912199685 786483016 479678765 675975020 209699684 585920269 429430774 58952759 320345524 228375687 583684788 740781436 628776501 236285978 166684671 635363910 819734358 647438306 79464359 919028401 924728733 886151623 480334744 659425371 972782071 388008699 993580034 245533953 157156684 426036773 589506045 879755372 808595654 690414707 379908463 85372589 614923068 822278679 613533478 797829743 169501815 87291363 403653881 31065447 140067560 816738175 219666200 511893836 598125920 432842761 31521163 391891919 678447457 137099190 912200720 219872304 180395752 735314721 242828167 771003411 269273018 562885480 359090044 579013831 367405445 582926332 470239317 241496914 687638062 639418302 892407625 193470876 218263787 260824315 179249704 572286410 408766935 439133650 499687721 14249316 737131181 886552608 839086874 704523978 196985119 472870187 314393324 166170431 191225159 585877528 769856818 740178298 521821269 986845239 643947289 782713962 225058535 419763000 528392670 459731038 939343535 448845950 952815619 647405446 109626625 79116047 427232942 406811169 441461040 189400521 349218338 482637589 517814184 890021805 858446715 165592503 125066569 655123186 686951178 940055770 628930218 717186784 379721535 352761816 722390341 665365564 929818626 212942414 665162279 527934269 322164594 557193322 99042152 221282584 371819207 48750158 91463768 70206859 786996493 985039597 139889430 148271480 169299024 522662812 869731671 977495885 657952395 287471474 268921946 661271406 207041691 583303234 699912904 370237142 640007157 324769407 542968578 881655169 393492297 334823603 541793569 556907978 930053759 525679692 564782189 63740863 232142075 892698155 235980266 570025280 656966094 296658446 925595399 840814067 236490099 1968390 7373534 43779412 233823153 558046788 367276163 417970044 181859358 997134785 479602285 959841240 409007520 948201869 325406023 750407262 481328978 471461380 7222064 155307818 148628460 719163992 367738243 797968286 687449616 921076045 87770568 923613307 984661944 664317853 721149599 902506262 483358559 849427533 221493505 943319787 79922636 203944707 529254377 897862256 183914452 30957982 838871196 70175398 660788129 738115957 527905121 915824253 896416959 19843746 32756722 840123571 832208578 792189950 266561419 573705822 588737376 499973438 863447645 561055388 992946475 657494995 18983263 907276929 187203416 212419576 990793147 804033512 101096805 334688520 394786235 442479184 305757918 784970249 815672231 877526515 429442954 919797013 223416447 908367438 46611808 764953423 741007531 645549062 831424998 205818380 325922594 70130100 840363194 674646758 179920978 279534396 104438036 201333715 249572452 966962358 671798489 356268652 885706958 743121854 411643865 822259853 178423756 865548470 20116401 282466413 658672227 367288854 811002136 630886759 44188339 754845345 89620194 723509463 928811795 44363990 82528154 306671274 802162477 375878783 649943353 967091094 815716734 611171806 536288980 927253884 596027985 852992102 413567547 334700508 920786881 348751432 442578602 553557776 928034120 967158554 690788677 291009603 915605692 108625669 556711499 409173340 274136152 849340759 865073422 895236123 792803667 299349812 890016518 767382340 684400203 444891170 234135657 817273493 793638427 345596114 938613767 635589145 261361034 522128428 588214106 678881629 899533431 842198030 551546069 838368437 339170641 29682311 663376203 192280285 166067962 190119120 457784350 883758203 746921099 194605423 315535342 631705773 132466396 709612277 962125311 627403788 228768027 731318315 699360097 23678438 203030842 51717522 485100616 270133415 176785853 990455490 353408508 836713143 235814175 673864405 515462546 406879895 192042528 162733296 94494197 7683791 281601027 794390469 210649020 380540146 958282219 126552627 385471789 357191833 463257076 932437104 42183218 887317646 154413213 439586112 130947749 27132939 977341925 541387033 97216843 409662617 513625233 310009034 906538993 634985359 689647682 956115943 950012875 990685554 287178681 88980331 419796688 66189953 540096070 654054646 444601935 586456433 996289390 919166223 594107339 826680997 746727751 648995215 539810184 364067623 746868101 274983234 62497085 33060429 233614623 927989124 858339564 181695183 667728710 296286473 902647309 914395827 773242630 152986418 694487127 954268844 979061440 483771702 603501267 37474927 471971224 491050582 786822103 675748479 230259995 550093701 902539131 430847650 843228864 63987875 319133150 144671372 746741517 810148249 92783313 168220275 903811208 700560738 421123358 47297487 101086792 443795815 407489255 527437039 85029472 777092289 15476274 53181770 330408244 847660450 691009448 376975172 194211088 244555067 846145989 584294740 365964571 662821718 730573770 660368706 68761804 349478374 485371519 905601231 169638490 643569747 175792404 206261599 830895087 487731413 614507540 882272172 669984351 301869309 580236782 97606026 768549664 440867473 625090405 135614926 115222490 911612659 229970035 877505937 798156981 990384761 72991444 438967091 778555783 585334082 992010480 190232576 694581213 214523894 385919689 416572864 960405564 410900132 793188997 216776773 99473725 919218101 844685012 688999588 357465803 473586976 493746333 847781349 729045295 926160162 865658108 95647363 472748619 159979159 353016542 417321442 194601839 872847914 936259053 618573988 648868966 677399334 222453846 753915666 787841795 210389293 329092183 315813919 130796524 303709446 579192767 834181689 95280950 606179606 238171524 401020519 72211628 300344189 172860361 654980541 101248185 101098313 912872204 648131836 901637798 353717133 607655581 346913888 327169285 143846350 12797020 717007172 954341197 187036125 105788640 435310366 553817798 461830246 48967467 352516489 224695418 62428271 563737460 210170427 515118326 931432946 919707854 442122925 95844384 263775588 805101494 777180512 551454254 194987027 867241780 916968050 238330278 525940033 119383361 802047832 987346036 419571915 867848691 683528510 532745966 374025208 395108880 427146 922598982 172541316 85561821 225468567 612803701 792666290 174932511 417133307 697992787 890590727 840401210 876531084 836539451 630615886 268066353 38070640 663030393 975298609 750484623 147369860 110672954 678662044 242989787 914720661 817186525 458185057 708203451 326748415 141685584 994974329 519895003 956918341 685029395 126039718 828580223 757043024 323631709 727178489 791659802 962251827 182745398 417538171 230482798 939080167 779645785 960454918 8437371 848622506 265040533 24653136 817973171 231005692 49190119 283117662 347422600 100951908 984644035 892825730 512286435 255218806 159527048 954164527 936883093 963550759 152110362 134823699 489731941 432499341 195158351 134811599 985042090 177682259 871071945 116448939 189056138 861201401 773386861 137015544 768685689 413686249 853718421 9602343 668624432 12046629 214307606 892709393 987829513 555004674 520760882 131702808 331782951 476816357 55812768 892088134 506179751 189029376 167455446 302408164 137808568 331068607 965623771 818190226 141788630 517774101 802505413 709728856 293035202 162794830 69257179 612487180 10036990 709492901 675687308 409446646 245305767 177671675 848609680 409235367 256881037 317477162 930101057 460281412 987492029 437855363 519644372 30411746 385535146 101541048 875197804 473050399 693922525 818479421 356042677 792007448 834490651 343447802 223353094 808573039 995821989 578064522 895305424 571098107 636685830 494998016 16824596 254758894 519892961 859016450 268464445 697757301 327757354 765436594 916295144 909505437 830918072 177162351 204544714 851320529 377188358 836791437 617524023 124244748 766676725 420555867 741656011 967875377 564320487 508816932 78267461 858478623 587512114 173872944 479461609 651338072 346678331 152780053 867295858 752489349 131856478 281300620 198227914 457500303 65868038 47806421 177904409 749301711 493719701 545930096 437910999 712344054 844697794 263845073 690234699 545154453 107372696 289635129 867182915 449724764 698691448 223533491 93019155 193372319 441244448 843187910 771057813 109105752 239007412 969286370 904761571 299345745 32213708 127406942 584196601 916767003 826046750 198999735 456365554 111650184 487900945 77733681 142714559 300256904 740663709 896667190 685957144 266845085 689627196 198701617 55532725 119792299 897691034 279690393 924365770 409041212 780304698 505901620 579162678 593694966 998337707 853875379 598290603 750846361 900981337 192104256 45522606 568680621 154313964 966955182 53583676 23391234 527001821 368782337 591094546 169117932 252247938 473300171 617529267 195593241 884561457 786314407 487390919 106585690 590540764 517864907 145154729 101030514 546796612 187005202 508805799 760527804 70016144 58449683 694296961 419752234 47974688 495758567 757358673 458527370 361734373 315203246 36508036 818047690 32917113 310221739 870998579 789681021 887573221 703122945 259045025 109877873 869517296 66633748 879539698 509837033 104799573 223900073 721028553 571129009 332838697 346584881 559697373 384395310 281473511 237265445 110484042 91827979 803286408 951964642 833007897 153480463 432952367 61603200 524642339 200139194 44056646 39138525 173849555 869707966 301185872 521704734 793129413 286559954 522964142 329085539 326303531 717074809 240650838 288447806 949958973 187719851 172418547 128462449 234094916 852171876 490138538 562819126 816787444 259385878 169280148 447182867 115314385 654020799 410968831 764679961 218232943 848314524 963221617 462951791 231086812 988938301 921149205 166682570 469578369 45919587 239254473 159987840 128976637 774336858 406138938 788501294 265858017 924456013 542097180 753582564 900696978 930836418 788445597 609351698 6031938 244923283 485848965 800362519 773172442 541362413 340153374 441081743 987681575 942217894 295933194 463673491 315767778 259252120 13827487 306058263 354512190 660015737 704749662 332779334 407993183 911602813 336756738 883936852 347436271 40960480 548074634 381628963 638911519 351253742 382672845 196262181 229944720 51213005 419809220 592330448 303939234 367705907 970812 955165798 903710479 912759733 859879596 439221498 487674002 798730880 698746551 774546878 478337321 625432722 449144840 416560282 315736562 208293297 45081487 829132118 802776720 275596896 520700003 875156714 684222668 731548935 96307241 185269966 570458526 194149291 511715969 199718401 135714427 447437910 750910587 361387102 232492982 855073069 318929338 271493108 360722785 990715517 214663613 926220702 273851993 435240391 489794550 962823745 467078026 520747022 269336129 506325800 229391508 358820295 163465641 660064455 889346044 306297947 306807232 246907344 833274900 833136360 546597956 554597316 31790148 807885607 825596753 16342970 224855221 516095979 211446499 920856334 996871003 883713013 38677835 240360433 131686215 753230011 10046769 615540509 355689413 306150015 365121470 9404153 582249550 837588533 297102652 707557964 847354669 520396548 566227851 35121222 249081697 605552673 853548397 265309720 87872254 218287207 732811012 742172090 132692375 13372080 441411752 272789304 783971232 790675080 341148504 620081171 189087230 174154879 510374939 51423540 338618815 441711744 41663761 74373500 350165848 490544738 709247009 460086242 650318951 506577186 467083386 927151019 697060408 946425064 278592518 783002122 994377565 775209651 938703324 360641386 115807695 571347042 761295804 954789512 304483450 211599126 183250415 296842305 70886969 849901130 460964989 47319987 665638634 525420836 689554709 820233834 248653330 856664029 655355775 303477125 818188431 300662243 224029794 417168946 705172122 212943072 745826243 647164383 181528176 779331113 218707386 594354427 99108904 695794253 189730580 182839431 906965847 701237801 975685924 657301334 827882855 674024205 237073012 73592212 86280553 666816566 801755110 385762320 706682814 715647106 274874669 68297123 260389928 124670206 225651799 895425480 249764768 425192327 889805009 412645950 673140286 760198664 305603810 841314285 492215340 931142285 645015189 571036845 338701268 732538540 306381770 927778068 802006048 934081177 617724244 547808559 222917968 444988151 625331353 38643589 897789089 706956083 804840314 573775162 102908316 621971046 302884066 31842516 118015014 524355737 596024697 631060244 468300526 976740772 629744219 39986813 336586964 63762183 582809346 356562952 367098735 567797951 519459884 123590893 445629760 902487957 667985985 491590024 265651764 51228209 654469728 541110441 632999299 665941443 126614706 81608900 837301042 545301738 244863073 573870577 779897608 395377914 551919432 954809997 745852965 601174699 954365352 523980350 462668562 210588852 334211842 156861732 211473990 959168356 728427546 312299938 829703412 336735359 317180225 25731538 826013101 848219618 10080250 33084989 396801169 197658283 944211746 359596355 130252058 7161668 406834984 26740327 165876590 473925640 594866034 790790527 567663646 839995726 833373881 446615179 885455000 395096952 120928051 711022956 343382624 903032253 955958535 79640797 798013545 842342877 977217565 423721513 429014983 493933809 880476853 172005115 316315902 182098134 445781535 107803376 544599528 268879641 885167245 255605000 41174736 274588954 526075798 816431050 582005581 709483654 941636086 777196315 199184851 538461627 467711428 56672922 249785816 841440152 306889304 755229179 469632114 627047727 978521031 757854402 227159047 675736532 386716244 783756285 829237388 842018425 680230246 685147829 775129900 952865323 775011684 528494700 893018910 730901494 984828475 795596979 434892004 165742070 398031724 561412674 582342059 472685375 858704972 113059893 135420021 455017301 176386440 846559696 903419623 785175070 291965013 991005413 270465668 6990655 817397450 532093769 288278488 744010841 898001983 90144 340094276 736361110 855859993 664761374 174293764 829102069 205703697 623553239 897730503 114365012 924648111 377467237 808516895 744290557 729861153 630148200 911018970 544966715 688508191 370152354 533516856 854406245 436699170 661899143 527097758 163924484 938289890 430994100 41649964 884231869 124482494 915069600 452388861 343848188 272319146 834298199 155054546 630643799 897387239 898994639 867398392 34716388 24606921 318098063 855736798 595938202 903873636 725141580 795372418 28062944 521842522 126208625 348260946 955904105 877645812 558908987 193654260 210897577 728268719 1254416 228018231 943549456 80499178 953752735 542093713 926698476 170027425 755130500 247385845 667357559 818957390 432456777 423425772 658933063 169409129 839667268 191439523 581812436 594129247 125722096 493324228 206154106 16952851 470052597 392377366 629148602 833994709 855079306 464459071 399632418 419106166 349512861 806127431 901034764 186152355 211955604 4354248 721956757 381253382 548520382 284394055 889862583 579628158 448593724 281802045 901126564 838390667 826508898 423976570 860472017 589689860 376857125 729411089 394748720 685108238 577953417 519461584 527499925 97815044 724086087 618932987 461904486 699149619 106495817 616818185 45034081 190462642 56166217 462811479 583224838 665901261 850100814 789223563 208847038 119847346 304210845 421323438 526308130 218764138 807916736 980327672 186647776 538297222 304111653 774888770 977500702 350329779 165791860 675180120 477268937 653653318 308599720 976231612 984696993 54997838 546256482 738392807 644613358 596286892 222618299 307471427 363447101 694925802 793204780 676011111 378899328 990525033 244168624 797905997 482548761 138280973 870924796 221913882 289598215 990638157 581695871 624846706 150471440 616833772 411488643 312555953 935693366 781690361 231400020 343703395 796327329 707178446 143560051 279441231 544911916 738065338 949959748 200519519 835937645 654520071 239857516 195926981 287184656 937168695 190520476 88902150 247725987 185123742 481365626 665460787 906558285 136729244 620984445 316008251 847525696 655919098 513317328 486706907 41421526 106403138 753092021 130172692 300284235 45137295 460080198 542182925 469137070 3836957 525175191 749969169 314458367 201858600 798566378 328128084 768470630 373670684 270440374 16555881 850440507 988251035 197569858 205849590 169191522 322528473 633126460 760249410 500737291 203785159 227582568 636515736 757700749 626805336 390374538 692961131 242353470 695633569 644364872 258598612 540699542 210294633 4502237 382698865 494743737 141931310 11177859 435858052 297660240 853891552 195746878 396531017 741866416 725453686 139417442 426976229 459614064 648707096 530735882 762368435 453732993 717320688 916456274 607160777 33232276 524725265 562641951 185848976 787548539 384032572 499926108 820091697 619732506 981575005 446342361 886532326 597030318 483454278 604044150 921927261 518098130 389806761 621262474 570905678 45185829 14314525 69929540 368881854 184316550 940099680 722309818 940877509 366996865 446602265 825564230 455742343 380236570 487217634 763105695 44813923 49267491 961299014 985868489 386257166 723894432 507085520 481021982 558715210 767961773 438834674 993041025 933517673 926277043 821263844 462734343 229428564 560485110 721214166 720821864 478668660 956763382 950812764 636006518 959782071 880721546 843188980 556228853 426656274 224218414 422029528 250877129 259233823 960527500 260550240 127900663 298535470 580107465 994653674 316869784 372190 510877760 580989442 224988388 889471748 565558540 676969666 318756950 749467493 259232791 504377480 343316718 914519024 413367462 852740137 883251685 798835883 597167923 829415940 282205024 934266484 845305659 148050354 894877597 1752211 12330656 75089181 637178446 876216888 417885883 785709085 776804497 811216411 829166437 639379105 811010382 308111124 581418283 14408852 924145588 436247973 569594365 647900801 32155714 135563446 731034737 437274417 660839909 741306029 612387575 452942230 899897234 248600832 318506428 862030626 674930400 699063647 587858156 357379148 915104559 654247003 638018690 54412481 933744884 978157149 352291928 607371490 232062622 812792104 706844789 494670590 30488616 644615180 823112403 626264364 304421066 275879466 570074492 637384333 574936908 638835886 595845446 925993147 741869907 705916863 975682033 699033060 871175732 166809628 486693365 420873624 742118661 941350602 312652093 484670538 171603223 954354320 202948088 845540301 853456910 530633696 10793383 44532683 335700691 414389369 314072059 446281023 821008213 339714877 309427615 444291843 733455120 369032940 855177130 490734812 431385715 917641291 61394610 96069609 5507539 306101377 554603353 689660206 303153687 651142064 65213677 977270603 282777684 696736725 925527610 692884225 938137661 930918815 157494101 601480006 566955108 180106364 846324104 622712061 655692564 867670068 87814740 939837471 556822942 410918391 90997583 108981358 676660366 712691529 742454041 200147292 660520828 507144090 990995870 144566805 609034790 745138013 969077753 356009161 465540957 944904885 200886741 689693287 1452836 434513665 171990190 178868916 430854771 142702048 147996367 806175713 40715781 921604926 360540917 620448674 816623453 899218353 686189269 502381693 257923266 770320224 729600951 452442533 740145424 101635777 618488478 463913847 697095696 212818713 826010799 481321382 263832625 47078684 9853466 666068672 840089685 424887371 449261653 181274777 851687073 631369450 699339794 958505178 542846032 344263993 421718333 218664458 937954147 674167574 437844187 106162009 254785866 377351271 767465266 931800825 570468578 841406359 44874443 926507727 361146065 339449915 113037333 591124730 399050257 541406065 10157446 166635380 385338079 59102883 132549501 763206859 482410762 176777911 710647790 591562392 331296548 779140553 477488554 322623377 525566346 131138907 371224158 316179378 160996955 511969746 282556446 596080181 964051454 924708181 328382597 856182923 47952565 517940848 868243399 436253433 824490017 307774585 663492017 813860238 342353045 125090318 454321877 142966818 606497546 189788222 214693702 326666596 693157082 380395660 269125057 276430578 974650893 480803516 869106084 185814638 357295007 330849753 256876218 240944343 807527120 260257621 755015622 630376283 19954972 45876703 258616423 302641993 432128902 322146349 394767083 477127140 719851952 213849373 921018543 910115463 213327584 796233277 809359046 918130184 293709236 725043402 525808223 327283395 972314670 281909961 585504585 632068044 660813178 998839160 582763081 29329361 314792241 487334294 79469325 83916396 423689192 322768474 534697333 998749256 397339894 713051830 782065600 390737680 112801312 453307163 104072514 129996273 48784857 17433378 678572180 384542505 299887441 54210714 998595330 888097046 372198180 388151479 271009714 943132850 959308542 81682844 672866695 950309087 733648583 747719338 924068130 736252098 405180977 743141851 825250786 160800247 350067152 97155835 600780440 19615540 489690231 284483090 227902232 836007220 96251836 82993193 356633825 63643726 328319079 118001361 175259293 94138672 15260172 640265515 568852740 909291546 735188475 673491222 368210454 253676207 762465392 152658316 309320660 526033753 564454104 44238346 673726103 87603288 329735402 347198936 536489370 393567531 693394024 708238694 961940177 148983825 640712677 757369229 968492573 260066196 135417838 121903396 781552609 992833152 207543600 542008236 800431394 977427741 966080275 170185786 736976766 511795740 24088111 271242099 634907070 484293514 215930627 808647665 186304666 635552308 207771481 280885575 739601168 283875672 704217513 291184575 656700466 471682667 155440910 621824643 624685701 359990229 219902429 202465423 642652229 727081451 465170883 930133692 409561421 531791721 676318939 983319008 597420596 934049749 181361190 565972419 996992321 236769208 915675946 326351044 39869534 495878195 634032923 996723151 486014613 84246212 886354675 469995114 437197997 152776174 428451449 638320753 574599410 363908275 467583721 261385843 631070887 204557464 274097128 461963497 932021884 117735253 563597923 125430156 52572723 527164586 204052061 470750855 192813980 985399857 522843253 52070033 456074210 510171357 706019354 834368619 261262544 355469057 81262768 10838005 862974729 381867771 594267661 975998744 521327985 157520193 532333308 575699817 614708172 680226401 563256134 490656166 720250077 704465728 651105304 703680874 98407655 979346511 376354914 19262503 741011742 297562086 299503718 646457668 711616719 888310597 404914622 154066388 72687329 717261480 391273742 84640708 558356732 655309473 808026882 867471939 735543927 655790247 156638599 881095333 529856503 853437602 213267648 570978826 794434901 545629601 933378236 812400429 832699671 823418581 958472995 696545206 704374170 367962823 2459241 452793170 489120449 10749737 469158312 939052634 503487772 862199012 458153416 979912055 989225003 125461962 368688354 426395953 990783342 84765929 639973018 337530943 994529942 331576582 947438836 855568810 560988501 520892594 146087328 896991909 364029549 275211440 932501219 435189260 214950785 256884521 819096934 287869099 771768098 801526771 327093589 238078147 306119078 269116783 924391991 623534404 551871001 560453309 189476414 769074813 205456850 115574769 187337904 664327992 744545041 21319209 827646087 661021856 320150665 334937585 360097257 233618531 518993484 763168282 6850102 24790924 97570645 923294492 957652550 151011598 454952603 13636697 644325258 406797356 902977100 124886097 943517971 778153409 639421957 17664238 119886269 339143396 815558346 806373233 131434730 241618613 473534441 152506631 346994264 107338417 613974560 563729212 296256957 50342025 384555239 669164021 883651063 527768116 200421955 795214883 69567203 91787868 261946532 546579626 590595085 675627743 223245365 513608681 217100013 831271934 306151750 725631019 353728208 632363949 114767370 727760954 850483139 17222678 123593904 201125789 814396510 947769516 757470514 418609225 917760860 338424059 549451773 496900761 99347257 835168854 867368533 745691097 90643062 499145530 329984833 422618662 746208989 178525969 923419797 28289462 107883477 402641860 615288965 666051994 208864439 348367560 474220554 619916761 239967170 341023474 607460159 363154661 430252538 784000321 424054377 242358609 713875169 977547915 73940302 579257061 177129384 460601760 527941233 349158392 192759354 26140186 16212025 875370122 312165190 105423053 553499397 306588331 73851227 273370544 509342428 295760152 738513884 945458431 468982888 33508697 983952797 14508010 517415928 90081064 713676369 603183867 698601708 324695089 545844415 123069763 201623997 193530178 27207059 176669007 613390479 826162047 356240439 401556361 94179151 170362682 998231858 417901366 183305283 596314380 115968607 734464901 565230237 338439480 448278496 475578856 417118219 157542518 73213411 991259659 464331387 591548954 148697022 389130919 55372939 379505775 41148035 531680333 497790456 868946287 820158859 613543118 72004513 219159005 210830748 329566132 60548190 948741508 946729274 473949581 716511798 742840297 362309688 552362417 921008202 2790871 601471147 35679859 169305698 471411774 926086117 966337506 888431730 614706906 404636359 452895456 212715361 455298192 886406751 341075039 382894167 161792267 635097678 715581960 809270384 598025286 340920857 55626303 146588477 870830629 258294369 498832293 15708108 671609257 737097230 865348136 64445587 993067193 43291635 955912837 630192167 125308244 884247586 879851966 439241892 893755185 928686172 709505391 290957520 344507989 815310325 452637914 191432238 752788078 769555029 886333323 88590743 686411294 296482154 888990534 170535410 419009572 238832759 108234076 627801465 984073199 476905923 958193635 55664551 556506342 488894973 963798979 248108128 307488107 806384000 618124686 777286642 617784201 58971540 921666833 109432503 336863797 26975309 141710794 81031927 543015961 82183043 590332065 92263465 216070840 872580699 630359655 128045292 836504646 694882760 981333386 638080028 461652414 157986222 718763052 358925352 252538609 460726813 379415098 294650442 905729956 779868610 46485644 179586642 865603570 747494844 202209426 978180125 881122964 602190378 232542391 58451259 840510507 601614806 667423590 447314991 456201741 306875718 552845046 408416031 770728538 395033427 747591947 883173560 110840169 946479281 174018470 47744953 78363249 807715619 689841967 730814181 15877920 520944017 930905201 725862584 497449522 177989980 382326615 729130464 185909673 184794516 24992946 596111882 300873815 322537875 219162006 173469182 67625729 61239364 450882222 173382125 174130220 205463864 57057152 65179998 679991842 119178267 32687161 571490210 253908916 313200862 862099253 681909644 900432758 695033013 893818070 885191490 542257228 627106145 373583745 753672296 939359129 152886759 152826482 194544057 174203619 841086993 289903115 486059824 861030167 102486800 846044424 959626299 948431526 905749178 714536576 243811529 716535260 562648256 417418683 909932733 445697871 746060319 157141521 384544177 739436234 339167083 137485007 634628308 47863622 398285037 446132662 172153594 934989681 882725022 641794485 391753844 311097545 72994968 379371509 813005952 755624520 727324989 951571695 796737311 414151995 145612881 166604566 613818786 950706593 973695627 435481503 786643090 867910220 575919987 797093251 557824306 34578805 87792656 127835208 594825782 192507274 500231229 455561563 336765027 454234504 380489222 937726872 825994531 725107839 492840822 936759847 358445772 526106326 466111196 404153007 233018771 486079212 532195385 396667806 21076417 387761928 908235302 857470503 872684616 4062251 598876087 41393763 289737626 355494738 280154650 423824610 24155363 530401423 533790277 257978026 36919976 476134513 646723607 313354970 654716612 561386711 773460667 120543860 4384356 126386295 452422862 131685190 248264621 826350381 772501273 440997268 811645223 790777021 107075158 660887390 943963715 828122541 105253955 12331281 282786196 470082682 717760521 642048987 773419252 844193661 121156596 732281752 180887923 477245516 90629834 909021638 464361486 895318639 410675865 167139109 60114819 362306103 998368571 586522320 777560843 982104435 864995255 623090315 396629302 465509369 741843503 850214406 329255160 232519621 5987907 769557820 847204918 505311066 888694023 973619123 114862546 657407504 312212220 50131443 197507367 72373491 372996104 507788381 765775110 632774387 720123734 356728131 713668696 48095644 692090526 514231284 677278497 104013138 623046736 358270961 621242898 919959717 111698325 95727303 647014289 788228485 192236409 669110325 865157972 209435993 354261356 63315311 707618671 183455018 793906406 775090543 40551916 542171686 685353122 953899520 45968165 176431426 245075298 180725712 901002152 974455627 615275953 758632080 153477104 174699554 126098506 12693265 541769854 112113492 921771957 875114143 434893948 739178544 509692514 551324209 628973098 328624531 531193139 486917639 227862579 277643734 445439633 602230243 167468889 633288697 900961693 358172906 858804076 625147114 101863199 604692577 415993119 580282827 716895075 752531569 403725280 635726787 146095325 100835631 931541286 694981306 235442489 506325409 673595977 102280393 167172384 772251716 169465721 777035001 845989222 496715891 419600564 607561095 788336531 709785039 983617014 584478125 141047362 120956793 442103240 518276078 27935507 763072848 595889840 482171371 628105470 406333404 340712971 748871879 813686873 304063655 361332454 713475696 637931124 982002270 372383854 162293657 229362676 961871267 692951464 964718152 488244334 847994858 260468373 744930473 642193547 171841984 310428819 855220000 237369394 231840989 31667463 352440428 904447102 783790486 633739391 520539199 598076069 560464088 64302685 467265356 920540383 60070974 60718738 625490486 605296034 105137701 865729208 259968007 86798865 654837241 686432299 279709020 814562251 126458052 859396536 679322327 54931468 516030218 660416978 617151193 701721191 94687123 726958686 213118809 636285101 67293978 597376228 925537469 745013306 531011141 913566812 786847467 238140896 364867727 242889344 717085015 728796938 216753805 293598333 351664424 125735553 247017498 245930529 103811430 404651040 520968333 283213232 757431538 60334619 798801576 159967312 634101527 614398928 630649374 551558863 263367448 37020701 360379225 461716461 317928868 418468008 15972592 433130597 482168524 518155619 919098646 496541250 775313643 527486816 978942798 774524099 812304189 572383956 341991791 844444631 987471871 782648831 144955393 30886545 279957969 491064271 540738129 188744014 798549171 182069424 685851259 212057591 837368468 999432247 813252065 226211445 620312549 564133291 504298637 206379460 252719704 380585240 852972601 778647119 501035762 212435983 54588885 556125046 783964305 504428608 517589348 555378346 691707519 455119438 748022870 49594284 903102260 596163709 377374326 301183713 441960212 786749145 182699915 734386102 946706749 635330123 894206947 457042482 440991748 158967177 618179706 582547067 290036638 931971763 289481325 193734050 859358968 19524964 136060424 145220922 681035419 875713069 334969487 350754198 590006307 649274805 311925735 864366847 942981425 94102182 784717939 894697391 45407723 593173736 737377301 444326569 59491931 563215097 887114028 373237803 914629185 322467755 620299451 22026395 862489943 303371398 583642006 504000048 242397082 797711191 254323082 932705414 592028091 402911897 238265542 294007783 929226598 836699978 607686692 403534267 172137158 645259712 516414768 285100841 680209326 80830455 148869650 827398470 615253958 170988352 532853969 625831068 81958995 176722937 330578758 825862630 850697375 460589594 674332535 36560479 405332620 479030915 604760799 618006905 623917478 753042230 634285674 84635082 462620779 232345257 843147991 712956628 560065894 101827160 624679759 234472421 634664606 49347859 738662601 4311814 499496303 121179503 37308994 445383445 467414239 749071473 659839388 450275387 791319506 996300676 17525170 17445052 672399663 298146880 612434763 814040826 679512623 170456896 780163539 74540789 360525752 352172980 572112418 123749734 933734951 874906271 676257850 511362553 962420682 159569569 730769014 43775814 939886344 310088725 717993435 965694256 893254873 521476961 495491619 491588283 201472637 117986310 223372254 13711939 213395564 764822363 766424441 318629099 425091378 820992290 938059996 688715856 746113577 44697980 864441640 986202496 334614456 116974334 86175591 59489763 528289731 158297563 910586319 325595495 631289429 350917962 785692009 208564254 736643170 622524603 327199740 158415220 913549718 855784648 298247200 844557898 769381608 793132544 600090311 407764726 22520639 836879212 327493347 96491965 151968203 39124281 317050960 768719722 242374496 926928566 828771833 871709354 559887051 107429286 765463782 958838732 12934984 21522052 160329330 498783763 924834765 419874210 512920214 348204430 278139260 78453604 865753311 688540398 605182983 917176788 369940062 874573207 687536047 493080282 627425792 214005810 678178183 608744511 668377165 454640932 575584995 508298869 731977127 485648858 403922737 50188250 920555362 87167360 367953121 966404401 68879975 857393624 790508729 374634086 479197956 620542411 731619376 473034995 673913060 233051469 33360294 764071187 910484328 338876582 820768154 141121089 541405280 138802613 79459359 932775573 544575515 102731880 920737197 357424764 554690777 505821786 657424803 379921386 456716146 39998632 425794498 649372218 455864156 87422129 923823444 228510850 411199941 558505208 654878164 987186884 591994314 967861745 457168637 723182469 602366243 720516007 586741643 253426794 536655964 372417411 786637320 28176162 888312970 15144779 685184969 912740173 600448477 156458312 967603713 466277823 578134684 644888410 746792906 707837312 497170841 290238751 7114248 676233342 745826512 1763197 429121353 961078747 60953661 965849263 204583804 478240794 642880146 295390804 41667420 540796328 422673854 661666290 632203525 585300487 101092947 861222205 247899824 159914981 516699791 197174891 823939773 855742891 688108959 222738598 326609403 509513275 744194914 386641147 700258275 159654132 248375339 325266666 482132250 504445406 870741943 488489810 68715469 386343763 62294937 785980684 188378576 121903895 611092349 954697660 944003778 614403284 879763833 775078713 199994642 257086238 910422960 58002578 443708670 467913611 845110386 973860786 616160956 449710771 154300019 324531789 697884550 431191838 126781025 958483666 692338345 48267458 380779930 928951959 796234274 88824669 302730851 866258411 550520549 446699319 124424961 288519981 667987137 465509883 853713646 779708399 86153238 688453230 286964662 268841383 544399134 823739698 913103785 693267093 252052135 962281526 183144913 177076816 443408672 610070999 361915141 245249433 423826677 469121649 380258334 632501349 675868590 32261661 985146224 917341064 751585370 969739039 7389899 284882333 890427656 512536730 803857153 208262875 365225537 76670152 375144234 742300361 685523300 646418751 813993261 599283843 656922223 690235598 119050245 769157163 780827264 280006039 939272882 1840728 661775093 440040278 638676399 296210030 47264134 930718102 664940599 510927242 629706454 67900513 283615819 914834022 273778916 986459446 677891692 676466772 411680676 596138560 906783431 576702641 62451799 416093103 572573635 465521863 911310468 644821807 806513261 499824533 747973869 355079370 6243373 161562667 961402543 635789595 893956826 984476785 52290504 158446036 203146214 891007649 62155320 297146121 33482879 672671856 459913673 128192469 678669973 230398213 975281588 332945783 768498928 966673645 536102744 124277790 460343405 545893290 418605060 79404128 546454968 691609954 43324017 570739260 878107411 202456488 149670339 105320112 480930507 242017674 639423682 434302718 569859267 538434515 345111696 859663855 13610181 234891744 750027040 155072741 439517946 964503151 220152723 616170180 275990676 442896412 700041665 964087371 363412888 807168975 404238507 286680099 337639993 574654188 473651718 282153666 725698813 324283459 297763018 240782655 662085721 889723300 818281886 194929621 206885650 994411483 273071989 500484756 221189305 999376089 6268030 862266465 144637767 202599748 329685296 558161035 923094760 177439244 994861646 791583448 105675022 353320525 850635162 301505535 302642041 350177495 783282523 896835451 547090983 553583944 319379105 867948755 409230322 579611338 890339964 930133116 280706312 945671080 817535526 310355731 861427968 174865523 525803957 366128504 902704440 253384073 608558290 549139655 872071895 643833982 989423407 164072823 457123433 570641938 795282438 830780707 135535252 700172604 742575196 313919131 74089142 227884690 262726002 551856519 950348624 547888745 407339085 237086522 912919236 745894840 840480547 405846600 23056157 902805947 373202848 399497780 740768923 885679477 66271624 87341731 825113556 272477192 177681524 35071845 293542573 231748926 40896583 888089771 816198746 499573961 314607150 151890069 217006408 102241688 149837348 668901807 104137267 910713760 150028279 468013987 61730808 194424796 234159703 47978715 534372477 966629969 533662052 717005899 830059750 856635550 517104016 970451499 860201039 863174001 4101153 106687244 311803280 73719280 347655678 452171800 398277529 182685896 295213472 742586800 394109305 221763257 182426261 397789405 924147909 704420492 60831283 710368584 950036451 926625143 561160063 833826495 523461050 138859638 429620833 115099344 864177194 509725905 308809160 844942119 210919533 415307246 983253129 332283371 846324813 825826818 841525331 775930209 493925534 482321261 380691905 147591438 180729543 511202442 958682607 777129808 477450987 325714135 486766633 53484153 425896931 387205803 313707038 125040320 470019767 28139945 158876908 280326695 791799020 238338394 753094270 569329825 390303400 648455630 177979695 907251690 166206300 742497771 76830248 830788792 689090956 919342267 252010119 834935892 620349904 275048742 482953555 824798209 663331391 902906841 632560157 429254789 671850103 747053229 323986723 74225403 178421457 56682438 436204525 663434695 664394165 489732733 922138586 764391613 362561496 344370961 865228014 851495537 167909318 239538806 873183587 52246418 675474633 968057233 449952571 491122220 984955771 797330609 970080688 266285410 441983722 115867394 711584273 521884982 749878983 898032932 855742121 832723421 637495223 496678563 572680596 798051832 591563529 872337820 94993829 297448537 130305445 143844614 299996650 191208186 65900733 849066301 935147477 261957679 598734910 475532987 331804718 262809614 588586936 567648730 186706495 378337464 32694042 217401536 852193929 894267546 999313070 213820649 72935516 15610729 102470438 694627898 926204589 688279862 220098018 459098002 461145701 637971284 744789378 313336019 992947837 572668220 644070510 886981125 507681326 817559040 981619023 446610801 717922860 662781815 592188396 763494970 642817121 212776557 556591459 118479492 423554041 107348724 238266405 212786295 224394670 21299968 860049098 598171416 833489403 140677405 339272859 332426874 568922238 688420497 168755665 976788462 951253939 812213760 706167956 303452279 599807135 103499679 187770147 980504566 401299987 390642759 959109411 120852952 999351697 911859991 884494677 28521309 677991934 411557549 35739968 779875731 681235466 994761462 131917233 360271988 573096145 403975025 9262905 137068930 879234376 262889897 994537101 120374314 401614843 956048902 229288921 984848860 999509572 216052770 725460438 830697940 473705773 300046634 790574859 265064846 541938536 532972874 715765565 617430703 81642114 538793845 983615276 62973856 630527406 284959732 493582497 44860302 703293673 681679457 476460594 199156721 114474934 266149849 592842346 666391548 836032359 892042135 702922971 518685852 677404092 760152964 538350217 196412296 563559648 39652581 829593333 493103131 890875399 712167409 942398359 590290785 748024995 859221174 174439361 240446066 548441512 358667428 329916274 631099629 872592258 841293873 893961703 921869929 351756816 621836230 640353758 914584914 307064808 571703197 567512560 548738089 920914315 62464238 674959650 921546951 663533728 816101178 942529522 438299592 132350060 393388914 919069550 175333242 690998512 263070179 414623792 227434482 700562598 444333693 22830215 480423163 728532344 546151870 243236945 991098603 793873924 329290901 461397754 767685758 737539730 959695629 958855402 614261102 884286636 640152675 192214596 136795660 682159857 335583979 417610708 305965079 389803660 466013622 306964732 609434104 853685577 845171793 927139252 945870308 398561905 531826464 37085479 344301996 225166999 278346758 201786670 893697856 38673352 358386892 233605997 226440772 933741770 168675094 995616818 450125811 464011423 809584173 568914631 785129948 79366649 595715299 924264679 485389655 143035071 896710680 653271965 115727956 390564279 257167484 260598919 435673554 630790287 736969797 960151042 812069161 281752439 91332213 649133147 267047100 614095341 129714910 407869032 74147220 104659834 829283053 110694421 38071784 119021404 621343442 466782044 5584762 253536792 247607559 146689399 276419664 281060674 786955434 248997333 29285598 976822251 296857281 749403966 345639822 846218374 791445778 427919469 943443503 500897024 458497192 530192198 310427098 995717365 999778645 452410625 972019199 905440513 853569375 9707465 786750381 811100480 783164270 289485369 683219161 228032766 939041800 730822513 737743886 557989951 459929825 746481498 873988955 35503817 392232675 289766612 98186429 477559684 825535165 168601122 402393808 801284452 449391181 20871451 414883475 435583526 637412126 857765166 107038429 864896731 146267160 343583430 329921191 822184906 506043985 834733496 268334126 287241542 399240726 245341498 418943024 796113825 974618163 957127686 803641131 952843754 715566974 921563019 45624848 508599471 262645758 132522945 538028669 434833054 552844586 809299736 101213193 494212543 854711726 930991580 755067487 116348042 842976558 277484760 252930478 204950333 787623998 839246951 559207636 972017033 526158650 388629628 636181888 937055028 888842254 408286837 282546994 444060500 584060593 469391571 225218296 198832808 284682074 782429102 956298112 384864795 875241225 495976698 492779558 233167482 581545283 185618693 586333591 765927376 684099849 682114626 333699806 338672251 670149784 775147296 51471762 549645948 560460998 738176881 79612388 110664678 637685825 496037925 267509139 444719796 100177315 433695629 844506396 689894441 868814442 73957962 934720090 57542007 796403539 770538568 8736099 60528622 618548484 571945110 392466387 206038034 752728249 941780462 20387551 265795365 115399267 512696659 632061414 561403355 423177569 554623906 121176923 399433546 515926117 453544043 165608553 192368650 710213368 925455272 535648656 972414566 249749540 188401095 717102205 258677513 587435926 785480051 356178469 594720526 312058971 101539621 764215282 477162843 138368072 946591171 687985165 901551923 37739687 80733128 747833716 917753299 119698551 903284102 247762555 1829456 650096137 463374339 955631089 507416337 527258427 484735581 546527056 173306414 391075153 664431259 257187069 933075203 191672076 735946437 380424881 343248325 763739530 370571153 573675148 809473294 79051477 121955397 811472991 140741054 31540903 754336972 72011978 111390573 209269691 815119457 60443651 900884784 677239539 633539220 59623114 697475592 650058572 58732772 652899821 420962899 487338930 296079996 170073839 686670872 334033799 26286618 174144591 994218248 104800815 504343342 875880570 883232770 850497240 940759499 686991492 920604314 496713465 99586746 215885971 648936372 315042418 296536213 548033599 69944473 371603870 880184153 668475605 251801147 662461642 384366780 839950460 313526704 116085255 133855874 33195672 343437602 864120863 697325152 899107337 469535706 164990936 229763352 561888945 788401414 199633714 284114175 823490648 734803502 302209199 800530214 782186631 695451415 300334810 991684202 629649506 335441793 11789014 242306858 640816502 599500658 312250274 449158245 951702236 11413193 175543325 67033083 283218754 212681529 235322297 885956478 651366093 281173016 622365915 773465536 566136784 138698531 172082420 568759910 515987147 276110797 529668426 203844641 854338099 28043949 469665118 698889542 683780933 749653289 974825143 13569242 614268652 913461098 116079692 150653105 27969600 893080639 198805420 400112205 816769417 213534399 397024983 636761705 884244694 737191120 302252253 138599945 853617552 385841450 516652830 241684096 788101113 276314493 551764589 829443356 571701069 13665784 709750491 10688346 801219171 777517553 850651349 531739289 255424382 893610979 138708172 682354152 857387228 512010853 405102143 346288055 122238773 663159769 183450503 167571870 268866053 591967153 932467442 518169536 945551503 221194086 416578914 487671051 185746691 6606062 749738710 49286911 985491246 439973321 230708543 224836402 793065809 113887796 648424307 93952602 804242817 6795721 103412776 882398664 246717087 835777105 837450183 540521470 711285898 885919799 616280649 108115378 739219375 11535350 899010064 732075398 388433508 739794088 204369069 392385829 837994761 200243374 396392241 199017203 392762096 732337321 574443213 277069750 265643575 643260529 281520532 823437484 660146252 906707383 427183709 905947200 396214591 552391087 347226370 687381251 12636524 707117192 919482814 124692215 72591258 174760776 498344578 41280407 856808907 882745375 536039739 759075065 386010465 830569035 176768661 787526221 594519317 459440844 853702421 540259196 610184993 529192440 821679419 725901623 939750025 830500138 757322305 890336538 472669434 15468599 773557072 78242953 677534440 640079243 841222687 426829496 559627045 763328497 497884957 277493612 153696445 428546401 31670745 129349278 402518036 511400963 723008380 195842083 414974800 722107227 404264248 49963019 710504697 4453112 7136847 500504388 463130256 460106357 648980555 868694576 755071781 860161810 986727863 905688072 483266369 251494524 650070206 541594729 542197320 174946043 689445334 280872568 741717969 681455019 109899000 338718169 895260566 431248774 55602680 36530276 711113795 769534503 258392903 265089713 721182978 787729717 915588980 268224447 63731923 396106869 563348609 922756883 427360801 97347971 788534471 962698078 628858203 364238401 742356816 129887918 693463510 917506489 844407790 37886961 350443166 964037594 951078476 123571959 538175300 300097170 182770098 898626841 292696577 608557813 449181659 781228990 609184595 261737639 92653147 361505687 281630520 111300112 39958744 784910682 485420252 469450734 504423382 239316901 966116017 198732084 285342517 118890404 507627415 910380878 264323769 241265128 904873367 297556150 390268996 231891212 552900342 609836048 147671153 660764969 597961874 869714471 951704531 107394090 406980414 765040302 411880817 858583520 857548320 609261585 487552771 934628853 874228506 640272224 904243609 507438521 823027791 880798695 290774307 201390150 673724915 681289969 102933436 433191385 93244243 790982804 229817369 434307950 324369501 186408885 469376724 333392672 646750325 106043410 510247446 857063271 498968101 834551840 25134441 382106658 672043189 333350192 125905328 834373513 340191686 450342078 356934728 755667814 813336426 848689013 619377306 31160427 764286443 242299610 896626673 525011314 939659472 734142036 720690330 285813200 66886851 568763386 66047241 141599004 719038321 253978669 472353099 17213453 80514778 917123915 266571468 876367145 971780675 582522755 209048894 135321717 335148246 207522327 348952600 978713629 59023737 884386412 124061776 129417576 535068345 269145012 492460123 296420756 93306502 18918599 2957212 879561273 846081315 382953870 455223863 642631313 389246606 689527436 933894056 103545314 815510345 452226361 906401788 399938398 910768368 782053173 896082449 632080335 289149651 257620354 958737162 402105610 229991371 462873115 16479890 183688728 597284583 883963515 155455376 34416991 546017078 837658156 983537499 744766908 403347028 667336361 578306440 276372916 580424283 793728963 473949127 965949990 698687497 936260196 675739395 784476090 245108066 93520043 569013158 206065642 316318399 535468923 553903927 439630287 269785197 27989479 210979857 116804564 763049283 601247612 478856782 882805247 276572639 951638690 743876817 816571151 415539854 555752536 964615064 28218670 214004991 175439484 421414000 562800626 794461094 866084800 9967903 510750937 455905751 565625142 102570800 20399713 306138711 184555099 826211135 218677588 504303128 840071427 992486977 346240650 3117878 439090258 550452040 282199575 174248814 942834002 816165641 382828957 512013020 779583556 281384578 640811848 551201281 407833522 321507167 504237689 861442971 617846782 478142061 735580059 681879736 17471121 211567769 22986523 987640745 885932610 728732450 182426096 873101322 796080607 188384560 513956944 946166931 73682639 457704177 818921106 720037746 871305537 714516667 560425318 864690408 496705818 299327826 738085468 18648947 603506154 25647794 883821895 359864747 216477637 214920486 238334351 686461547 943807876 28513412 973516516 463258969 404466019 435250169 518725989 540098179 777628011 714612429 414533608 167664372 950580559 749744902 269460472 599804749 685893242 434857347 231946487 876711696 499083336 361668419 710506735 422526676 204339383 570846433 897168785 973793622 854160946 728119548 693472506 427722551 490568118 509072746 884607434 447362058 158326357 13529746 751415199 49302901 178138466 896457972 375765814 232770376 1012593 325318703 91907100 575356188 718632483 974981664 168177694 391897160 691264412 756760033 959570750 461950506 60031510 257731817 438411279 324980915 690423798 758320861 205309088 480936377 235519810 472427602 407100695 549863771 925443662 978308090 580328408 952055884 856367308 51909538 870916742 658054574 937803667 233991914 301294173 628112914 390419917 651404524 439095132 547106565 878933294 631114877 412408788 185908169 203690272 673501315 293652335 813894231 93172370 780871664 995897296 905483251 835986341 727489614 318633616 750285414 91476110 943293148 483092145 838410290 383892192 592877754 274047979 90781425 85882571 179150382 224981630 266292299 605901758 166980861 986716484 829051110 734330071 71539252 273053489 535222475 347172457 894795555 481292531 968375340 152899036 417364191 228138510 379980428 769838917 859859131 106904769 311533940 472571393 955952456 976580455 666982291 689606743 873205730 201270645 476243385 875826690 132262026 667993208 34954641 243439204 501130882 648136377 88539274 723428368 229653740 501774593 763271851 553124253 742486718 883087544 487142818 954024464 682483055 954386215 920907771 520049311 279073829 902121727 848067667 653571837 186526726 698419621 380526784 339677906 879206334 352162910 235161832 358163375 214293776 226558835 81884007 316140721 554357792 255927291 536205426 712967849 832678963 181395384 909957852 901486031 631279817 559879306 799327286 4792193 684143321 748828283 965994860 910934843 868548400 301148320 700037537 586734933 436510104 438917973 106663063 360689312 54246106 376800475 214274085 252668862 329869380 803887013 954096932 938098160 798891248 860920357 945081847 875623132 943854138 418572472 368044407 335866566 696360929 825933031 788513731 840371660 96809450 305032418 565264204 190189314 387922868 925106864 845674901 421520818 880207195 28974696 504310084 671528025 998996072 712766367 841957242 744768557 961934925 767748343 116666879 730899254 993068349 750111141 51138900 673626665 935911680 821608165 186425797 106447112 526949170 260157243 338768412 483640730 135443376 385604976 709056564 562753991 836609585 269386688 553508696 743124094 521388024 892699429 885404482 794480018 453102246 571403077 474437315 841270043 993540078 377342801 632961770 666440792 874528629 157807774 568297739 622330894 97732799 737786888 156636896 62747744 417483920 214542403 818963079 846005323 825965279 133900747 334006701 745028686 448549906 117422130 576971161 949686108 789632064 708216165 835601761 536816272 228551298 791477367 273596977 637191065 124771500 47574640 925622808 965537670 696087274 759308016 716671985 517840375 169571084 467873826 39540371 725867378 751973144 898029978 540751710 498012049 514486802 745370588 506971921 145599540 363164539 11079556 607633999 71415715 530580202 345960713 233725758 185155250 526195259 238367908 547676394 326522729 760939757 211255686 812642637 189559210 530164758 800509085 664041416 72006404 958808107 316545678 915385259 429171999 365352876 818876628 187323929 694301641 26002710 568520751 537727708 305352382 631263037 756950338 281326566 488880444 300442309 455919918 284654924 92411854 303885611 838992061 757358861 453011708 474449512 906061020 726225403 844955403 41538848 494147412 555688207 315486963 718089179 321072292 458487976 883701135 770347056 272180057 828887309 80730964 140633900 23289006 750417530 366862463 305638425 472740887 373368243 3930446 794803935 145623743 566678911 977980409 556600879 820230827 129367841 625673701 839796763 973990497 419875713 363166255 640428324 95895533 174449289 452239402 852841157 844900677 24356466 809851549 128954503 359425395 820306246 944117502 291020135 549852361 707780450 430120909 158258696 166369932 802369229 672976881 682048605 250081835 761122820 235138162 749588855 326310924 787568957 119863024 810893977 695003564 710678203 423181335 508097439 631189139 634560334 292617972 348802655 251254656 740584390 488070146 151237847 856801471 670867008 752203285 902600195 428231138 29106658 961558810 853957018 514910124 31120217 452712272 325043944 831974952 898893106 882362445 237738059 418063183 570056136 928061376 512869382 376317827 667499363 854703661 798064924 494605606 665071722 259875115 568618495 343378234 658208117 411467740 903432702 883056144 89331875 68248567 669530250 325105965 690391417 35503639 379953569 588093040 725462104 559119819 286057017 136050654 750863069 560837211 809354729 897637778 90850662 185461743 839224063 606057274 470752245 360098307 215042922 445451369 269550084 704607512 2579938 163484669 995772249 350648591 500764240 10954864 754940468 340367683 321956060 410412484 77821353 449424765 691305618 408898788 284217046 300454793 545639080 989282359 272925901 719611309 367311041 122143596 572352259 775114597 78322875 689710370 92158123 287517104 891758716 514687449 314667897 809592020 626292683 548544585 269921046 763264691 275958306 315075355 797743155 612816887 197217199 298851619 67146765 927666546 410890493 797867255 653038229 927485363 544982840 335079226 604728943 493505463 677703365 536478100 37200071 598754554 814303943 906163164 318821923 891738877 315345412 273006346 575535631 197618932 800631380 542730099 283625389 127040502 784080559 112645015 849805085 624147732 828287967 184666291 578807232 350888420 605972686 72603437 763538553 479654879 931709096 770829115 561963556 282407724 335412190 224858803 896628328 545238334 47884887 555895752 546464776 72240513 287710508 196381115 115030154 499988962 108855015 679872741 780884703 836053531 296514598 622943691 384207131 955684339 937641197 383535274 244418428 278609728 886512473 455821068 843003488 542424948 177688841 886752205 171277697 970645814 670023478 874684168 610487226 445084926 774462091 336929210 898910085 444190895 696208602 249198277 685109925 614516529 589320171 844756757 152939356 560202766 604280269 447779729 269020935 835399795 459739752 315294021 64456001 455650307 924234823 202224535 798056233 285837863 172593410 903044875 329653527 170729219 657289281 471110065 630102909 117117807 829402683 954345797 885480571 283476446 615247795 77437870 760153800 648354311 255257365 464751862 19149957 955701447 272470817 64219418 567567619 86838400 9383618 454318695 319852131 660638772 332530667 915362721 63784140 684015924 150543382 479967510 869408519 578025907 787905618 98859717 104202751 465891103 582528263 358432521 299840001 380657431 550068391 251363965 512389071 936293298 428965843 717388513 623488678 10622212 510425747 791881870 329468088 519466279 124319550 846437061 765642331 650601983 706286386 463211880 344935242 781145940 516920720 433730232 55993567 272460207 519347300 791669281 500145706 589981762 94332593 506273823 467868692 514714131 602712939 476567785 226197749 115459130 415175416 568390023 151790129 46661336 755916929 264904596 51435018 971538130 792633129 375032211 195875047 521245952 907915137 484660836 943319585 529551567 564759876 131616807 531931511 765862549 188012305 759910957 911369112 263843716 144597237 747604031 219571277 232742912 68805104 707415519 781745935 425443990 498254779 139442683 650964971 707922950 463901791 758799222 504314743 197744233 779248564 990486226 995911045 693735807 79171918 246665645 840776489 884255966 560079059 171232121 200485104 170268599 98275278 138285968 618345010 210717453 29144182 517325225 483900133 57808916 467971272 46519957 600223177 333063137 768516433 348081609 114852454 190231059 645696629 797419575 155808263 893945868 43085820 62079665 281484883 354477317 606008903 439951045 730605405 836908221 766845004 95982203 310052442 865642700 165208888 624483403 172425382 650585006 393017313 450448019 743360864 53355655 440395387 558909053 246126022 739250979 702523880 433999112 700765750 653851516 618489975 705530331 887449971 275328067 62491906 734740288 885062306 700329662 771132202 837839855 816011865 849566419 495511155 716825409 573776608 702995801 12273715 86666203 711498742 681795030 315311440 423447401 620931684 964791629 819724506 3826717 452351702 994470772 591760969 526257278 459855627 43820595 30317845 806938582 372433899 803249650 377189621 282264223 237085605 516141665 718187947 106203230 165104306 912113815 72842893 481757509 703382274 804270621 639747674 552214369 281117984 296294437 149303115 88205844 355905436 244651881 161282028 255036938 909699513 973820988 312389948 411974700 269888767 122392843 603730640 791146087 366209762 24740107 804033958 354718799 24485724 87565404 258738525 426517149 894130772 907612047 849286731 340831493 159990307 453588397 88179456 437481882 725619809 224069041 213086442 150724284 359598324 71658917 519501509 438350888 555954330 540497889 490693492 500039213 133422183 23196096 161089906 315518030 918275950 510385056 36393845 797268450 265789501 395490298 729398251 636093506 95541909 547011294 269584134 753370280 937270400 509208287 72787480 400462383 646976198 228077671 23449570 640246913 439359912 901677440 702062837 182416368 562347886 315235294 302252242 719638620 754948386 413159372 258095180 406883449 959151947 886874200 980771895 174054245 550991138 652628396 886907812 465778011 322528720 115127762 236654724 527031739 736613829 47985496 166227005 101896079 387654801 327157533 837912476 87278871 686292098 108135853 349720325 638762644 133729343 347295718 601371724 792579752 240871138 576443491 776675866 499352640 874924263 570100077 116885034 635488918 74145534 9524857 328066971 574836609 731651883 852646950 107949273 423752621 220950061 16025399 299227849 67173447 951263333 604252048 394556919 872772632 534908672 827461261 70777183 852754032 362894829 549579825 845561895 430698017 941233054 726633453 748873076 88465436 818042954 874911603 556017348 282716771 78434332 440946823 304357297 848882842 347242943 992910106 771657269 471413833 674325677 291508866 709193846 358729932 156979352 399840418 586614911 134820723 451081198 430944460 888811532 162655848 482752773 839521141 451900775 317343609 224665971 991100440 579318726 141319469 80645139 278390307 30431939 4296767 354294045 556471654 106517236 369460704 905308287 290775758 920932666 91693164 323620580 177829642 784439942 753241107 613892438 79856754 719376406 987262427 225075502 986500093 502254222 832049239 946448726 58129908 291080937 968793007 247131333 355233055 333601974 745677475 550791808 862709245 784852391 699178857 135694424 239178629 341814290 70123911 767755207 882240787 589884726 673209755 278531006 886652654 737803953 908769161 358509043 582894482 875582840 367662211 501036165 951804872 595334877 447683579 151628455 776144829 703452833 451470978 4657321 155013226 858904211 289566443 620632334 260233144 965693964 678830406 690241614 619170381 945319332 265673158 383639443 32943000 644500848 938770282 659162326 473250518 179032162 59490010 903129571 781896980 170455280 207490692 361071335 847217351 157966377 119658188 169584070 695572972 131484169 763382036 598255977 501548676 946533013 627954618 604235689 807611471 365320379 975926692 376617837 504394522 743552411 307995911 740782594 807330089 542538759 718505544 437032227 258360563 603045525 831054994 538666662 578588797 894633153 78815060 544731943 697588427 387765106 857279350 314068272 185672725 195028899 450223798 396503874 334614564 35037105 512538 48491070 718104733 150410623 570498072 944149704 652954403 894432693 214354406 515651673 844646391 775326930 347261271 538319305 127095040 588394172 732898939 896883985 391931630 495609498 880711233 741646194 316430851 929867441 822822702 96617024 758368225 891211757 583779006 386188224 103023491 373881027 704811924 943827080 660166454 366466660 82693932 354605407 415079973 560752299 636179147 410612186 785257571 31224050 368701840 938852557 678950902 667456965 275172165 727442118 737938970 607694632 870258020 561949932 120290918 277021332 996769331 331534417 844666169 477516050 865565992 471815561 588834076 554439906 267077251 23113779 509410310 637882001 79495852 616302310 258058844 672707594 748362253 579107932 514127245 142705931 243059546 398302662 832123277 387381656 111482607 407233997 789632459 106909205 346864485 111784006 580335012 971367098 506254649 789866655 703528647 542726470 910462139 121792479 955458841 471558236 567410443 611679092 700825763 518424233 677286498 830089740 376705784 495173862 456735202 527306629 911246608 562784881 884881068 393451428 477686868 990320530 787665075 122618365 569445058 54677134 623065115 777903666 375283399 380733810 952852968 795295594 35440154 931884495 950837708 115855066 390568305 63786138 647327608 982445875 455254853 729564600 50969582 98180038 358084057 816183496 746720415 420965307 751860054 880545094 221085676 68213541 30335657 145030745 594135118 127260642 242310486 611882117 574505470 359627016 541515301 914117933 978791629 266247273 244752673 27436709 975629509 401339276 337828363 477717340 263940220 930653714 275772544 425946181 650476372 177851522 352265642 951176843 987147783 378381835 753792008 705670554 868051894 734908660 91293758 126914087 682055106 430013282 623366128 785798573 65465940 306230224 150142579 318927218 306117616 804204090 503079225 947825859 999090081 824653173 466687521 381546989 44775089 151444874 375264683 816791940 194389050 484127957 559188969 85364902 612201705 493994135 638123947 303233208 460150236 955763665 478465652 214079301 450144467 297418949 235033196 198021253 650623796 835595733 71456651 959843168 908978508 88041919 880388998 424922921 202459433 119428450 123367768 463346965 249388959 490820831 667476446 303018069 154339303 162833192 145991839 880558079 768891259 603847492 448137747 173905892 790340960 563855926 171805655 170602880 217837053 810608402 787456482 226901180 145001495 23268117 58724980 854811047 986975553 676147879 465223186 474376048 374973474 296255853 368878451 265528291 893276670 256600916 816367934 905039202 724991864 292537680 316196065 643760381 155462568 467839807 842286623 2540574 881306246 141237727 187866811 341828031 77300922 856006772 680483363 290830149 31396531 973448022 230421491 422022581 213504913 967670762 422022344 239059720 273291030 413291937 891160526 784111903 360337610 317523066 816876495 937565925 912416526 709416463 226406771 859998396 813986290 328789786 575393585 226919502 257096046 720434366 130054629 646123973 923532683 23099503 35869562 369664560 832120944 419015214 82903367 776659466 754349850 879574056 350818939 733676871 358049859 886159716 932703806 260923363 759555501 135069974 158721693 943571720 540526628 81853593 509988326 659827959 472659360 468799759 265004625 159286715 17367213 38125990 896807491 564662646 619315010 325445594 942268050 736058469 140924317 538960510 776597149 163845152 468614632 980295588 400153972 372828406 275342523 918696484 712715222 242845125 80702131 981747642 790857209 931501682 254758023 652029943 354870 357279546 289573805 26759935 498436152 953109152 588525928 156743532 695582098 606904632 613228741 559385286 890230091 17717834 589174812 243556027 258492474 547635840 146123636 391493628 3239612 474114341 430788506 49047375 689200945 621504282 3432823 973885716 644443390 799804656 407845738 161523739 390251555 881274068 819291611 683310106 463969911 344430634 775684538 925246154 839373551 395293042 754399200 889223207 596605775 446273746 614715823 644296262 624982279 570790016 989794188 60446551 452052250 181576767 629023314 507346167 683644998 930308274 231323674 705982753 440517638 161915871 629677078 238833163 140006449 739989720 511932091 307311500 529119418 950209438 415165053 749259832 922002208 49427179 80078134 874294968 172194503 705568252 988804508 70640563 312897939 281710128 425873773 476816422 520792351 260592489 524303884 791411479 133284757 623543634 171458954 841548269 596037389 958653016 783263500 239997285 902402951 780929295 314366009 813343288 999938127 535553049 298072110 269734609 389161858 944845215 26667695 214891942 555714198 659549845 519959067 862381351 374949704 205861746 724776952 902003201 775461200 231806178 66780778 700003630 500915002 446329135 706789030 183555173 167657983 647833359 571787516 614180167 320454518 947612250 366512365 463350116 616864700 546235873 396811179 997775008 535073776 361275071 341464877 868299425 360199251 860148589 295923419 645043156 557435125 998673526 341739834 713581661 134322662 876195908 643329469 363754111 429974608 613999010 248666644 124969103 575470582 949625686 759162597 982857136 693072495 180607061 2173300 295885758 293952025 138971553 738813145 6377310 224377186 126199856 68658861 109645441 584021643 142171361 808660412 991076551 360970811 280955108 235015860 987680836 505279572 750184980 474068221 341991111 424483699 264715485 971409868 494708220 131253461 46021693 531176649 307445109 161509943 73579772 417405819 428599143 950687381 943365327 178299836 424113735 892442709 342726191 213248346 846397518 484599538 538563633 936824648 371721689 605314120 361459068 278163011 751578258 589350001 887829408 515908342 675719561 445124864 475303020 915469519 338683683 551232396 667198947 93478402 603000953 67147307 689262420 205904416 755114190 201973936 310299661 470885774 325378809 304479906 428816872 395755783 601770346 585066691 540708349 408862531 532499872 928272944 539196332 775728816 32552685 587497621 85386284 727932536 380240604 542967587 238288085 643313125 552504660 267831871 743070075 525004001 293893770 49014399 124736322 790836623 579882606 195943336 378965249 28066037 563976519 808753822 481941879 922189400 281821604 204592252 398616057 251395701 139451465 687635506 739333771 814437497 158116231 569788626 261688761 882057916 616165934 988749997 923532915 618372762 20744597 304581223 882300733 731360784 885815185 54408237 724761008 958419375 148738515 921634616 73447727 80198768 512599027 840900995 325767425 675106508 220166145 254195971 11876310 857766707 223374765 249273800 231342381 543390589 666150477 262717678 459255839 261486098 181929261 491568027 971762465 12098541 480446102 924914234 68759277 964978454 448731000 153020426 440949667 568425378 603774216 59132122 299002926 752680492 980813669 175180296 334948635 205169498 877526205 262188207 601190733 617545697 850186004 660338665 379128181 951164918 909133848 95978760 321435907 445755548 503436245 38217834 312886263 663463103 746657852 976819721 3826272 873454886 121284846 472467797 950878899 772539094 840681898 282956780 94807086 453562569 633951489 110408026 252910769 606951106 39721726 418840213 551844790 908842091 116342750 125734889 271047046 886416526 593243324 811678576 929960114 915653306 805681447 627896791 531409065 717367613 629145975 955349269 914651893 643236289 546371215 229459799 815452091 585636291 686909109 525693302 18031912 33516952 837621015 458347198 469039790 752409245 725285535 904742014 604501205 274500087 240094400 722453199 232341504 295900033 881188921 470258947 648061609 600451754 737424047 674437170 841387273 985920039 566007549 373965635 884204266 443748591 498775217 841458722 565142644 771598345 666138833 574542662 302291027 636052261 60038112 51279338 463637981 715245214 95227114 763869813 442998524 33096975 433245354 635036950 726746276 184476421 68436167 957120530 396374864 478560397 792509357 835290630 363044546 834430388 195638448 930709895 88883109 93779766 249126906 150318126 35027660 889249248 289145620 938578269 790456462 891155074 651428910 971999002 300413888 934199620 857556382 323615661 123017758 83519679 664973280 581318325 323145756 132745590 340571590 241269645 458641937 39680346 616295052 992980267 917617644 544029140 136203923 693385986 398541431 375089801 179203495 858978649 964180832 196901456 760815503 351849373 339145013 375362312 139172785 347795493 729028559 268434783 811420551 9619498 857512086 935457153 247217125 112308492 48835533 798024923 296403137 998359024 234596096 626035672 476899742 939186968 9642194 780766937 650510461 663833344 978913615 733238700 522999470 320789083 896346338 690297639 724886008 34499330 157806531 775337541 547818622 55093564 516909632 524183059 327712038 456891086 370280825 156504460 968536529 945105341 221759203 938525489 557103053 287396361 419132985 671377039 820663732 145887118 843953437 670894720 713216328 273872160 555906843 41743247 709118063 300079580 303737220 540611193 593933253 878264362 351069151 964664603 809409263 414238423 886332317 910115828 773037490 924702078 409850406 4804935 71471861 348234600 243492453 12116126 865377416 578914057 117315324 593860463 791187040 34386414 560894325 533571082 314732699 305272903 789490650 972119433 39377242 693183881 799120593 931604349 14323692 247703241 465074900 914450955 589398088 319197019 921586246 103696934 326874253 307914320 462363254 312228776 351034787 770135926 950408376 207651808 855537734 709449642 282113266 516093002 632979896 734225048 364477575 338345824 926190642 990600325 21841824 687704988 981115001 966832573 71283049 522847349 910855135 410586830 543928904 738389980 901442668 404981679 282701722 127376962 307255647 34367440 718990699 104400406 865451036 770418269 925719115 15640158 54919116 16385799 644841149 439563651 479400785 605316765 917744615 93747272 841005988 808986444 330436594 611563259 662856989 810063872 398540849 443901487 40975839 972203723 196633038 156485069 239052370 523731202 500434018 647224245 696289923 656223171 546237382 498342888 196139865 556753179 182995875 315093447 765693160 197053795 502589205 488481824 42765449 447295357 960771374 427147192 225332261 179864451 298539478 111726835 196122245 952251372 950753582 904585435 818518773 910798800 143799793 179362403 502199525 943152444 443309833 514039015 191298062 710667022 915318561 219550701 967399691 662679077 763717978 795765247 585332158 951204808 133923129 865330205 47635717 410470000 45927308 493390114 175833352 936438620 797717273 84805215 844088754 431598723 317800623 214522871 697165028 905164067 554511320 543734471 152328102 413612858 532646040 26534778 114984244 172347191 641954511 894422102 765258073 330470367 419428209 296936276 914045918 653156829 611061522 843700364 171967425 860734127 290447839 273893158 322836368 92833833 163889183 527512672 465075236 847389843 607539703 484083175 746141772 486648230 642088595 447746 63557867 979481566 376036911 327528484 17458729 154404226 622565906 265214564 856647221 116539508 334061082 675171663 939817338 888959425 848700514 425479033 376013815 60561302 321818363 408753532 176014347 355072242 428619668 879431263 999753869 90012645 847378572 321124048 292540717 9284234 439584722 530234559 399000884 920220316 597650984 764214322 173366884 433723229 282973717 811255030 142550173 756936335 928911089 433367464 350214711 607639876 182391181 118234514 217020149 421319270 36769842 273378604 111966990 236849438 514217730 889319450 144782947 280304138 444732809 475129506 176403332 412861496 136642987 222519385 529895355 254970203 335334910 965096255 650035179 128828419 912601585 554185159 316801021 361385125 854271323 581812690 749163319 280240328 826134213 689551837 326875324 91470762 117638671 967317081 544094363 628410436 918716668 536484717 622921568 955412164 759418553 291124505 377476832 613144476 852244485 447464988 510055311 942145413 490060025 362684545 955225262 667578405 69665908 992332135 947667506 60033520 348670899 345715999 860218900 506383200 145385745 297999182 908389664 804500151 531875700 958020495 866583143 454747106 943366604 229768855 284711444 750976010 608409391 668382976 129656510 226008638 491889774 556652697 859385768 103974412 285067093 690018114 459902669 944389942 260741381 814012574 944244279 649597552 529805973 709417018 282990134 354074768 444395699 630940307 124558605 220808512 841464137 393271415 599194773 724909214 434345492 507469503 742120295 433375494 307069730 948378121 559960784 635292760 548188239 902914180 916414759 725469467 752284843 516488995 231980057 814993662 750999813 102502107 600520067 153692105 765555309 671122840 442133032 826752108 357717043 96761570 694052719 552058611 816474731 929784748 523514579 50398233 570583427 166007042 223855207 637469150 156134814 226721534 795859482 644141929 92911939 181036818 606778589 637942546 467439936 231732997 600063233 170350672 931352729 13398485 819725091 473126885 131648438 671277876 57181004 920357874 911175758 140898256 67952072 448192033 527958726 510292303 297635068 948830222 777121138 103779302 699046968 710409641 594450173 149758650 341117583 844269122 513419200 833331097 500728232 322664231 523624747 713745742 310115943 421795200 832843621 430180363 532886648 881554454 64999641 528782671 637299377 408673649 490310720 988243054 220230253 593796046 717758449 702244420 538082559 427662020 839413369 720917136 877027839 302572159 703880091 721201661 413911088 665945530 636865276 708489002 913153629 629954299 283662694 275188721 167126967 981008285 293150868 169443452 94017834 366483788 565760340 92947536 619922607 320187710 746427654 40114586 381103388 374566044 33881518 53721013 740322024 603251709 478081535 619503400 787062856 25639228 91549050 717508953 775246350 797644198 130220186 161998098 445793022 345777491 437062524 884815502 23581921 341458800 45879443 740747182 611026042 614387573 97501945 784650890 296996258 778415034 958057256 129698871 70781553 634973533 787253118 539899097 486141608 924838078 310930372 974526841 223110778 973226005 483445276 186893369 831643532 902121811 326856027 256373939 276914017 942340231 962477040 140744714 342393185 288418268 875732068 463171772 428673723 165607195 490561936 767980288 180235712 983022218 312454142 412173010 231540833 598371466 158462536 648369079 425710473 338291016 21554092 586385689 916804461 567978043 548399475 746749915 252146974 260330002 762324641 831843034 74537138 836982499 450934693 953294798 948979761 854533655 312957850 694847339 341341946 826251407 112365827 129237511 611803660 396052747 341878076 680367509 535268705 290185178 716938443 624125768 493353052 153071817 992265165 864650154 688133200 300255526 150084873 582168963 588295250 147855366 5332877 991333478 664774197 671790601 834647695 174837803 536182253 418854885 869597303 740808964 341457648 785692410 911226862 192249662 134174054 102417826 70612182 522539286 196830809 787879642 840767937 989734918 806206515 139769560 113594358 708882747 164455088 122340827 838802940 930201597 750916356 665971035 730751714 257820744 632114657 45780297 325555010 989468187 589273959 482392965 484286639 839233518 61779792 172460586 196466044 836292930 403643003 580523483 434667905 635033344 258106803 387727460 96155614 684441614 830277810 261658683 270223037 417830729 477386639 391222751 154831212 508670609 303740231 693685832 58606140 377333583 161290481 580577922 921046901 739061889 429406868 917885850 748476514 836903569 959776850 678770430 527406615 468903272 212858557 831496488 725055997 889890965 562466164 41424607 439608617 341145696 99272169 136359204 14818330 505047005 818031986 550799926 354463154 871538017 144787201 501305647 528733828 598214840 657248650 227789756 547115061 455156970 418504915 861205540 269616786 898443895 525136909 745355824 671884080 276325217 28109147 352596172 679315468 161734823 131449380 519129632 698946119 497469848 900331828 825343750 266041272 774900484 895461078 634923246 122945358 567618934 397886601 280171917 395791654 930486590 388325137 206730260 234365434 155269085 878247338 763995407 93494310 512176126 650427515 850704937 431599139 989474362 97929837 313726256 608989063 955112393 733732355 566038608 905373565 367946511 61094001 434235771 108942989 211349581 991438402 976309677 249283964 523058758 657204704 263082793 314765386 981799639 107367674 658315691 386109976 765073963 623307300 200393773 184011378 748760003 902805394 91560010 858263425 48658166 920296477 257662855 959586009 375915506 172820921 227685591 705934147 829624320 780838339 851572739 541818475 955876753 321437251 609804229 960797084 379956497 726254739 744115360 832898965 85998579 162773888 353788702 240038780 54498229 687193482 977707829 37540029 304347479 869922325 786631928 742888048 596356784 126772975 557189903 356043141 93684546 296925472 526442756 151722790 451038667 403469058 689247487 209476349 422036784 36424113 305154093 744620533 844277486 810214236 402963306 405410981 769242509 463711342 252423922 80434535 923881380 328806849 583959329 45131436 704799574 544800299 236113258 753979040 598777208 108816155 247977186 581808919 807366674 14481339 824446877 86004392 892753429 616427731 37645963 94154157 820743805 500987512 381414293 261801548 539157766 697744760 433790530 396106757 775403669 563579317 120884942 538286231 803018214 310018075 613684692 746013827 456057685 255544658 813524404 84742004 918708830 689820989 411855746 643013072 166943787 793777656 896883669 216194378 611680478 605559469 881072732 636913994 287730475 125899147 668650057 182272574 334013296 683938950 890075229 601144603 642142901 86523115 298399660 350154502 142084931 754319287 249518849 43171053 856394856 556908582 275341423 348910100 804445142 397602083 544144202 332067111 657784137 98777240 342460677 918535047 191724241 908841045 889645659 515940172 188851456 7004614 875629020 683455682 786857765 564911065 530789266 650742302 937888328 926283017 750295717 55556804 337718352 483970673 352440652 498892591 70747824 662270131 108761106 4953242 932156505 365474982 20913915 807964692 199083148 565057694 708045495 927448034 128372944 794447690 121367986 316286831 105370376 663844908 922956682 49909782 506251484 339869427 1873294 351530673 698250913 649224918 426465825 285751378 450711504 578517556 275368855 473518301 564818136 322584734 336606768 374860074 238365643 4994261 942850178 67207274 134019483 238874048 658935116 891039934 492359803 749627583 860220100 46756066 63701068 697020955 344454499 296811086 906469844 443308678 366931580 251335561 116644687 283147668 161719340 283893908 733351914 648011818 971598007 755716306 210716254 727226766 12738008 545311298 93506936 414517836 886455396 174050904 203524601 370577206 924222872 35248270 505737338 174947537 112409478 39342653 835605121 359823012 745068686 696994387 205841809 398565281 95266758 140286641 247046913 105279402 338373280 178918319 997160219 376480608 426178912 154751301 784596798 893791769 338633623 458056228 676519395 836669158 899698276 405878406 607634339 152055686 740158324 491120287 907272453 326547167 805441198 849624557 181420290 982714785 771403983 903008217 598590739 553863613 903709902 179622758 431283125 363794720 863059698 574363297 618852529 895650667 552856361 717543404 883585419 585592165 667002500 545002910 347071125 20587909 532135030 82878433 464523719 117632561 735027122 695878370 80332155 391458975 250162973 567258952 90325801 16804180 573753239 205519006 439782801 515106327 183734802 815139193 360649524 855187881 814333628 248053068 130392844 106550172 758184041 422503418 889015521 188119013 744153550 604227625 724180443 255265638 642736742 901197833 814529569 551059258 358095860 834652044 791696718 831690825 549885767 839621498 379153856 585050179 722521636 230524415 222399665 206370052 198369856 75291706 920508747 315875268 913228071 166369444 715627753 373627293 514204674 971725055 555736406 885995790 560108671 222251658 532226291 171032554 119270079 423381843 705919420 146381912 186215806 395117159 218135309 359721935 463726606 874845181 421057863 345406954 515084365 762479188 946396366 556151217 49908484 459675233 131131075 612428925 472296588 208277034 941551728 32627573 49234558 774103293 571785 336694257 427885685 624399753 56161706 398216922 488238364 31369215 28776912 219116584 773745542 394148553 303698614 557538324 728375507 892302420 505394795 967743112 188689508 265259559 6270989 181519643 480065076 197784970 686631661 777718134 890981498 879648976 854256551 525363293 992280785 260911155 246481319 459381147 947848320 914466653 722754765 777089759 886262502 93070057 529836301 669146260 776444125 29240498 77259561 388991399 860999017 987759421 25847427 710176665 490717575 912802282 464981387 588077390 34107336 739675491 622257819 542486962 454727861 737708390 693609774 250020815 648520438 512258419 262077081 962552517 451347546 372749636 892878339 504159629 926639693 257917174 883239970 372288013 579077231 43830384 108398251 55311790 9081300 405391800 683140217 267387449 499612032 520355076 474633198 556051047 310056764 279739620 325019033 810727503 711922805 605999150 106428906 494904359 112308236 131371966 281217698 337476894 843258535 419469818 558496262 94980300 692359273 997442170 396809092 14504560 717399394 734668732 435435918 175424771 717231512 882257114 41632003 956309542 688150072 79175788 75466665 19490998 654240801 864319952 796392338 442548858 242079993 8811773 453001702 997927303 912527156 475052515 884713460 548666682 227315275 21785884 415520132 854312374 94731829 552856083 945744398 301178459 984841451 100754816 466309 206194755 786220921 758126569 409958318 550422253 266449188 139191286 822174775 739610509 742109184 879936837 300432109 142896244 806350128 931602051 326646564 431149592 333842782 59018276 904580538 382296562 910649731 949059165 242265894 60101883 959932586 54362146 459615282 437810016 527230688 375297172 829543551 676943855 920348819 742994874 58415835 293821061 273962576 95870717 104429726 729751947 48744515 104945670 192054753 551071424 313900768 216492594 596131434 909208872 666985740 822521323 95526496 88696150 146411913 424333505 85525854 26194909 687406599 995829586 233197726 882512770 198784761 563531044 386901556 593753452 630390225 987399133 39660888 217237961 309778911 890321536 423423407 574658116 315217264 224208344 490954250 343966512 728566027 863381929 824630829 920201536 464771408 146296131 458274434 554814776 94262865 167765022 753925635 593513974 940947107 380562423 177402757 195246210 114515033 248094273 896047840 70366340 741292041 642379512 280719047 576767506 499768902 102860029 807494769 835690211 656034702 202366644 645343813 15643233 251371116 844857882 723306012 213749812 543686684 839794223 93951171 623173115 605164954 118851118 750581615 439800609 126994555 88860166 871779090 415777107 405944816 677122190 482332313 321127774 361965263 962437901 946553136 539707410 166611324 783929847 169026524 88978194 419437227 475065751 737266262 247992928 591721002 435832499 669904047 357569287 298454754 710056672 764780998 631866624 147426065 985897054 233206772 221327068 856753852 505332738 968496891 159115734 274078673 302503597 928952289 801398894 653835187 839179197 67782047 676717777 678529398 450610333 816303043 945033924 74689019 889938577 763791715 672809546 620269019 381071194 59805662 249953536 967724214 518574508 625516152 210982635 340051208 175951380 967537772 435513771 388840736 456711731 347619533 388959634 624303071 6602255 846338476 84519288 809591966 231962601 672436814 861521428 482510549 935831560 804079439 561550619 374693190 814542314 328019285 73932074 831623013 228637210 688117253 224187702 791629308 271965945 421075872 998762091 766051295 38601363 150165300 993268542 901326546 726580017 454819343 129350993 886543978 841871427 863741875 935097366 326119659 976224121 67601187 924056481 395324583 962932434 889369554 567282844 606364506 678543035 509427382 742086502 483493597 608883315 838481991 284007328 59390385 240141279 330612748 850450165 46530216 644404049 880719365 595217258 833016047 691468302 707180778 801390373 623607251 1981809 137807936 364792395 777970909 658777052 428644486 774635505 730835764 860872070 624020818 986101322 385682512 51314104 172790619 10549373 253695285 316265944 453659242 309721088 263238044 754142682 761753560 766403048 510027070 892699931 384180211 212241079 65782971 151789768 327201882 855514694 231022566 336325878 999898923 86100658 624216005 240133198 394896424 988708458 240267827 136799540 278221107 136241965 949944702 635784368 53998616 73454485 864990443 840904794 769549157 744268167 6777023 764578930 114319612 13042870 781768746 439958712 351445070 601108301 51148018 155344519 550389451 802787218 552538552 526890731 565557166 762474515 88824089 910229811 948541368 657453825 237429868 520433101 884155141 522286440 115474064 83818168 109805464 491960748 446869525 655129017 193134134 870277970 185184468 398814567 467042309 891158880 60053826 696958425 350035831 613430853 223925507 601579428 376741739 303559176 83693312 757489767 247162651 575050652 860517241 171649247 934363212 614922859 548466696 671349654 361057836 188021724 348040758 427260014 942850964 517711718 835325029 87674986 268174231 409698098 182908657 800325498 121950327 888032397 347378786 762900426 242453893 352041049 442904354 751876182 11060540 414335174 902107087 178540369 17040706 152408508 211697564 981417862 898227001 95907926 930670410 219911097 200311545 76674051 125463486 272512372 993101276 958496959 17272691 342889310 955360896 977224174 669856704 710737487 36051214 724362810 570689219 555276872 877487673 876932190 241390835 843920540 503644757 70825452 543555458 921503873 119806622 440013039 254106827 7540527 486883685 61483929 481664290 780776683 184315998 97542768 371157033 397598380 981137326 784882378 589037093 518936198 784511085 367611153 219820259 56367209 704998088 972491626 833100673 552212346 367432732 503592284 388967383 742931486 588325949 74728405 312374944 412274019 844826755 238515423 183642886 721569266 991187972 880800646 560513671 956226570 652531519 449104247 301401395 996802525 64206524 250796154 258599198 922434044 624291756 468332164 823737079 313747097 961101210 556968139 656618925 842253913 75337261 381772380 181069069 940081694 842069845 695270742 5826519 332997897 94479835 100283031 115098671 556050289 388080533 373749556 631305471 376015447 66811703 164583383 707418689 734668637 915694309 211876643 26531266 571955730 38210785 428006830 647976321 206071893 452174102 749219044 537882540 280893075 860300535 672334034 104561808 955223732 765051454 708154433 772998317 238180284 847828177 197445633 484003304 813850176 621789573 599080057 478249167 991006054 108792524 854787340 495449840 55865416 531108778 328677712 817536670 865691925 797996377 448885324 648748976 988087902 192443324 234154689 613253183 288418055 249584916 152822219 805273016 202294708 11658926 292648811 686203451 497026777 342267467 37757979 41968101 337050552 578361365 326808961 558722264 834617133 781938552 453283469 678426957 466495587 846326789 340758186 605997630 139252379 419373004 257863665 797801117 407714641 299874043 590900190 240345897 416010014 225941450 566519125 288458213 206592497 86216846 238975724 536807832 333767979 950052828 155440121 542174936 398905459 184571565 570616545 89271372 641309555 817686999 659172291 188285404 391212860 868411012 954911052 167269655 699817774 902781213 456145119 769742583 808451338 538912726 784904694 556180022 358200868 755311209 531543122 358177732 525574563 600143693 857981516 420556482 537549553 617376630 767821748 466649334 276534808 69567643 970026391 967453841 490023915 501904744 20950625 911136702 521944948 717458556 226846965 329167482 637349709 536748633 190018126 717819558 853008770 879151184 811846354 270631372 719212665 474520695 986180794 331565293 878991983 581243437 929753690 471531758 303981497 286269006 791553792 525861403 200775670 681718018 688759668 797969595 521122959 446317166 629553973 549190657 767115791 571094099 968921248 780146182 670553387 82728004 207850811 542968526 524600923 366594758 504159130 706453195 474251440 745206894 178643266 797827534 529069718 669803316 122732267 950169622 395795938 976149561 533214869 186122793 221396120 156154052 866143014 834718044 70500012 609990624 355618844 646331401 169021636 223402241 172819122 865352815 638100960 17566105 689184523 410523185 248499254 731006735 900571507 555996475 301957438 271555256 309826824 238561999 616939105 674533436 266072299 339914987 540610679 49792606 730917127 432048706 441953330 841778440 956296013 236879121 976227380 910302174 23570517 9638124 655005409 293748850 538742472 207306653 329709991 895386660 341179368 159708607 769321555 102954987 396798915 485769801 522585869 906099554 835912305 196732794 817847453 869564739 427442906 434079989 163844886 248709815 489643482 919833365 559162277 271019547 610848691 42622635 336848919 230557530 28037738 529417810 870523043 598252870 195173866 892203117 584506599 311469757 780784591 94369373 588042163 644631008 918837813 542243299 20826378 628951066 666095134 138183026 885428326 593313882 157828607 335784191 698419517 521745175 824977101 748760967 507752060 415895295 974351893 859533819 642356331 778618475 242761196 608691421 786129689 35279714 329923212 567997684 291752056 305819382 798295351 888777033 895628893 249028621 504168952 606644691 775744144 345220621 398223467 25264298 573796427 637003164 808523752 187778518 645019095 890629955 164816604 433633025 74732752 162331017 231467549 635267249 35017605 263811752 489550238 23367955 66280152 152695358 269460870 924695620 845154883 209764880 239652947 644805873 69445337 655512275 79514927 560125238 170880590 629794046 20429057 70059815 361555329 616500742 668254189 636706338 577335683 586496602 111462637 242512920 174617702 701150102 493330667 649566291 950641670 561689109 141069479 154176741 500168469 837897881 439592215 142924529 711452741 757613542 435409417 776667911 238895280 62906947 66807728 809813851 498520323 372956115 734848093 443707320 361133999 267359235 71200751 71042314 659132943 370217030 307930031 467073064 302332942 304702173 481089236 134551584 848124479 855049865 164099069 401663823 77944730 11340434 65953593 566514748 66410841 621164744 576617527 47689703 92618094 936133965 504201911 996967206 996566570 571438150 477938897 365363560 504100388 348390069 291351526 600771715 821706956 830374718 433834990 525369454 145858816 60090006 170912941 803077610 464584471 263033445 771874207 58635116 248752827 909880988 450425881 28137549 482123045 418429372 887656763 619503956 715835489 969331522 465664274 795952410 924512295 12123705 244840080 490553131 720198459 172816948 369892086 862920708 463674458 131553667 490480922 223359129 7354338 973050781 96611582 468880434 885598306 549560786 96337649 447007612 429793211 259435757 411238785 605765916 254528970 619178059 548933386 605042883 443039837 286089553 67510962 482596940 341304268 828030050 127102151 807559652 582952776 638756057 719505264 179098840 38816990 642882129 426457096 882128933 789855995 318832354 415813371 407173732 487132852 98687880 883981835 751816808 60869193 433893476 347159201 300591130 197458870 359513699 723915918 46990116 644960151 691498621 347718221 126334765 130911366 804275406 177083643 564535872 635132350 56755019 195576069 394563719 294271429 453629899 154978127 78341054 545048905 599562800 658813124 265917971 444607804 536231019 298160566 269823644 420499547 591823605 454456354 186619453 981591719 630450292 317682036 812960791 96076500 734697311 172097807 871782762 990979648 609948253 927583298 697164950 4945342 574377007 281261673 925284923 554092782 171898852 374495559 451708172 112564397 174325297 544643550 970176018 874490937 291751980 457813478 164984146 347462009 135346657 877709547 76383251 270946026 621954559 448782248 955582300 636300964 631431787 597629055 729364783 746329850 366366983 95351595 781092376 918220912 852607100 511886820 896477732 279447820 313040395 239057163 174270124 857578325 864226825 316033283 344091080 996235128 289233514 11685718 213990406 922106873 397337669 16503003 1824035 955673297 648860870 407114257 169496205 186856410 545583142 557243466 813008874 484332803 286549427 862518554 836779831 819497054 125147150 217115610 717752150 338796253 149997810 518221532 442943387 655422943 920355108 240163778 630762867 981545102 261384583 601489777 301296826 338303822 462080287 457885820 715600672 223477619 137329793 775425086 860698552 161405321 133621830 50475363 176211764 972173451 669218177 122266518 776660422 215111749 848371763 2705137 974988692 333248802 33816127 750127415 122409989 146495584 326899153 242271983 134726932 900162778 773514185 333029778 571626063 805760065 258431755 189848840 874357381 879671437 49369584 978509616 102751716 223015670 587665334 91225129 177770855 517863637 917623688 560901063 995178478 640564585 32754818 435014937 365175649 854336722 342733945 716961689 402511670 993366714 699527147 121258503 612769150 653093729 518065306 116376535 316918265 248969504 504793357 802832267 77743314 28900915 783805361 267156287 406702331 838751926 109927003 228679392 388199644 611225267 944221570 950422183 566159971 192154218 95130664 367510392 805609097 665550437 747854400 392652108 373821780 677936888 850715307 120374465 124187522 107302776 658970539 490155405 563256268 556239007 765470276 350107571 374450036 851240900 753218688 559422416 584422011 464477540 913413980 852293239 728892201 182867026 948899773 862683719 306851983 486970270 901332666 889445728 743141955 413961096 528969605 712504988 889847829 241127311 890819195 158581573 696286782 571372670 817722046 913791521 728046221 757127792 384920925 853861766 760182223 616658298 752891904 712134563 647258469 321915221 540344433 728945449 90610377 11933303 114822578 725092044 563554410 801208563 584837782 599749666 383725352 477874075 127530695 225114740 54660859 652976851 37985648 195372982 543066541 511855828 329104905 825831587 343066277 295656170 839015013 654603173 119127855 859214994 345366794 198923135 270694264 276254441 890106133 184826335 752595298 515467434 593818302 171271944 549507144 155641728 466998496 994629808 196120613 279159135 707971695 374225863 228864921 898487356 280486304 448008428 414358071 199145347 140960123 795194969 131692932 192083438 821741942 468644543 114694848 960975621 782311270 571304379 280158431 529885118 201397807 814345179 750700748 851173790 746638421 834430302 437946228 550905118 962050751 644875285 156453230 521653475 808896528 934464005 640640284 224164876 911263063 469224725 344573201 868562506 813069514 863539437 589168195 365898317 140823857 478575120 811244039 507924454 490578671 212617100 194126079 849926530 453611097 909181782 214665123 823784847 725783113 467030559 553498267 459106531 963705426 113649002 328067361 610270311 332430674 845271461 212064151 675965681 230649930 535682038 687656530 296572192 80014879 877944974 841157596 880424320 354222550 391152307 119984772 500251396 307417436 422399180 379365172 506148904 959140137 513611454 201826400 794316417 367882389 780204455 545972041 916162529 282278349 647022871 787717362 395894936 98413651 496472024 469982369 273492685 463139415 371521136 615774541 39062277 66010122 718849855 388780354 40196179 592014228 617146725 389023651 840250070 162191856 504881034 105812803 248939840 804434883 134887420 342037686 680369156 676054135 263406332 266316067 718803483 752582141 743524148 73086633 111129504 57513693 354075318 319578021 865390300 77798540 300609742 989827670 666605043 587826311 555275403 902023841 109425579 934939362 406500857 176615798 516349926 752979432 371156276 989975913 595181051 562970011 587411702 509775047 175163466 504515419 495007475 765801085 439902985 201662643 405997406 601725185 872977541 201677460 243745274 121986408 671450138 975455620 568546786 313944473 887605757 487585189 736844206 161475220 156969711 956154324 363099882 252305702 794889889 355326953 436010950 588153087 673605376 235522256 806133370 978632466 379121741 56682797 445377084 901502998 238523191 341134471 411710660 467679640 814335080 774083280 291099047 530213114 9780491 280098570 473566178 740435761 27095646 627412272 199236313 3446243 175687601 889820086 415741469 105132606 629109572 330032787 164656359 204243767 594881732 332925235 548364702 125365672 332969546 918624459 407397503 76481710 733572632 834600216 702069188 907292246 297132038 50021137 115786708 128403436 998327389 739394443 249755735 605559541 388706398 182597322 535459987 212201489 766961575 786013409 336752262 781700397 136707909 693406175 949755907 163319301 57230257 678259526 1430072 624131195 926669056 178721049 714969878 136763162 192434448 922129447 909829543 924733454 503202936 476031832 587285242 868346842 666184513 974124433 280457349 673615751 468613980 487056584 573191644 369210529 174984151 444447079 719259777 383324020 660885989 741475011 271683491 880598457 377321977 601544709 856435781 432339467 933181443 92666283 632384980 654784922 670435050 712353986 863194426 522087727 905551555 698803111 921521176 758189336 607591400 950121456 230157416 830924315 235078904 733381272 622909968 561692279 828620961 511163295 918794053 749432595 394087862 113796779 373753517 458871050 337600782 47686245 546788709 970094163 590882056 179960091 994088218 372919732 220988486 347398147 15561375 44409429 349673611 428249918 232000120 726340053 843587189 915289329 738916458 369266683 236491096 609942161 961715336 838811469 170804677 652448534 596693443 83912967 37835388 190247254 623216774 737808083 236008488 541283491 826255328 523907604 253834625 444533763 284615999 755108169 307066804 392555623 862345933 408688625 424466010 579810242 586324818 593414811 222354516 918429582 723456681 573357793 75323107 101213423 379939577 826997941 956855968 566363121 383571283 295594771 20441540 893218143 316192367 219207188 443235163 465242761 629116663 49690909 124033697 354597994 557340562 309940449 828441460 700631625 948840956 943744478 303042119 887642687 432125288 4812388 687217143 397869769 757759188 658110338 260777103 940620072 460705298 954109548 20593825 824612548 448014543 869676936 879002072 912720079 518608973 53036416 419758534 495525905 390008871 211198589 174517617 309999111 404812431 67719901 611623382 809984355 863075885 791263375 139682298 514818141 136247422 951701206 847446970 465191141 509652316 84364133 470788816 388854179 293958027 569472902 291985682 558597362 755627852 68055441 861910734 898829599 799594023 405106409 666499800 736119598 69617690 548768044 76920580 965762558 335831189 835346925 645173773 574925654 254103472 238692400 538315461 809728049 802310938 117411432 61774610 241429402 793898401 129685650 758519641 125912490 562754707 628297187 410401168 673751066 842789893 912672642 356926179 605008421 165487475 1685660 795657491 249701428 81219995 85486430 554423114 392867791 380836252 780345442 957923822 682189255 453350374 788590328 46845197 955787286 98138591 346140362 420344893 197579177 440178879 610910640 18796860 581091918 160727394 176090952 186589576 241561924 231488771 679300300 254025340 154899289 298868075 891267011 378882471 545864996 53166539 602348973 89925758 602944048 45446912 143581467 876886235 659080214 531044666 72198230 175336979 637753918 876228289 116322897 566139371 670257456 209993180 363845496 476366295 967339532 861527529 999939535 685365517 904869877 18946807 256214170 587914327 159363031 504538019 781483602 657935675 289205856 930711589 45822173 245303279 814814572 208111200 158977964 262282586 158592729 563082979 988631902 329073561 283722977 148450340 243978893 546664009 87172302 519348589 152400940 512111106 242724682 699655500 463618995 964581209 335631426 596052928 23866384 912440486 959687796 93003234 26523163 679623905 776512618 159132989 956347041 757531947 537764951 251575185 438332741 493716706 397643461 644631277 906735259 798870883 585661822 722878288 322647674 394151462 301694579 665390296 701535216 623908532 177252421 608761167 611615791 912164614 40003143 5096228 184520773 903897425 546815124 716220247 716436339 369881232 31560135 17730684 190742047 743400969 714010355 181526696 901829851 976688251 105230469 99484002 724224596 678394295 127231088 650748191 725080620 938703697 711365012 223872960 947518150 502302781 984841399 120421705 492337852 968219622 784143897 750426896 238214192 239033545 254769627 893197863 272234561 848204819 172962522 169521784 828490351 417579435 348288551 939680043 444536301 283191581 687186707 600164334 230677882 693524542 40376801 344525945 942088234 289127714 247924463 357832764 578807551 556614968 999540088 289901686 914756144 45494102 759301312 485519600 354299173 436682134 231372280 336197077 649431042 39885637 109987138 593636095 490707905 20711942 866236761 6952228 605687651 917341768 14701549 256777 195384304 251931236 836841710 926430029 181278932 141681961 270654094 645725926 852789622 356912667 964792796 637667656 82297411 174794633 150349910 681379152 481924353 750139811 644152873 148744 981596672 316612816 98441608 86382571 667429816 595309375 570249676 128528253 84054677 435168007 832164214 419339993 556303842 187090628 131612145 350036438 509854333 861449455 625499130 678877098 229777720 549493712 764677950 907388195 353068718 735217229 268199287 129896524 147035428 595039588 793388995 920374710 228483515 48553344 482135944 776024880 160358799 964375135 399883028 738400731 715021677 358167995 872075701 393975768 212865345 941371673 567722276 205432166 32158977 744030794 456138579 457414677 320603487 777264535 29815610 116840346 591727582 221625235 996444324 792936399 125722281 787357645 271862166 213274027 885433614 144889639 755409313 774060165 27583273 877718880 834760873 102688342 977098015 247879224 519980446 292635429 738078233 910444716 217779089 640424871 514063514 193286608 566066910 178470753 938400602 343875989 456563339 658617450 134873010 946324763 189955773 777069061 879121057 131742917 337799238 829399148 558150490 644439941 864538806 548236184 277178970 697137793 423939271 346485420 735073383 39817112 466399785 721862234 796019799 632472460 538598747 913572130 191415810 391366374 291249820 369502687 552303155 58006047 264476122 338035604 881341024 824030691 806826501 106667746 455062094 987695127 289007411 725901472 494511700 502555273 746387550 441310013 755905931 599185412 463159868 388935836 275914091 155182323 790103535 7268395 973547705 731353884 896737796 670758567 716581505 625932739 260253479 181837294 318498398 655470304 658623076 325025572 379945114 286060224 775267485 84042056 362895121 965495809 583316225 562988068 343610221 405500972 11146697 667983843 462959408 65630368 775796378 641220809 674373612 396966959 938161222 938078850 714818076 969633334 60393137 726555193 289941664 447023605 441008724 45841662 792380914 681243610 834420857 180414266 805844908 443936480 443130567 876071594 757598925 82277414 874682412 522973793 199301851 842717733 979216390 894005606 782756831 561345132 280583182 482840226 873199375 557407338 273895601 114502621 971684193 612324309 366391849 892490104 194539464 474687312 794129246 371951029 849361860 105956873 418500448 428892780 852271380 671829980 444706793 532947354 296951301 149970513 214459552 953138630 353410329 648322591 883192258 641421135 177769321 121296482 660266905 880945731 644788022 249754274 669605598 882211367 641795591 361586305 397026672 819417508 746594494 808123631 429533865 899410382 954432499 329008356 25062011 990684372 845989053 290033041 26317654 328036086 359742108 647440777 554818780 575557033 328314205 750263698 454950811 799245268 287068409 524314116 163667373 488323603 271799072 483331219 620276842 46818033 388280581 64589218 68169652 985779995 337471493 902746011 113520183 804013570 442595647 535770036 551969860 203081991 436100191 565784276 58633398 391166019 810672757 20219662 335675611 7325585 470732852 393735093 680157214 604972127 105506852 206099349 113027368 780278396 575832641 310078074 401121832 229026732 9882616 335474786 284227168 726590824 691377087 433263013 123896375 762985364 346710570 174751688 523152933 467672620 979607118 319660148 344453543 142334994 217833607 844958433 47423226 903351964 932991196 379958853 923506697 790310547 112520487 384271367 917035766 207264725 331475800 78986908 825481394 2397585 309110712 507771176 93511750 209815393 253254051 66578508 349656915 719815443 923826900 580043467 226201728 297394185 411558685 972370797 827332395 628347011 562517419 330536584 239068264 339444466 403520680 122295524 613087099 403375801 649216169 975225905 511112037 956610492 590245728 250918239 694692208 635432447 759173678 596035832 532336072 198026412 792235860 130977050 507427408 711687680 296041336 416824279 458934023 201789899 469875869 239143325 234035739 795148343 602864934 254220465 900531318 254158505 944891467 401017913 293162009 722944945 652019737 674260639 36352703 596732449 278299434 282967350 204199043 201239497 112880801 645029774 537745078 799905557 197416136 571710534 933882933 237614849 783438936 844279208 988813577 180438584 695913521 151402063 637419963 3711606 223560470 84683647 792314217 51945173 540494946 953714287 738344762 246345900 764937026 229058005 59538713 951329352 969850238 557104405 65767237 430475863 712448542 307580552 480349153 108881812 582647299 889135055 718600206 877072528 240242418 327625323 413348780 611093768 644805651 523970407 293560737 8147000 384545438 885925396 335182968 403272552 845640902 923546181 400689317 163375855 397516219 403048063 862464301 786914632 591993616 741640705 452380860 974202958 480096761 380995630 830034066 488236606 535371609 569957713 808106897 400821459 522017251 751635749 953853369 109275230 227291796 915533863 835611964 300413803 287915066 11517851 400433447 911832861 194306585 641097092 409295752 745250637 797370664 510810887 578466481 800958336 255869581 782921017 46539116 316247033 951057483 945533661 632040195 420342243 417104490 282393687 633182010 927969142 955375549 679384527 745503729 444195054 17196989 922706969 118153814 951251990 723161485 482653386 311543821 972796261 705893056 330106992 125866820 613119494 590335139 154598172 475852648 670016256 530672703 192659732 322301069 891420792 711429795 30914106 528543120 441711357 712130067 599619346 837222908 436786553 451895445 415107460 402870697 899508564 12612710 79608872 635129951 800117257 512890696 926604246 330704845 272328051 443950002 754399779 265476458 44099340 598125136 616168981 534174966 335598654 16830509 24671412 537079153 70478634 529861723 352057154 154935142 739361843 586244874 649593854 574321099 689294551 483036579 441220767 831206429 68704147 781787833 935915198 717222550 322686399 120065263 908636091 268318799 148378918 687175434 439235497 213980390 286584611 408353295 916022824 618511029 606908195 89790344 719330745 470440295 849335507 854302796 98085701 121415396 215065358 776427504 237389661 71631856 369610025 315657736 495395931 67156342 326455209 733402081 315364800 970632333 732692748 603453921 813314621 486157679 95400888 110298778 146533793 617579649 739043567 312628850 543276900 868742840 127937162 308322459 628579710 28449026 38486054 757429800 198202781 423313212 984695510 901448417 711787678 9745018 230600694 882230568 240004913 337868285 586186093 329621260 494197341 103662259 452216436 291992990 408253842 900740673 937318782 955266418 786188770 220659997 734585729 916392647 637512958 269983903 869347666 27961888 853353997 148817056 117487544 920212690 936740891 793689539 608031553 220460996 782849019 366128604 854539649 653050248 805932380 261533649 592340125 157397547 936914075 74652167 489140847 535821282 416619049 294428013 70761316 629762917 954570580 3003173 371060190 261513929 447184323 357364155 760385723 122099784 694467431 797146464 491920754 465511903 433034696 142176495 473063461 783898800 661742458 323881632 31289131 311749711 601237201 939826184 341191356 799334092 987631024 747951874 90404426 872978967 54813741 725515968 60022826 936408373 491065897 377007014 175160714 931670177 733828169 413559423 983755123 50898537 283545034 275869358 640945583 552196501 245332787 886590193 814234077 687140392 32524536 626078537 47498156 490562679 79129565 248650501 297651748 503683624 254159825 105906500 339426075 611518680 659962607 431171659 628497254 868456489 431333135 203921664 569279374 213457846 170066756 829731616 727700878 155754909 889745251 105486612 602407156 78275632 99591416 476385336 852642591 928627487 27812685 657969807 351410164 514456135 730282250 624179967 540326786 149120118 786577282 31667651 729453075 709844496 930157983 974781851 619341676 543025264 11367570 818580804 329202922 39296482 412924720 728757800 222344560 161459388 873421315 275065077 950867976 545301405 535065470 141309316 533084370 362758705 573861551 481377847 81637682 550126980 592472791 825409386 405799706 727426415 238389182 929127904 163865426 503377532 379302833 984659107 310416065 831787731 528863326 552769346 967170684 319920365 9281362 372141726 145826943 661583713 528746266 795636750 915208444 408408936 784789683 648207165 230974828 573823759 894823032 251944352 195387315 656183666 450613814 428787572 410134867 259835628 488341867 993665769 102933842 690777977 777530269 452907405 775286991 527419423 342900474 741422080 94024333 327710327 773872435 283399688 253439967 371319554 234265568 597515147 337721698 229064456 647251105 488472541 244424453 289492490 754791962 581894719 422370608 474629870 951863173 703337920 467018484 951976627 1043299 71419632 374690959 527106568 785530130 798142877 99609372 802390052 138811420 635028753 136120074 492297847 255500260 490031629 915802915 10717219 963237225 615254738 337963592 96862490 926372665 246395768 569488692 347399811 148539030 819174820 961179183 219416444 650652068 592929180 26395060 141574985 698980432 655939064 871853758 517653390 854583642 17524776 113351113 979259015 394109399 290609225 590027228 193699232 301093976 869769159 623920342 352214080 647082126 347191347 513486684 277365328 733240842 909334559 742751 634144277 630153018 926160778 907258357 575882740 44196958 282926273 198237435 162252041 662568643 713538825 412603871 489245186 153815740 307748447 140953000 354367527 868981630 847551150 894083543 214666095 436843963 161836535 68998784 644117751 795832407 483986864 124879576 924282906 844284104 280317562 659847320 9964890 23008339 509111121 842059596 379332235 796578860 742675550 469168854 110691441 731603181 159560802 580391299 908443086 790001930 514593089 944334359 782186296 833387983 474749845 857445213 286742636 800286414 452437687 254852504 128923424 670892028 191501599 220277608 909158542 668315610 439645765 123711086 852337587 235678418 817945981 985471512 584687321 559455402 381620189 736994612 485296313 344580506 372566916 760380386 545200716 37881027 608979989 527808757 350666072 7298192 559831977 405549130 996203918 336903588 403759354 617974365 625470733 419190391 534416882 278365525 628447893 906884159 189174745 666219344 903663761 58889794 355692164 235545654 605988061 374817578 643096947 185405852 895698332 200176229 531853776 220661953 950924774 643770971 596059778 330762491 648737044 329873830 198074215 211771151 571387925 626539469 590521447 643552821 617339572 68971566 892503400 392340580 332279033 152273885 980481658 734376950 489126653 530505498 3983567 489186442 102914519 932341773 428732216 359741812 788093832 988345270 454875013 930777318 373647537 133815950 30783710 859936477 299434731 555920560 792908927 580937136 469197248 744122092 203274411 232081579 761129943 484002618 650435134 840454136 41127019 993616598 462970879 300305445 305533537 564621263 601261311 890998033 377654446 824505642 991365319 678341405 538221269 784286213 688944811 351351699 729543273 829299412 651516095 957996218 844163906 883976882 682747040 263007179 687436998 515145741 87769218 806631715 317839842 436994286 567420379 527825432 998616181 986143227 485499192 993469575 634973932 471404650 531211492 273830353 45286177 589613926 827226672 400689647 777793948 258989828 703720496 777356095 402946845 354029691 401700912 559172045 217707347 656661587 184918711 490307811 294491985 323305061 86244571 292069890 170948443 349789175 352585546 59852374 155595320 841758398 709481056 217218991 629583335 256968248 929387960 630249950 246841193 602665768 456137136 401106293 933616831 53394324 836518861 821505104 415855578 35033533 319561637 15490012 315457374 439434787 225943159 41672088 112437980 773390259 28240564 74117824 655013981 171332666 325300847 533475393 668014649 468895213 108647957 5258560 77631389 970539369 820095930 627610041 131836718 171040941 181265269 966255247 939448261 996089775 814654895 219152257 924946805 737429778 985289398 622226567 970347564 704465898 996002776 128691184 28548214 297062516 362359681 317695611 698232469 634798521 309283797 831785406 643315830 842380180 582606550 869345548 148303143 211380104 439364046 808150356 35193978 21976099 253394514 555512481 169484426 636760846 589136694 803534001 307437301 763945798 872744365 173157404 968765575 408792862 122141859 859047717 455792908 302652262 980629175 819449845 955369181 326340237 502696585 348351504 826850466 610697171 512894150 391273412 705724141 716309179 21203146 693181670 141840359 554237154 491972901 586235856 110595311 877510664 625140733 593431156 411409858 761360336 7783189 778791103 246230435 291764871 756726799 887443924 290983807 693153029 7220527 681143832 15971085 472136461 856890862 49481273 587260711 433030209 146506785 760849882 497151190 129999828 969082245 389897267 838256792 212485063 915401819 980316281 18315485 912386369 338435491 970676857 401040315 984975662 908817347 132919957 612755427 680963586 148371618 93496065 739074678 79762486 413301134 826002648 942653596 10290136 703343285 227153185 292774136 780464413 17237436 143110137 395296985 323408519 506303182 253533451 277759971 579491371 996273468 514396050 301068042 571109237 850401268 750716750 487232496 33637181 801935623 263145487 510705260 962942611 669927037 131445059 450245311 343008095 942772803 39851907 149684065 356390183 684827636 425446259 202805733 88250274 497585620 826230345 156354391 16312547 309608366 114276657 862789729 231728588 334650164 581139258 927329954 444432776 776453758 324543063 359447396 245725124 233701263 372654824 783404885 126577520 632112254 750009862 97034187 535774615 570221772 363313551 918836449 421527326 639064884 480064980 116989193 817523945 367411430 615343504 367057066 949490175 568773007 396929081 860760 781868532 967841567 737914911 909086049 486724585 390279908 374160968 723712970 817261776 265239535 871774281 711547271 737969640 683792701 75852585 799272132 857262804 916065385 848440196 557737784 577914556 245870663 535296599 940851992 628190070 700885920 671534773 390452141 987145913 918577150 641422598 378234800 985209835 306210552 580843021 8700015 479168336 978504832 87187058 939197181 793607651 173745920 931830594 413745036 276167662 525260449 877279360 746619029 841980701 410456453 911211805 143730398 565436462 882928573 184153275 85242356 868120961 19737758 632283904 836495857 853841945 723631350 223302943 9258546 219741967 549279897 188226522 613170149 400745636 674969272 928068414 100004168 596927783 723799171 830589798 101555744 827574123 911823486 950399703 7846425 460528829 627649633 218367090 4279797 85038025 941631878 610719903 664519605 188540054 829420530 987187582 404786901 304897749 859820345 842817810 394215151 310409517 924523312 602428206 102380784 95089692 973219906 759459590 197669685 45439646 619247225 685913256 697315483 516436226 377955671 802120329 917228104 839891770 493389490 576422905 518458986 265530278 971104416 582386624 433873260 240574662 840294586 906366618 813333623 730206458 441208384 77160914 696496582 907847074 578707245 95712347 111569904 795782000 967856233 111509698 550858432 722803828 283682094 421170181 910402970 366358949 266432234 660201602 465329709 548385660 18568476 515479620 74009098 357241926 636646914 836239849 438174332 927695057 476205525 252415222 895966238 189483600 725496942 345651960 643624299 956453107 554649150 691807452 557052762 744651696 270030694 890811810 292257336 377324752 265326043 805781030 44068726 140680578 878940237 536789569 444512889 559741537 484570861 319158298 646919546 599591966 994152605 833504463 748163129 465492726 144284386 344985391 545949893 244828977 874075983 674582824 397427677 913826599 92541879 995352069 491110510 929892385 214594961 759500318 944377462 486109746 772172897 39110452 356074841 424565868 234604773 458507319 310448873 22950940 447727675 878636835 960175122 431886226 694133790 949969696 285644698 326037395 735753000 196392536 166369334 471438834 646386200 513393191 233151491 12880144 667634127 660427770 700217652 10179363 418931369 604068520 654600585 648829053 100691913 323029704 725960808 290299617 841894933 528483833 227645223 438618487 563470091 453406078 797296426 727732166 408043941 158878480 531333977 2939295 791163710 376950265 681283582 255404580 494523165 873478635 215434764 217793523 779166975 258042507 98839344 585915982 281810157 114552848 620527231 824640763 778431062 292113996 855504599 850021520 426639509 309794073 386714475 192943815 552083113 502536699 530244922 633310872 901942298 38775869 96695950 544729077 340680940 687518577 753941140 143466188 401490764 397535524 36715732 759311666 210041507 901224131 234059541 314432749 252289509 931063909 559473710 112076781 999209913 892471302 70491052 176807781 305414854 470042441 373824743 782596605 466465085 611151876 976624858 695614433 279676476 942714867 847401983 13206412 955800068 616688523 493046715 805400683 155303844 99277735 803654894 866224231 755664990 47672831 317361393 581701434 754145796 660408329 127815029 33612909 597981930 354219582 284818664 952597712 617714472 454442690 230647606 297865387 947722312 897343211 725071746 210032392 203984900 42236634 40644233 124608684 56945087 381527072 817683341 256513592 742724533 866650003 65700803 553274267 15851420 142152557 850548744 991691374 153593100 753042462 633242762 52852480 449423277 868594102 492599025 663028779 990091004 402426912 39113266 74599824 363547029 151797110 758244064 444590622 440291332 275927752 924082476 993632935 26197104 535296091 104685917 1654808 78204703 641986637 138300866 15667839 738209740 429395691 439813539 515311797 766034208 120723109 135998017 420071970 414153555 101645547 227736950 899330918 565982175 85548147 978890464 499070423 653639 548414094 912234014 782946172 574564071 980720092 108196867 191887027 161391246 930338024 444136826 141598897 891350624 695165918 517442542 417640226 947791732 252123605 125468989 728658499 614941970 647880703 645116509 96000422 643138544 503578357 858074774 71946564 139690251 504146750 393928574 193569335 652194869 87192026 258597960 239852919 731595702 774274727 351696331 154878499 236889106 28467865 383377347 614857433 574670547 213898757 901563516 473217680 757452892 355404136 816745685 55370208 314537141 790679534 631599128 211467568 5841571 99010811 799189298 503483566 395766161 407107653 922130311 224434748 586061907 862085057 620122449 242917593 57136020 407073847 720837476 760822249 465039836 360171707 144349297 576932581 650765816 595660406 262296535 49010920 616661446 901772070 287079214 309676484 146510151 780698779 258553498 932786468 726293931 91077977 201675589 179550874 146526330 395211378 177032416 559271684 597285615 652244170 689763242 929887498 86170350 661432864 268568522 988707548 283337165 545762208 599423322 946549926 557645449 129410643 275104472 863142205 966279919 834399720 10081445 568961566 35226269 104178121 889729130 194473769 888322970 826915668 887192355 284065076 985124647 822898780 159036554 260464614 323492214 434440010 309741060 689080113 635672475 23503384 788529823 255888366 275951015 120750629 606954611 935760442 520719482 777718865 451927558 252878537 798050835 151615847 155131995 155391034 478552049 365292152 941140528 321848926 467274250 7991445 455102946 217886559 324956580 287206689 369296840 387731382 63329131 804344038 840089749 857651278 686649113 699021171 129958105 380260385 502046311 295536 59552216 686154619 153267242 249489947 513777099 62652044 125569615 649940802 502284815 262481112 568746580 866268648 481910397 422143701 80297951 52531016 703026237 182437838 756849702 932031664 153591672 264798146 201295318 746984603 107669030 890185698 74518359 30205144 868571110 207584860 367667514 273491045 127864968 672262484 476271771 231627452 947406675 910091450 104145746 250367713 655139358 30544752 330152318 458906123 609648878 907865761 187801198 390030710 318023445 22857273 914001696 465727364 78519791 274814860 868686495 422042862 778901679 589345967 832814909 884509174 441800615 62178476 79672842 140872879 345625095 399756210 143895818 581787140 559770490 306205288 351804549 139599178 662312881 67704463 565052532 487667295 412416808 578244005 300777984 971209934 929868771 592564393 685143652 771712192 813744764 135819941 314550552 555842450 960869843 338570109 429920572 687634091 727249147 928961150 871507615 877139683 857227806 36309196 30615886 115414365 248683662 967440505 460262687 670954470 508639740 169615327 465277496 210717057 583855187 638882365 608299213 390983272 452200098 910621940 43485323 907998975 512582165 243745514 127868795 703698242 185705120 561696377 312210418 763010241 389504224 678614978 200756666 259542358 411586430 778181438 932164681 134209207 752007084 734316859 860050323 956664341 188945111 853674253 152174125 330367514 118029262 693515279 816462520 898519814 231671685 144414815 840774501 39676680 893161985 356598757 601425841 976331934 465583357 374957424 878186474 45766993 87704828 554040110 501879869 418483154 311348231 646150260 656607300 174375933 96282035 460095075 471950677 692507032 12266178 800626509 860884509 172176228 786852563 60762609 598055756 654787653 545949907 770774314 638619877 25396338 40097323 702215506 400461253 246913213 42477081 492971808 112648991 80813760 408208259 368863452 186621998 851602145 249474703 478840159 912381279 903493517 987540435 174103987 760048722 574607607 474149771 749985733 539128298 815094224 115816117 995952094 300904741 737848049 184731570 28446968 33589899 968806277 994771864 575086991 963116491 495142360 121205863 817738850 395737964 785306055 403445937 704928569 856096586 562699383 573371665 350200083 386555553 327105011 189898370 624474979 227528491 194251622 565474597 166582698 756048667 320867907 680106370 876076833 436691811 633461272 725660333 228430379 861943185 378463864 246666761 56585345 595446227 557109766 319725303 953441903 591549045 241860294 31301981 463747535 696066695 475959095 344274166 713802442 797897768 211207502 823328693 111598223 348926114 31326501 764892954 741157688 868961157 351151289 538607741 957331511 560537334 427898738 938979121 244118413 803711738 371106204 964699517 318701718 247825793 557510084 968046240 940584194 320649254 730514260 492545438 595285621 263753374 148070957 921441423 387881206 664111125 33729895 488619371 739755519 404859650 771463875 537378903 312383742 62619706 337852619 842685770 921733152 976627880 629343811 544728603 647791392 490853337 34425934 35136275 617248570 206761478 359070317 957540133 706138603 431679167 832027345 863544467 191758646 106708761 312235421 746035786 153765349 429498775 370644987 903958037 347311882 252372776 909875300 288104347 914486809 756606812 812904253 398325971 453611313 731859468 83929965 385047441 336747517 457208266 147653734 623307651 283066553 90305905 90979737 39706106 4234457 219870725 35178834 703922932 360608656 50169043 138522243 880758354 17332752 19087332 477528178 132290814 660996117 790756000 48925711 942334857 354645022 484030953 108408288 713693665 607758885 191356120 417171032 871953267 46877055 930106763 927458656 370326523 878753005 581382498 957266466 519992735 85675326 668519049 547607457 705172932 470789817 872018283 659832052 749634527 3398358 221675043 789167297 776966014 864915147 18217487 814518178 407324132 437188297 80640276 15759564 491682786 127264840 705027861 528802470 399209038 73727728 296770855 284839911 500880921 791175439 825018809 719318855 735059947 622180018 821023478 108494909 264809260 364776922 612969130 401878062 802516798 802584833 331240628 422352807 562340841 489218285 120341933 30552910 214709858 331101259 358083403 751490749 651152571 190373211 173720501 119141514 96521350 675500960 682976137 988557417 932594561 93083227 377603904 802118827 711368244 814617095 806250171 705110241 778957081 124529437 172044904 21950047 87904732 288166589 107329853 563775704 238738765 572690827 852572803 207678217 61998433 258940026 928215457 226324745 45761914 406371003 225826481 751439279 982160702 83094948 156211461 911852616 579879894 414438641 742576000 147605831 156859226 676819599 383620765 741521952 138982818 310623775 260233838 414700965 234965004 470503327 266265898 573769451 533022460 225996727 289614486 335629117 818692669 715248063 38321819 720435047 475752625 723275076 983936406 567995706 677809606 549242689 220662588 744351586 103643566 53954316 950161908 304327149 220883321 571331904 740488044 369923136 19518608 763482495 506707227 45353854 535646915 335227307 285784869 8305475 828105573 29651890 150313526 270247935 824408207 899639660 585187748 8162132 398008606 760987022 355656224 631043922 533162200 483689497 9061277 625533790 140899336 3202877 43683417 327849177 515559427 660831462 94893264 136734650 180417276 472607679 498183032 983929132 696394713 497584665 747332859 792675520 623715905 145706306 619472370 665756723 557610107 431656691 153015806 267354086 323105435 374743642 717668793 934297858 225022031 446470545 95133781 340797361 554692560 546964882 537430134 12428818 413354101 174932556 996950095 522514595 919268460 144175709 4776897 358272477 908202554 659374963 276275177 858823769 591437753 942932553 844275766 554835114 894842640 134992247 147218926 696767122 918973376 918117510 774272854 475327998 926963369 298477924 978271138 947245535 219262108 289822240 608667445 878947927 941044176 719089253 473921339 91974605 8391138 37993422 957644149 611435429 673780066 673286595 640001095 788606180 695408263 246851234 342269869 763219902 19340260 65318174 641517786 212572024 874444623 953364932 384869061 166355245 338036840 540420703 842311019 770939300 61053027 560212283 313154913 66733812 244280890 503801835 802256154 282514549 779794558 202383274 801757961 27667778 574805572 910261194 68127489 693654859 616871 558830843 30556933 626493028 198989385 285717304 99227231 661265692 825041335 968795697 530839203 536454010 523036171 754646160 362178733 653311175 793449902 324228626 766353796 641361885 140399895 339890798 414240936 118265628 703460982 144636394 45619216 191469724 164727174 333178554 853433120 228994286 417481760 85036959 645120436 729877739 471282320 246244038 530160724 979509520 907614674 415858695 419177144 315477961 861756433 956759456 490285895 700155747 535007827 750910396 322348242 443045738 244978121 835574784 366261835 135325734 382741875 250737200 742261900 756907720 964136801 471181218 666233702 291650762 257201581 424226216 763819801 614396259 175122437 338874044 65763487 447398068 231228450 194235942 213043275 327063371 551448121 73023522 18080338 687004130 613917491 590210616 55927905 765596344 229324 768129253 779020538 851564395 736986750 306627458 847769358 244990334 614683335 88211089 9670193 166028994 881924363 211081328 496097496 262300324 540736644 843748086 22030751 356576987 981646604 320131083 564903688 642955672 515384401 160633923 300911826 801741930 328941882 521750607 857589866 631876150 108099910 209482282 129120546 874674600 282488184 596793483 934237742 174089790 782396691 443157588 684754352 699560862 837243535 36550493 264789980 66606558 677981061 336721526 374525975 628931937 107921401 505045300 280801846 31283698 958562602 476822152 486322557 765653522 37719925 907255467 341871503 325189159 531201812 383351436 713345117 972906363 338626193 450365537 735008854 745974657 268656548 761399027 291804647 917961251 978990535 84172159 518408446 635342671 555824889 356494687 416108564 932380374 841488095 929466288 46993743 367990363 984626526 470690139 200405401 416001538 877531253 974610237 642031929 46840642 817725540 552122484 740996900 213030279 107137933 526024732 242375362 240936433 80587568 88871625 179509259 733125554 496578570 92008073 776045647 604344660 206661100 905434330 959000385 792363050 418883376 293540862 351556734 944935951 974908630 313440237 582122399 539205969 845084020 271465825 566510870 461857067 479422110 533631363 199523382 254100168 645665232 631385359 203982559 981677316 221816437 947583372 977356394 701649417 805212311 614351323 17540857 502127037 276440219 762505012 198980279 583845047 202821080 790371596 755572665 853159880 717308982 648468252 326458848 4969844 626320901 412969815 84431804 86470001 972216174 437998752 16089468 889974543 328516505 902153945 33132067 215944257 612326344 853168730 238228680 16837260 539875178 629217553 827721829 452669631 205492971 740060280 584356323 34430557 290755456 483500669 307009275 81427935 994703272 704162889 315519119 364871823 286735511 255020775 159243201 955797308 787741601 365658846 136448091 307494001 321535977 470994381 49545648 792089858 76216086 42818093 464085087 425963378 192447850 449393452 423454776 564153319 456325916 713856191 196579127 696894055 238989826 213809272 727817367 193336649 941095332 456816705 768332594 141299846 653710759 646643305 110021446 522409949 104432499 874345500 316752548 444608927 211888379 171539528 555794126 998813390 135470846 860672963 973280063 256435630 278729037 143553161 787315961 696820654 608328918 58569606 215531565 742502956 618223599 815433688 673661327 360726154 75677945 908399667 604467928 400419564 535384642 931680190 273170510 437011553 637474033 179617265 214007171 105245228 72341198 445272725 54071924 872929395 55755739 419305801 624666548 308635030 942875020 987412321 857383709 356958829 266641628 867339681 945915512 173547089 534137458 656939422 209277974 42289530 861676356 805846613 29576275 804108869 316072264 753032171 814119312 822847850 469046362 87918824 568230298 384880780 257774560 525008448 289459122 118519952 683951385 438315856 634859971 777007301 277472969 635899883 350611646 394867564 931018201 703050364 263247729 517839647 229136230 229511171 277184207 926211882 204245463 92747991 782327965 794751531 9253195 659600087 356210641 298566047 704841844 388466624 914890147 841835270 820716511 486342851 684968396 30578879 423436508 989250250 749307877 66788932 227485962 791611221 195137967 107018378 834171825 830627229 622796616 460133447 794704703 987305696 582616829 609256070 431647689 423770314 719195856 927925078 389571653 901061904 92523245 554483961 842262570 202019825 923777131 20597585 655168797 827246741 545269483 43538414 189062602 443591341 36481187 513485528 731440806 212171669 645612539 144614942 139225342 140209042 612509401 738505743 611031423 259593520 819967771 680268743 197648186 126991804 527310550 913041053 523406803 118232966 425189993 944808194 939897395 107071743 334304798 116052797 564818568 284449638 761574697 63604252 86722526 164173398 792615096 741862137 307213445 362471006 371482426 43995154 98208100 590250842 69499019 28696568 673338744 746284939 749862716 816693701 32824913 26956958 583822135 340282446 497325880 356050511 435136690 154177125 54705247 981677051 282073567 949299357 524031789 966345673 593152348 671452931 978599145 659302710 555986141 692858863 318044047 965570291 514976409 935825929 594925965 754163174 510541182 569492671 452234164 455313507 810764834 788509086 223564440 442238191 133258576 685973560 2684436 117247488 296477468 914588435 667109326 762705225 227708242 839068869 220965067 804550343 376959514 501570724 956220458 187237218 865119126 311849859 152386141 98721506 85460058 594685229 173827188 155795395 686334628 875739871 291135279 355283516 813648736 757478086 157295710 778887384 459712901 930730003 827857444 495575725 998492566 471447628 166878895 75441166 711297682 893166467 675837119 23040930 937858226 509647950 554207453 613417671 388134611 91941084 596017521 543182450 927218518 606068691 950435992 159243610 642932722 871977957 633611523 52839974 79915914 935200421 256353766 524116979 728474584 579899019 811287278 66847523 801548027 774999894 175753396 642978616 725305764 8534351 251398276 679977229 458275477 264048423 307991877 608790116 252988569 615584646 260584640 10791 262931850 682668115 10985134 314701456 945291345 879421757 303633870 159080367 497243051 30623679 779386629 377821527 258126531 767246801 18396601 233923283 86853429 956686998 404430941 179029890 959019540 535727814 879093481 696810022 428053658 759603072 781903988 526935081 763819801 381689296 427162669 892244054 654361480 933802306 285726850 666417672 979199082 652234932 972196089 992727508 692217755 35767837 277738702 840927950 26799990 277918856 731398694 401267385 687259311 304138582 194219991 872899141 931365301 552544258 64177029 610033745 170684082 580424631 654738271 167133205 924240098 815983345 293229726 619974220 966820611 390005290 724614416 383888034 181337311 559256778 960063996 623390281 755699657 637908730 3470795 167008260 406770561 533272118 328987864 14927917 620901007 594029730 2297732 725965168 497049827 149068144 252954384 875027202 369524911 677910675 913900726 829382414 16558800 689410948 515578345 823713079 567298530 380643318 961788744 798277146 159242478 289400464 600333455 748516824 316026271 939194307 931814148 15728220 716376586 142623931 851124166 629887348 256115635 778876800 141923774 821540987 436558572 771122124 58289038 503565747 663192287 641798264 396950658 803855852 116872587 598236554 739914598 379554246 984624433 784175871 130707531 745497358 897048427 689740638 65221887 521515877 382163063 786876008 266465856 323313926 551864048 534027915 380670011 331541523 972541579 870290103 34292999 262055933 492625424 952968752 605301580 812756443 382462842 233499981 237936186 594905455 137237025 215838345 628998880 581264827 711089533 298593602 958582026 784217300 494192668 606385519 385656858 20490691 957157087 39778877 8888523 46657678 991809215 816408444 95601591 673230572 643748469 580304008 177151283 177396505 856050868 222064806 375701601 831823967 147031622 528838954 956003857 868538804 388716241 765799386 589568922 443096871 78175739 99941020 238480327 130686524 87553032 171274602 735525456 689666714 276222397 552373604 548568837 36404570 502569101 468743552 331776717 648681422 269968558 763434053 338390488 525772782 100540397 603709154 381794104 545007343 67773726 188645820 228873721 232146762 250900183 399006494 160441124 756435776 739973339 384927843 973568306 906170109 494355379 845921827 871965823 607777828 130679535 920976914 821685358 6894011 49147956 143712284 213858068 522306351 661866699 667063319 398404967 224884176 733291903 710715717 358330833 289984580 462890056 801020005 983541797 627146232 648397601 334003596 786246581 429089805 833262282 275863887 444241067 668925517 794238482 394334099 600768643 565834526 539501792 275232820 321720196 896222692 546022799 958341256 314359927 809629286 192813233 836367582 87949533 948916179 398607165 849684810 915636075 856596925 632953923 568350974 372915084 157483091 579378640 357648696 857113131 360573662 179706501 161981 431639658 122760714 121242551 469897997 313251458 827921722 481194939 498433027 59863340 106697033 392474194 829842117 41311221 744877805 107485318 32588720 703685666 566242612 354138578 848460638 117834341 487529398 648728995 952443476 812777557 689686223 959668463 834377984 653963474 943329642 455886380 965136077 592064346 291728767 302107790 936978657 580016902 568623948 95453551 546698223 53488170 654201993 29869920 211273752 484091204 737725955 331935539 759201084 303114858 534510040 899391654 165625865 65424165 900466472 944491066 697251665 544166657 265609996 491297561 542568351 535435364 860405941 629072822 865143988 364371823 845456758 21026645 60657000 335240181 100406244 857490939 348833558 319702501 480052432 23145787 547255901 152121408 521350792 266828505 887566900 504714321 207019443 185964274 285842423 227859986 287676458 60565640 377660442 419934391 577361677 236488097 238493185 43982161 476404654 628017656 390585624 737169411 587604610 630747083 243628835 696091327 71572350 900068277 964851507 774479943 554380452 983435140 214963046 56253303 658242717 601587957 355961281 935078176 54142683 569984549 539768880 952753125 462787554 526765701 311685886 293107607 15795202 773984387 603247293 687785206 238552663 545857832 179271248 501401667 489407665 418876854 27138559 999460372 116344087 714520236 11926246 138095419 380607468 704529241 158021148 888227680 247559684 16536169 574839259 98513940 163090940 446484646 913839259 883512015 340077779 863414057 624419935 460506170 889788381 494191160 693629144 980781230 883173389 311910861 75295641 96833770 592962122 456589903 607457881 534707926 664730510 614774588 631224451 40075701 957480415 6182032 761464727 573575056 364480829 765495124 624791907 138276037 306971742 140681648 934613574 178491707 675666823 119454037 467148896 835346063 77096846 928148365 663692772 237124884 164994908 782880325 745988969 711635333 682728873 881627134 137480853 866570703 912442321 93605535 319287782 378946798 833574708 519618519 611009107 84073514 332908968 591156712 727619894 640578030 511977757 388503901 815251003 324533725 781089652 407919645 175916600 489459549 13397199 333850496 891518552 92789635 856203253 711088200 525677541 501570808 755443 935183290 67921180 424647964 486986443 59885277 223415035 236664115 662250258 43548668 184874315 753684378 551793285 27910986 183381449 154394124 339219132 446986236 447691142 11393086 843069216 545849624 542762484 812380950 240229292 60959295 994164274 622878009 193977915 877988525 386163751 703971555 999422049 727630289 867119872 368697109 292135585 172849601 373392301 623302257 693283452 870895051 741721763 597823264 388288610 126865610 132352394 30577623 644065740 185327845 10357794 986801679 37813336 657444984 149464999 515699939 307664879 635486849 623562665 539060919 236736217 369552757 221421921 171897831 957887461 741370955 759460426 613995261 394329545 429851188 943658471 70519388 306926734 356028822 472292099 247310204 293688279 788382328 909007382 798613400 727659696 86368640 968005526 645880871 530779456 73958106 6989827 614455072 202235023 938155180 16429174 666366799 987920116 40069075 774136148 974335486 756766239 528701901 903051102 627432782 498023296 934001561 214303448 240954288 344723657 183545608 187447282 49430273 621724774 863520526 547478381 686047520 601009405 980756003 772829855 802450632 119276624 137634841 513245271 139373820 247613730 923855303 496775849 41727493 671212722 170845862 121458273 221720412 569699913 881272509 714923929 959204806 291522492 528300793 99966094 124243479 824721259 453872792 535441957 665612431 338916119 216230973 754965732 496003919 929178702 553235186 796992122 74307541 942801169 720490939 223976447 333081623 66850577 558095045 653281555 588792871 309957436 768992774 537332795 926512739 864341175 641191074 513619036 594971036 163325863 723795557 834567341 49770043 965021360 6833792 662747991 274767785 481430139 641990949 854962447 993112740 701743331 348451774 967668415 403878262 689043597 770210218 685036683 169973556 844264708 756623059 986877751 159389945 426576489 969334996 529899531 667669236 905363688 421619486 67611599 150597932 803902577 981767767 647903670 267749448 448021507 662406349 946943417 224379271 755885294 818446749 515934202 786244189 664811068 986450489 333774792 408598847 738813228 220622801 85452500 981102075 155931701 753963259 919187082 760541317 788103377 768868874 510072846 69927093 612512860 560547520 983390318 901353170 179667524 809655834 319191238 425302857 48147914 383491460 127870352 214581604 919260182 779425488 760409603 694919023 122787643 473791598 451305839 748767818 794151982 172885993 557442096 374041124 766642247 112561738 257258575 67120271 556346214 779755557 683909264 403358891 19418000 937617991 454540286 511473775 259004481 933802506 563993223 997161396 946193825 460864050 462364870 829870657 448589170 458259489 421684204 740120362 863204437 267697794 497947282 79242542 54214130 582241826 766239061 542720605 958622504 981745231 127637320 970180296 512087575 586775607 110907105 560148684 729418993 490555097 965464062 289629266 334971529 423182744 390137427 128860232 645682954 702588191 178209462 198137935 492777912 360927825 779469074 384876873 177573625 800396915 935691294 277411922 69727211 29885787 740816787 936841552 721554973 47006691 134232031 462842064 829625664 85288508 278557605 682648767 530175605 499417505 36990288 448043249 635558684 748596824 70340161 371224674 880928095 825374276 59540174 51063312 4270583 652639274 99862469 287945400 222042093 248167394 833467133 486629386 955059339 847616382 259204165 461338107 944226198 263991800 911173517 926327567 396506014 367981692 200837382 427413885 798391875 571594366 403603706 68607173 397497158 364026800 580012012 870512538 712527011 413561985 821241268 91792012 620744610 591035925 835149988 731039756 460707451 676986271 228305252 257881042 566752848 999131105 935454286 888280511 296733741 206339533 123954404 676876340 226161036 917590395 959439923 118886335 503050216 612320341 961439780 362830118 701546768 473295390 69377252 872991609 208362917 500188620 210667059 47205123 517612184 356991618 221528694 386440547 691686930 827915968 615042858 777439448 317307924 64945164 176530417 608286983 136025684 453724503 98276885 756037070 518852346 491924835 629596723 892679795 587795096 466327330 682144745 881745878 10934545 778119131 988569433 654853973 738487589 891955929 111354191 692038528 241401462 915278434 212056695 701185058 180644370 901439129 78857424 931516124 710375881 631140527 879552200 927234650 247368519 908910521 632942660 687151844 934906478 542164084 590183183 124063760 536010525 507379997 98938187 241664745 634354060 822677453 452966211 920845360 347550117 911770229 744646014 327363307 926429394 563799102 914477560 177077412 965934474 331666932 234784075 356099856 567661133 668283976 410378843 979911514 784797891 940035055 214582876 70356062 210521258 996394543 532700421 432080214 810517974 586102473 559767026 638957011 163819783 433080324 409904039 480295626 651961591 279732934 111949982 357297773 677065033 161915029 10362569 75183642 773581724 185263831 701538869 263347124 515958558 585269571 370982655 877416957 279143739 304889491 63780203 492256437 557049728 186794424 644469750 477276303 12548638 260661864 269660856 10202146 973583027 373423986 926449596 859790957 397080400 854482767 323270414 294055937 235063598 231556473 945738824 336515335 837956269 620989384 474708480 290013826 956691421 513046961 380728414 133875295 106469833 555480396 601618378 241752220 975797922 746629351 421585095 247130375 172268947 189384845 674765005 179786077 49677807 757948118 219112624 172723032 815944927 376372638 97999651 169495936 619116615 431463312 632924210 489912176 384016799 529974820 26572524 500469282 210857565 446801724 287479245 529794003 896529402 222228882 527180529 700958251 810692527 132707463 302641218 403321622 801804241 169589933 77308925 401020040 830940216 714957414 380690455 582715117 238788636 352836316 366352768 94304146 469011016 880475832 691073391 547661202 332966564 879329962 78371317 956702056 245790876 91855622 70122455 684683549 233139212 553012439 235764931 516741331 16029061 582917815 243099832 573058540 987233169 173019265 54778169 415455680 947486963 329874806 422315860 104143077 181299561 118831846 720557142 382809422 497131670 212997216 406533610 213080330 818506727 933932010 262197835 655775863 407825920 271449090 264484204 76362752 329797948 995658975 299752086 576044594 125653539 832654706 224747923 370753601 612167399 266568280 869107803 867373347 791430774 545925884 773717707 832310849 3180375 409744206 916494520 375020136 522613707 792319286 529562796 972997589 885418693 329273195 915801574 959085257 351596238 448511302 754046828 423263786 767055921 26208965 997861364 687810427 462076687 667597382 465709034 545918581 951342522 910364040 170854967 257008746 560161347 159291799 591372229 560037015 490617452 807766828 91469971 827511331 432666238 432596431 739008982 312362684 1485599 962059401 229847799 785199673 654053857 353073113 660836643 719772514 477336573 222604409 404212721 445170879 932394470 745223964 301684310 698999886 809840929 211710756 567672664 407565852 775016355 63881913 239349007 53908239 764938373 952101877 429399867 129216078 962868530 792629493 978599054 652549237 514799352 74993366 598603645 44622135 469158802 240708520 661182841 687986809 31611058 101799680 976095828 940736623 508657827 861921813 972088334 419766756 126780310 319218631 842051304 880717921 296847402 799298556 503135067 764039322 468743112 365144527 888765706 358607879 138971610 595684319 720957364 325517610 607273000 783026838 957361748 620083057 15169425 604176550 83515918 941998444 81194980 742258887 147915546 740325285 984868062 783888253 913002959 754586140 546900791 306871598 129777068 699106356 692926981 843686441 72098270 611657721 50164821 462262968 214406386 860718720 301434228 394079744 814187638 974546705 890015564 48711001 426981839 67193923 64440360 733188757 725787753 365980484 451236299 860560615 754918207 645761773 782981745 65265939 556073598 58482118 488907273 732602264 179263315 719216637 729115025 896309001 253897962 991231553 814693390 957253458 458351995 299741532 324046107 529285224 584562354 568703430 977262019 550611379 115318647 55686128 482817741 939590482 369554234 560813473 439290628 220995698 580574694 94797375 879508991 787860767 37397061 952335387 992040251 71914827 3047674 234498153 241997690 214823763 472708078 530064488 688445045 847280840 721875666 423052372 744317372 27568968 793182624 48480589 811799835 289697265 662616913 173881158 706696414 312222947 611378434 574004038 359258887 84571231 713218983 545123879 876289811 257527706 188653027 141729023 744329240 808903422 826893283 165391599 204140696 866010948 619737880 995460812 601707391 308593851 543493441 313309332 222689665 998135049 928417978 614745087 603229701 489172431 997499932 910951351 597804835 199831681 710696459 650630660 110209420 208272976 90958210 65587031 6091613 853723301 733682972 818056453 928715034 935391456 23859279 659546282 101651009 309013336 935926331 764189690 527967141 35376542 556643480 69485638 455479690 217973221 481022184 24935465 857174908 349860490 240055610 183413515 777670016 579577753 35541548 785988568 202279406 177687149 638341393 777231701 526395495 958928214 60411960 170162747 74043108 926841915 530090200 522552952 455422658 559049828 585294861 92756812 969941407 579315617 29926626 278132988 144345980 718080556 787383390 272862224 589590262 968192745 335734452 335338291 902086470 3522761 774675244 929439713 312495741 431865361 733061733 390850492 288842907 774395939 16469451 9028225 837411069 38862480 363826739 391785961 949058406 497567882 820955285 279098738 655345232 830563595 273045223 5471830 328332493 67863991 903051455 753819670 19727947 183795427 556731310 842243182 10417742 339220220 697448524 850797482 157201980 243627919 325890430 946995036 640914755 755789079 969527874 478848887 762921426 717137979 380419083 337844581 169874333 795795948 586481741 502976239 73444397 275636280 90271087 991327257 741153186 209326700 656708290 376761661 883538957 659891722 448757211 101026517 806267058 41707367 654104713 754631165 923757537 46680942 669387757 280420822 557259136 416689482 453325566 338643122 9706394 890686957 484347241 587297870 644330313 991616745 556570596 319425045 560440167 231500292 470437938 572812892 486886180 652533369 473716022 354194945 941940289 164700010 792309810 295587503 494899755 951363009 714442085 177319380 740948159 384005539 997168848 678096705 670524115 625744899 426725380 384166937 781326541 983167964 999040765 654710046 255796225 53358159 20649229 483622102 257944186 445050022 2467516 980428982 445764035 311728722 145782885 453531078 162898870 908359719 354428712 913659328 504697455 415333942 300141291 339477312 532521852 306121273 770914922 319159207 792325511 103488231 658620783 398566829 895526728 656326570 996986214 477085011 199208216 241807913 51949302 449832376 1878213 202738604 666265888 280963666 646035661 843760212 246367566 195792021 684572926 189407825 401843201 37989978 855209967 936068998 619303205 992986608 641189027 821193896 519559348 35800094 21720875 145733743 620574632 206096490 559566679 237992704 574730886 304898390 993528276 366375759 857613554 751763900 549638610 444367932 510014328 96058983 183995884 385390690 814290992 689914011 304187458 397839429 943106864 270206679 594004464 457438025 526403229 152962185 977255717 752502624 654790586 868761621 334434297 786140432 897240132 206182883 751775628 173911776 732498082 380059565 713829345 971168323 66269543 658882653 183914063 250899991 355262023 719160480 630203926 551837479 692607856 655948657 999931590 104520740 440544837 966435520 181833423 208734225 604738389 517777125 300979180 348339897 767735959 457091041 445811753 857737110 71716196 464315873 569580346 836241316 245926755 711352717 557665469 328111816 150919427 816643881 603489990 409649748 234210748 39537763 21635917 320831206 567241557 699893444 86526806 208158535 423651920 98132976 676213720 688623159 97240241 56373306 466620096 932387537 59196264 497591101 561747191 355607343 549243697 355595410 388258634 974993223 378353721 255701161 553316949 797191372 687604061 433332822 2050897 342739368 80702806 79274923 795641036 827676426 492233871 353630151 955150040 822287630 501976477 366940335 1897996 709436106 940436635 100555610 442369673 40894596 591262547 281352921 748192052 138609294 833837231 270879010 130923461 695977268 517673625 211002924 357407635 98024611 873601365 288173809 205548339 978413129 562702776 6211861 87160738 738048326 982238477 668185948 161524125 595946206 656259827 51261930 303377616 438159857 726664525 905375637 415139135 867727354 286527587 617398400 4508443 867868593 470451918 661516077 187026303 571050539 610276938 823075493 157733690 763163851 870492119 215701993 612834469 501886301 444975747 398327919 680871566 651145378 191425852 478776088 252079314 14202710 283284894 577342025 592335912 51659895 79377704 330569677 875237715 12728529 751213034 484106875 156414957 128078248 977627796 779820351 905570748 189253855 325280693 534242951 570787944 917228720 331253052 745037337 491518660 484730067 139087947 896201631 508601700 138695452 288610437 960500851 540513328 964439133 969617588 599794537 637474306 736236224 74219774 390051291 683530489 945461110 916111407 414652497 17334608 853123773 298175217 974387171 600011649 210992666 722103388 315777742 527030026 382777621 232298973 156640373 93561417 557502759 993108671 649080236 176043471 419778015 821123042 39702733 985609012 786734261 621473086 375522341 338801775 208039756 655794841 286349392 318170626 778668447 321918463 316466631 758345503 255845436 530058604 43661134 957824300 323281654 474507658 741436617 924835426 68810467 612054218 471331471 110369877 76208340 883880037 507142512 250904310 122738636 166316562 916091701 848318995 133598745 906310212 713347237 732423439 925632151 729846328 159313849 592620954 712791291 795846639 795050391 123025304 453144530 110908866 549347539 169819117 947435728 801936461 906040876 224045236 442746836 557680028 14886534 722230965 11332482 257157993 128065114 787963484 179146999 310361790 734951670 805236049 225090826 514057946 752253241 146324468 453757806 86757514 307065645 550357590 57001110 328567988 343865739 416406386 213708613 470379919 959584581 219356490 613694043 216633145 456386724 569773842 663599235 642952805 524427693 399297020 61994143 561151562 825652844 50992816 719546660 991361749 508387719 141188259 138484149 127664244 986394327 370302804 972836502 546881629 206764917 348781205 459718949 291063030 451878524 453837433 321576175 476267401 228220541 667605452 647133923 426731750 769851804 549746301 529862882 552041044 527502282 999825891 103818456 347798133 470546331 935493917 962253157 579237996 805542874 730929284 509477815 290445168 394962944 439372664 652812904 84380332 59192211 526935917 109483191 706100118 464398085 577664860 192141735 615427746 568855739 169335870 797800153 673878545 692149011 848438957 864849190 553007875 221802294 487548912 945457563 674930826 678926583 518487997 772428568 853716638 556134747 609287391 731880191 192258800 785114348 769774747 964519715 482229358 577842158 962035329 595817058 2464818 459826899 281794879 651697748 822705602 595433199 541337639 490587964 791641413 544948432 378177143 588056763 307712023 915791038 411446509 464182147 634368147 729434072 487866443 243210391 87310276 266366385 400816013 812832081 521674485 243248820 385985240 971597970 283372975 180936953 311399176 60859985 923892476 142373064 789286093 430352632 41239471 542052740 452213173 76233871 483233956 110549625 381014909 888192743 390708125 685478804 363052642 424947124 266416680 175828800 534023112 666363316 950407154 101341815 509789624 721431071 297808744 541184148 562634545 404952929 606351486 134301123 749333788 715017532 667623603 960703945 206051609 985844938 828141863 137907942 817602775 406413859 284751059 566346446 797354201 686115298 326455282 489131846 195362999 98656669 374270716 530856635 393618636 345927996 733268664 405592210 810362943 944768382 202448181 102858266 929858417 797082653 363480217 615887530 863261827 149118236 465433944 665913596 343369548 433759906 101880424 511563998 687161175 423137083 115857740 666324850 171830239 342313300 260701505 996328377 244782786 750090398 460510140 942838068 440775393 873889767 576894558 791881434 680338986 739805398 494806364 920674351 275271891 722818286 205358907 450447995 794104653 739538947 105845124 46787179 459404318 471104930 656971073 772934873 9012722 872136551 993537325 400021660 747569977 602986733 421633545 897033915 411508469 355932440 661680132 53478362 870137975 436438688 623005664 618201253 775681582 806494329 905165734 237549398 879724605 84051103 849918177 154145841 284107881 50323152 557245671 933592635 861852357 206273846 19419424 146371066 407151806 916041069 331132515 224288008 410246440 92919 266542136 352814829 981794691 782095732 218441331 185433881 477967037 85187601 17900798 979568649 60346288 878729256 652317564 195245517 594890249 449770245 346673283 832284519 855401264 967889081 875310737 604193642 170034855 966793131 246300657 931736700 680088856 388368325 435861141 77836320 364933647 579913469 110601391 760115620 364277893 774449316 740397153 646643196 424039450 934733301 660428413 971238899 165771814 759602026 83661473 530132193 117478507 657415024 282094946 490223846 607101621 951207121 849542873 332428130 357905539 596057511 437662552 903797168 756585849 355856372 6140075 182469462 807666090 649793466 408960961 75273795 974532777 230372764 614235553 3629429 296412374 904126750 413193909 485040566 621859604 223568653 180598961 523043328 556038497 143555166 860664617 523222291 814008277 916145635 632223416 654163166 765232044 480405967 922149492 273657815 362337947 274631832 325840191 215272133 219427707 740131700 84341690 120034474 887832394 558880233 971319977 529607164 650826219 54424363 460128982 783686727 507480010 641082476 290199422 480403522 412254548 377259435 862472225 446912851 591677613 260530534 552175668 792780905 852527704 400274380 479360235 792156368 181111645 92207270 153373343 66685168 927100403 204511100 658803218 366863872 143094838 663176576 648820825 846005253 802412599 102969818 40002585 128795953 533001898 338222426 80407543 306946075 344869522 786055584 433679350 754179834 776339482 93634332 328002784 933897979 782989522 36642852 604377054 87344846 697224053 345968262 736510838 709870150 747641517 941122583 581143943 924551800 610652473 46583531 80908502 690042383 244787736 685486807 885139505 637288296 12519628 535039357 264893910 289551494 364766265 671906834 932467660 319566589 503995298 61228128 515044781 315845827 88366983 722773004 585214395 188219370 743554571 483788256 506655059 588578656 441535579 62907535 861954446 763276193 751618783 715521359 808886505 137288851 716037019 744060300 52861166 163572291 376616326 797731099 620661872 982782130 376109837 12556275 258611256 854569454 390288199 909825797 367136746 718255594 236182099 584529802 963213547 907859941 877659047 249644084 741761567 489234929 869157410 721132898 497072612 747554424 915843153 31835211 841190003 488405979 37237795 290179718 961588913 357492009 309084636 858129866 421522675 533075488 621838922 782440116 483392898 506544703 930268088 765105946 565956171 576380789 932231053 907346270 43378685 25657374 160578346 189050884 639115696 400158040 721707604 340459109 203521766 461474462 520150335 202881438 394739629 274815389 961926823 710715909 418645734 423092291 784947858 228719659 909717219 350345646 616682170 821065356 203832748 179099026 313919788 603137826 399174766 51143281 148370050 955165140 393831579 493259594 793405635 988592283 332633035 888687104 910283772 689121815 672252230 306700550 490292199 398031293 866007082 210108261 892711863 480461228 329296249 484311878 678745243 587515883 458075103 45605977 631585950 981234928 827917725 130912301 981241808 433323821 79889040 601959660 626857676 286425738 305560705 125065507 494256340 114912336 611926357 421812901 868272899 142823112 905324669 578922665 534813982 396261017 59861293 133010336 502386075 85832756 352603766 467322400 439668386 984153956 527605534 436573141 445925151 464630940 71431923 910003069 435637254 610870207 446064154 856172039 307504642 540363653 547966139 665443071 130483578 829596711 340737622 115331775 32988995 204228138 559571983 530024770 39759688 78593565 595822597 341765394 902557645 828314406 14521458 344603905 321924231 981971332 181605054 456769582 551261000 564651978 348945474 369580713 961179514 652610798 975120878 171549698 510834387 690108048 869545177 469357865 923113678 391432047 729389460 19851491 156937776 503855397 96456525 929314695 564352618 917904229 421292706 284251984 871107846 950778751 120179974 34620449 182779280 221125484 241504419 116930937 3595381 300974470 79368737 362205050 463681850 275438053 981686333 125736860 689645037 850758908 80410071 300196896 301357501 648295555 964677498 262990420 538319950 13021628 517712092 413997476 301787115 162090448 991775365 142716011 284824529 384520276 273086105 170908565 269709320 627482438 760187090 588001444 443393990 387172685 498766475 870153268 21035731 484223846 146720223 247319508 987414420 50189021 981162475 712932692 413279705 490581377 553272519 129621196 438980894 253955256 873804587 558982744 15634394 447578715 42489129 563976594 693597435 954559921 903080960 184091604 962472327 454759445 533726251 460128195 928342136 532281473 668654942 697668163 151396347 550798767 600790578 21531902 961932838 278481108 479975162 483370190 728625311 217315954 808912523 211719781 631155151 97255117 944504973 483987459 481210927 343473107 300922753 397580844 807994879 337006434 776654595 16982000 48565560 305157183 84761786 58337714 653397311 196389712 299944668 202790787 986275482 389764067 437968340 22863648 439085634 309077238 973577924 229495140 700653526 402746294 306656422 171774258 915646722 46822328 157327873 287036419 274661123 111466151 687735273 276404222 283393666 810991476 235840318 759327951 121103658 767649356 554121815 45487721 650270978 469234745 857686208 317168301 128069282 811733206 272986561 654120859 80455505 909578881 666724912 436087208 375453279 285733291 505890128 380559002 906351455 391948908 239219837 967110263 445460400 936270675 985139540 297916079 937481059 582631515 595690158 708206102 621996275 200097870 879831035 865966196 36014750 114003251 945979888 678800094 273330324 788696742 198997191 121087152 566877620 763064034 497781567 467750277 18509838 517202466 570177198 757074424 984597727 62355947 734624926 706566165 156433561 717120710 369058056 539443577 466925169 437719460 848350630 47264279 740592935 431400138 366750511 810782853 195599811 911815661 418626557 673055392 491534526 706869878 683946275 699422559 702766706 502902988 772369676 31690741 74859734 90722510 391232205 20834442 307250111 216438265 746091294 220749005 22935963 690030702 561308574 823115857 155157249 549073947 363216967 502127410 698217291 146763141 2858321 164374820 670201956 413997318 881268110 546523746 425887487 401094631 833270960 557581019 336650050 19996593 639254065 274918442 699256899 88948905 558817145 802254717 847915310 942656838 756216027 230202017 62008866 421556893 721986158 546707230 526734744 59045981 831020239 233792035 582355609 467563842 659828400 509858485 389184792 790058720 793730506 966357120 301287015 908087567 618919848 769925592 117228527 115826010 280110296 802187237 189097364 894512732 72446376 165229026 511491570 892041640 332352757 27894670 210376249 86959697 271107401 309523158 994703307 929489725 117797607 255013465 100131334 627281322 287482848 146547502 62781802 806444196 972509295 492596617 346131927 888935221 508657134 444478091 329767645 664953524 605683908 638380730 779235914 471231297 378062219 138164333 966181646 911889503 888146255 494760577 226933033 310180163 573317146 566495328 597183341 859348620 839857149 577774829 331723675 281023220 723496129 721049451 416203417 397445365 843146458 34717951 746914123 199289582 518225719 834895833 537069022 63597498 646365028 671185944 441243527 604957588 131955160 181599670 530381088 76158628 781470545 48083486 830191437 193660063 476369586 65882496 690119753 833770373 565061922 17656504 619415515 489155969 945050716 735718295 690915068 179859227 492727884 961438308 953102711 759541362 427372022 85022545 100712813 145214809 899006113 935599412 68442429 942139695 353254432 125887093 712330936 910326858 628479053 525709267 198052369 922281007 885443129 440932381 807165772 856228414 331985256 671906135 64203746 963753424 553363220 914237854 979400241 337288142 322010191 977044448 734394914 251961286 378521563 791433041 79204454 465031850 692313317 788119859 908316809 862040422 693760730 954875325 132321491 557589088 585162145 706405094 963567045 134943557 364570402 867769981 131857364 252992960 338800247 359458987 200584579 517429448 789328179 261014380 71819515 410389901 219392110 13001664 402961498 521448971 354292352 861015487 278558777 491027765 937034131 471714313 73600331 787836805 513038599 940427744 781037709 338528971 238020879 114735527 841088373 674734759 298140044 436007315 450337970 20875417 168875128 226915479 996317397 355118074 765465705 206343574 116665972 636462131 139123013 884256877 693997268 862858815 428571013 322111229 198782589 695851396 137775406 227519091 813416074 939271217 451231023 648547702 187006488 168905530 942721610 340741579 995804215 1842849 248731836 706337258 86472409 777922392 936478713 615161310 634267906 507984028 485579285 585975499 637096225 373953164 69133210 920765419 422307978 837171491 117600441 693578882 191690125 833420275 102349206 664196265 371482916 231392189 997900597 941955055 283293698 309216856 993635010 241263822 392786 861617441 496020492 735289078 240838545 388524428 951511795 555221621 3688581 984006569 230051951 338388757 778046959 964815533 354805136 645643375 552898146 876490093 171904063 200113957 615008237 980624269 622208580 664152126 159931628 300182207 617116036 196831404 947889851 113230846 649105097 165407568 151656264 63912334 153781726 998074697 966263872 349533410 537681671 541396919 372822506 27513476 433209207 442387531 427035504 402712554 530870753 969938164 460084938 500930260 287039922 541444754 180553358 565630573 447873848 330474290 263028741 113884730 54415838 534147522 361926479 339978581 243700501 131669597 338334267 52708008 234588372 477938300 211794089 715416174 734666097 742766567 926351789 596661162 98467849 325402197 956340331 275584517 771102111 349213598 610082289 725328703 726389320 516613768 130217497 117907392 189478103 344344127 207848869 752272873 178173022 715351261 750798480 128260661 153177241 763201489 80630707 971789151 927044508 40726790 719825710 748859653 375485577 827773195 279603844 925549148 383648195 929265967 942858411 107613677 615975521 699267797 924587318 343868231 788882363 487867273 726145525 949408083 816077350 4174403 974243929 427570948 982608653 6155205 570728872 375912940 126306142 917855272 916815771 389025586 766173777 275761506 943532874 618640764 177794233 186806392 22378897 145542734 626806465 72186957 204381971 634922994 902508551 682072043 151958433 386446482 879579821 227366504 671330739 494031380 937334346 456261522 80064316 514604446 620162229 211443344 676129422 776030991 159269615 361905769 745845246 236197128 298894274 797261093 125703800 468111093 737399076 824192783 203814723 17111641 816684361 141179384 60192262 63447115 337859092 18782816 94295498 429705685 792080051 640917137 844029561 705039376 738192269 956465149 530243203 30791847 21862583 465917291 754169048 728602521 378183011 362489318 375670318 4712079 281201784 993007996 452906339 703130771 558842420 876295845 210328742 37091393 438400882 470104547 827321220 890836271 448077312 250682597 517210741 36853015 87331733 146576807 710785724 497020474 163504656 340651721 941707187 104831567 951939151 483564095 195220440 390800525 981185696 954211626 67557688 646930363 340213273 286866197 759430601 36780831 242851850 565017181 223087566 721719004 431017153 472565922 497121360 209972672 908009936 281635243 827451792 489441700 606693051 94315654 967875237 775419011 213209739 423220592 315271864 787317695 132796921 3673767 535846321 24016901 771493230 263520013 956634285 608681629 899194116 251416995 644537248 288535284 764714604 430561697 557058004 142374108 281460462 84793044 881104690 555020212 420032458 28229685 632466559 988803636 51299891 515036870 220238207 120043371 988836514 559068173 952088124 801934742 796493054 534682040 252739120 4914368 403204063 666152192 358780684 448943926 7170569 245249589 856235000 920748640 99196098 912736324 730270876 646657607 913102501 747905884 97439820 456327454 907871708 723986076 561738425 887806661 429754472 303691113 132820762 116698253 85080174 558990887 635273535 598046730 214750732 886292733 111612895 807040 359529764 507939835 318071932 698756608 202401406 419579307 937884977 589944372 271750887 90203970 746996822 912956565 934424025 28289391 658262171 659920204 313673262 718885722 574811374 79799775 608872149 404649840 530697994 806011864 326500531 805994942 192315122 683566749 523592175 747879849 281135435 40491759 580493864 821528280 4525820 758279869 526564681 493495869 5835748 534696947 363427832 127832143 451809948 647880166 528526751 872746428 465319589 374566891 68576355 103088875 639408616 330827731 291365432 573868323 496571033 350910138 344742557 749956046 165658655 795940999 811517902 431067633 462679389 88789404 102755762 18247840 612482109 807773325 74465761 687856355 554584163 879768200 326406660 369749310 496952637 308176562 85944616 436499147 487343226 317219655 315460969 458145695 175348451 830449077 43335186 106755258 277892004 984973105 66878582 271658830 752045565 142129362 178537046 154646171 30925668 375226190 265887651 757705392 12249864 489292878 690669154 949846983 661025475 188302923 339794558 479704474 232656534 97791185 786876997 328303485 264442384 654430932 567329713 733890628 60020664 936098507 441052705 155407805 987000553 859509833 878486080 999644876 513805853 802888462 273069169 267114160 781120293 993386737 662113129 679598899 184127251 178242385 291917817 808049356 193159357 648652952 988834588 987839582 912780746 873506385 255345116 348957857 612928358 778546235 163480325 247757291 673997574 14078737 582240364 744569722 481040808 616493294 831358610 387390487 146444481 397072335 544171511 238603407 186367943 633829055 40396485 822824121 378054115 819272102 676881963 135854497 718096656 246900905 850389745 19105112 515419677 863585802 702533356 841648535 379489594 932559735 912605206 199312097 192368013 349928439 209700420 713098492 626740909 262570775 528883629 19857511 161831869 123741448 266978706 450905093 996096272 804201167 808460364 979339009 761891030 657011588 178285591 673257036 445201584 80142222 392488595 771434529 825394158 753625109 508444760 723213038 256048365 280268871 855631041 199067555 124364637 271311758 589102867 180919620 324874202 202470487 943866158 935727477 977342056 524600277 705203749 563650150 887681669 703811669 650921701 650845587 793612658 684806091 457157668 158512252 537613725 286499120 875068363 686117767 753443758 74195281 489629798 538443600 265270750 729225663 964612370 835268282 697038633 84187106 630877420 854687588 478802133 499140828 745953009 940634850 859226554 936523780 458829929 465131935 479676639 909668368 735400435 957759655 403845184 725519156 946980746 95743105 573355341 576583555 653262972 383097061 105434934 409030123 491020769 941811503 922350614 328974390 169174928 414026547 764645002 370319873 397585222 231563059 59193464 474792475 584683963 340096145 90927106 596574298 977517715 565163655 242293505 643143571 936672939 853302371 36636591 998776010 554913023 442977002 510145883 238781737 611770536 227413163 151065353 385158301 359861062 42806934 158748844 495172019 601093886 72619588 825944020 522772435 853252709 33969973 171832627 128300447 541903064 410565579 431052682 930583543 719225197 688558207 964640056 349475580 512367060 73906926 221681725 798652288 636311578 623011217 626624086 21129769 508205682 656366716 995827221 210339446 314465412 29297005 228640025 38140586 762074228 266194871 199788789 727386705 668394596 973250761 313808639 817486026 751633634 125792178 985576835 429717730 250569133 308779026 382414827 813543435 486029406 572882047 11082748 486458324 464012546 472511503 693622091 269906771 244937903 421451613 89939377 698224898 401681217 200454848 472042608 524538946 927462593 424994258 530304717 626328187 279507599 556905441 394154382 679690847 535650597 704208402 924777826 433613241 564141337 149044220 109324091 122304728 393688341 735243589 383182050 764503474 37950151 886560872 698551321 959145068 985661341 467524459 304448167 937954075 349613604 41259760 948010131 587499184 765435973 36529064 929286627 499403478 579207011 112180127 725266044 571585983 267106959 856957177 607706017 424536062 205709557 418739637 572022681 685225336 243809404 599415000 785692135 270110577 957452616 18430240 29220629 510539245 909110207 191115484 957467929 877526540 346272148 521108520 529265118 732999019 393705525 617749313 978363503 474749383 324632011 21863344 407771766 50322490 776649372 595949230 853376956 23744245 109536889 159727333 211255955 213366081 551946905 828307041 527161448 701512592 503030991 503615381 471136098 248170025 573593596 341227035 59841614 305437524 34561531 849339092 723768279 299455261 895085695 190856168 794190748 222380629 656813010 862729344 386018448 109016544 594272668 746210150 727250696 668824085 487028003 684032346 42971928 180328958 520282067 828564782 117975861 61172064 483993940 532478843 586679144 509724760 19721646 430969854 676961733 478205986 6919577 988646144 197738818 67237758 303271588 354136352 891862977 739406743 129746646 592806576 931990433 1158146 209156093 770711968 869181892 689838628 414362442 272592956 801939140 503728260 682101824 952021272 988229347 31927307 891956802 911474558 320500582 571527373 379460932 880398831 169491939 840674610 579448554 334348207 925241969 494819352 237945328 975145907 805102446 206304951 418685342 77918413 162609589 397499716 971058879 115263685 353973246 979055430 518805522 381828084 570786447 370258945 443061421 58662162 562035162 351560154 708129858 575216350 256914255 702540922 441678106 39031848 400041879 950232213 122119492 425841371 811605094 724118950 817873554 609371140 153577889 31574896 641773692 764003270 18651 208055153 693015302 134538112 652762773 440961442 513088047 915036547 493291753 781333112 661317665 569131087 890913233 78915025 324738910 924767597 49897969 995172848 813650529 547279079 378206897 90861242 878373378 285925779 40770494 239132262 742507943 587629438 204966463 98701196 116013394 30817841 926534535 601525906 516472551 153183113 115494046 413861912 441682020 217299014 535558349 753220507 805846877 78825432 719023153 148395582 200823436 230359524 971874638 709991548 699645640 161043799 194410006 423444581 908814226 494064057 233055783 147255152 850331994 463629065 285741725 787080875 931849509 641700672 422704207 946322153 971599941 96143739 873043766 650163917 517493878 763921756 431493495 278336525 245314931 775686530 597381844 804293826 211215959 302380435 495965234 407715454 493895421 976371798 10449668 365047824 834847960 869862537 760847306 967104418 933436679 106661998 103687855 605365653 795379006 199945862 781875561 56658597 977475057 299297375 506890633 323004838 544376021 408318265 220370151 698241101 166049492 123420902 729538503 474746659 412003557 212534707 432746085 992927297 631205866 71545072 659394449 820121760 303187658 120687185 496441296 676211225 938369497 808777278 275869015 333673617 423297234 280772436 407608031 835352245 198876429 122936841 310786684 957992921 818400497 454811917 79626830 864794329 126256289 791452646 646857533 708837512 438883778 741163802 907552406 78101428 416842974 253874552 59029991 683333904 366344319 689795826 493000428 935845104 160142946 234931905 339946337 941900512 965833394 35952565 578166616 938377763 183302827 61245067 82143364 172281368 203821985 614286711 453305321 961619566 14082775 317707053 498370512 494345087 442618631 701165776 367738090 587955733 492393091 761837836 707650977 554489656 104255829 858912178 58505759 529903379 202335869 971374839 612160216 789758284 483932863 524293188 198408390 60335518 250178308 67400100 924132982 600483911 958477396 192401985 194591054 32617974 861325998 169393544 68339413 313500226 604977339 102920259 682575308 923618933 143936515 601624298 767609896 806180587 97171616 135164207 27705831 803800323 838243692 178970037 622489281 709728041 720282836 382434021 937970010 523171544 740420985 912012511 350905140 198998286 792030334 198293262 16874220 253454095 454942914 590403163 832421382 492943099 539938750 522157865 927774419 631349039 974445363 731744609 172465546 982708269 730142442 760980477 733853709 791550776 845336672 451918865 671090864 427942815 852219075 663355744 908703549 490914196 981417149 237178723 565127104 319132751 361115688 441495653 342024297 586697859 14453348 952863569 975791618 435548745 6833020 365096877 85195303 995664173 497099890 629502831 244078778 724028738 7410605 51346830 546343040 624925903 517362677 325191817 351394951 399947028 704243848 140382241 202168392 376671779 481048664 137374072 477822847 294528585 717495962 904886857 998383393 541436684 345939810 25634816 158188498 958096607 804929126 397168610 54125200 861193753 699320571 317578033 421872891 18647493 740831431 750743819 786657435 977429191 417820033 800833415 140232023 868831346 166200133 582335457 99436931 371682812 942256498 17444534 415419000 362427507 546898894 989499352 128396586 247193946 582672210 150650886 7603528 204756249 57639984 508176508 767740712 285940506 195865917 286835219 799162753 719234547 147349398 559427595 809900691 365368112 208337052 468369015 888553651 25367514 885005266 68714033 945617394 737643499 195287185 285864070 983869467 66603170 242646889 260784745 512903422 788408383 69539468 71376604 788580535 81041877 761744636 213413947 237785586 492778513 496196668 491218391 538965572 986519575 241953612 572742643 649291042 222808108 582463969 91737296 5999819 241706405 632240042 434305608 79165339 411888414 340242110 995259251 722598310 870172839 225290045 590685535 442596738 427191453 210428212 577128586 915731884 17728001 647952814 644702434 833312976 685929865 751673111 279508630 560122395 296123125 38981471 752309857 342788640 898806937 993891722 254930972 953091736 299352934 183015480 977112754 890491293 875171584 4114173 184019721 83404786 781024272 358035281 84852852 388248160 948868063 865374580 971414209 500892743 378464152 453237841 813008576 861353194 141756880 554688879 991914366 753682719 535806252 834150316 223942023 434675922 367177644 165980278 670338498 129320575 772734575 345429782 895430629 18642329 798270157 966254062 855149845 292492288 163587542 501164709 512118915 791232078 939266418 200847577 726072190 321181360 907274979 11928214 501542780 533026466 677492790 770252732 69806082 54887918 303313571 441232565 78479595 518919683 543251852 864575240 397498325 935203224 662101873 505789067 417631199 284771565 586578749 564373345 950729208 742482714 820064305 483183201 363123207 516760514 41724569 735276801 537708995 708615475 840321425 352406925 49303074 273284262 823691419 518761265 47301679 395839273 512588474 269337974 414640254 32821826 516659533 779599790 610617878 549440675 421435185 117900489 583410829 132101233 747486340 340128491 191645673 150631264 529711221 908555764 771740347 601581745 352114258 433717879 301119152 41142333 371050871 279139124 207399020 36415285 858955845 706960052 69114291 403783369 395987235 565906982 68367886 945307037 110454640 713752842 231023851 304043200 288658930 474657864 626696120 8725888 494851970 883348666 377203242 482344405 609428366 243504759 667209717 878206818 538182554 843776567 479477631 703266364 849220287 374165262 573860786 553000632 65105251 518334972 436789314 555390625 551415028 911629648 951341012 870900949 385378445 80828008 978627850 567819850 937423325 494739910 46408811 162232340 605548472 127022399 131503803 187356578 904703084 934730280 770461760 838311607 841252354 814261055 842799014 361424114 781338555 267607474 510967832 133030821 762083643 94680338 476328655 901604147 957776282 429583404 516296031 191207469 138163065 690228427 126952651 297378949 51541054 496205465 68403577 374008427 388754003 880255638 937875309 994375389 669081054 804544481 35111560 560379891 415619285 30146683 417083379 380884322 633826105 939884716 720438995 63943009 444817027 615428198 351360595 938879528 255954213 752902274 250603977 400782431 643361668 214678370 55337150 630719111 920497418 958421847 813942317 234174647 121879691 870342879 964109628 963018320 270781882 949222726 211333546 298316119 84162109 913610915 967275718 33183893 998629905 456402496 301062733 672180305 667922688 116850955 328553954 991785563 525390861 52010013 643806890 90239613 531666333 49178037 747950429 828120274 774364740 910228699 867515393 349076762 166780885 893241553 911700465 671586891 208164804 216542956 113268512 724930730 506008214 28812904 208484692 835774712 685740272 357433262 905964753 369031037 373223064 242528548 269552316 450500775 282961874 627250277 852039592 914590278 961120794 84899693 854995056 354323193 678445023 236150631 521035473 146742449 7033805 590571596 481523855 709067718 869333713 807016468 798724898 255276632 374024222 808880805 600886455 997677768 710669628 705092258 719222341 768867570 894516541 640766004 791739712 856654982 755899283 78466038 394140672 985688390 159150020 900215494 275085477 671115647 631962570 525154933 118955141 302028310 367531007 588203594 633431829 839912809 243404595 769223137 230143982 276074381 983428155 743798038 827178 637645444 248312471 311406811 216951382 354362723 24437236 787655671 571931131 563709465 990318162 115696287 304365123 730008734 389326944 330241731 71427531 294404866 339429432 467416372 85431191 32269908 557942766 893254478 149222053 243651696 834653675 850891724 802478845 445442174 136217079 109374779 923535983 567945252 433913982 154900324 565115838 803203522 66934818 309407828 916918769 267459887 905380086 678637926 884033100 301679238 642008375 687695298 53896888 443778208 856794015 275563117 80051962 95143418 662588782 394413071 188555028 878416131 746429643 220951913 198407267 78534127 602980458 230847596 780088457 31827427 602317572 948768395 832142464 638093146 735319461 545358274 778172006 549929668 807677272 873733654 880651972 983050679 59051602 924834890 878199927 12558553 770487938 130792488 388787869 576938519 231209745 162558823 520217241 586947186 944777566 571461015 361888774 734567320 474079590 185633305 579197488 866166007 177039476 562000767 875963807 366522921 300166426 208731604 898807954 671303357 115818742 532451515 994150151 71357668 22015054 387430885 104726133 723085518 681367678 270470417 910892146 861192865 108258434 734709797 214666828 363521255 18116526 4453870 999193255 180738912 130970262 618582261 485540200 169614568 514128309 852334094 668124324 54007503 317116153 362004952 201228224 446452105 428863011 102378096 751892251 752490336 518722448 397583724 654504373 691247083 608222642 951851330 147789789 504546434 589105327 477722284 815674131 427968409 651486689 197185610 459377108 655370836 452254157 888258213 655347352 628302899 239434185 733839325 103506198 672790958 365153869 839262395 487040859 932201037 722798108 874125795 119526559 483234672 377269280 635762005 903371320 752368632 50534202 814458123 429080741 403113315 593582305 132966814 814086833 363123285 209413255 37349834 948844044 658955272 691744295 749964605 579184358 763517340 757756408 741090544 828922203 385862738 300041170 669893639 288921823 550483927 559934357 636754515 911603289 119159219 98213806 779145706 470691071 445158159 266546772 908131839 159251508 907125112 186378000 744905706 534616767 577141841 855753600 591997369 420365267 232912205 480633248 278857506 706431734 677858503 309514057 659360751 44921270 2927986 37151686 181903227 210745724 937332477 452269095 621927382 296662987 929237207 908656028 167711629 836381637 295385398 473454550 955466552 16364770 134666118 672043311 949339527 720939767 510565639 685735996 799847241 850799246 90256447 286102249 354022716 148573372 286968268 295985291 160137857 316474790 137963405 525996360 477746198 370709596 65468470 241290617 29480223 146592941 86408383 720269815 127669063 917117880 439219172 818680799 533058670 427304280 206435768 814015908 539651650 693541826 139175153 894513381 352397153 559300669 764427769 723756435 962088364 574879260 251626844 927863383 803221664 707762644 919490462 764890317 359566854 488001114 524515719 64040064 525701568 124851927 900130147 173376548 650014063 693806606 469296734 192574217 668070894 966726291 837629986 62878614 467206546 993231319 597950558 337906523 613313693 938759630 726585179 346749478 545861993 25455401 370875867 809286034 3357473 619627323 53961396 330859305 3392120 808523224 467186771 813118536 69601506 68095767 650562690 393198601 883003044 211074956 843508699 18140045 942637898 421284888 33057861 625845650 875581537 277585327 411478806 330955455 453886268 397221126 397696998 229951822 126512123 503026848 187819535 789396382 690141495 433139195 500872955 460469749 713930057 434286444 565610324 229811723 376519933 387846003 31417650 608066936 689755543 199957044 65667280 548820371 115141394 46417624 329155189 52087572 18480416 753804756 941599758 164707862 862220488 204514427 136239379 491354502 412257018 662883496 913194542 455115346 821510503 623464718 29789743 921150724 459943509 217050522 204127196 380417619 494237138 175373762 417536464 333699918 818365156 510946707 258136212 121360813 240455532 842762530 651211309 719791453 687371472 118079042 247821488 255609444 861657988 209950440 668614847 472562796 232045620 997827941 269007877 968623961 181252957 114347396 224485086 134081998 750182191 40206966 943169804 557832832 665663242 354777071 637361129 971106472 940354613 870460959 672085123 377306991 487224976 476779514 298858992 220502401 901547678 535485817 844680334 754814848 317825511 298880611 795995865 524150537 106937791 871222962 39359330 919533218 168465960 862128265 723566727 268659588 709900140 894190077 143759460 349290948 804217604 163518860 584191471 7829522 619011495 249241197 76289019 166055397 686113641 736520501 545238624 855000324 134903617 718432454 294893052 248261916 225197633 37970197 551552267 449787385 954303950 262479075 616603565 95630309 770124946 61821202 303136962 156357914 196572198 849104103 199477817 493323612 780668936 269276515 807075504 159456423 884534266 737252510 251971547 93813723 686006323 450154579 445446278 13322260 651280934 709146162 480338008 176776326 871354744 335312951 963593402 374724342 433290255 860838733 656645993 293042218 345104945 625969472 988904228 310923790 658929722 494619275 385953903 377462125 820834389 412485099 400411062 883987189 187775536 208040279 345053624 943690481 187785131 992571417 445750759 713833326 224741758 487490147 768954663 307753941 364226047 261758387 256055497 519436218 127450681 371691382 430907833 939886154 124937724 238532344 407191450 259979656 310783696 967624815 26880379 230285777 27383381 752639686 22146147 646279937 811722239 790306752 370800351 38054916 310287511 160712715 217410660 865065804 496556305 732110205 736940697 165537094 125660356 736903970 857376525 240776267 379256098 40307208 38249840 59643915 997882471 907477467 392245916 963610079 591462324 836015757 208079942 400418551 14147238 444833193 889165247 728795662 679061592 14764526 739712694 348584824 720035160 790856105 456356133 904640496 395829534 815140594 1983136 41709381 233729137 895845566 531646166 877347339 204457288 970294933 743050937 678888338 88473730 439419443 899925128 105725165 100244559 323950629 918467393 434611660 966393264 489696 70727917 955312392 588633621 802497717 47997430 274158687 849128208 898855352 85951010 147233239 50447784 617214669 248842781 952214613 180902 332986605 421476629 828185350 380853600 979229141 569529638 436945042 722463303 432763423 413315823 261933689 884971251 117229034 581503629 570861786 572085713 264819366 500513534 442869257 393948063 254578323 603208073 504496612 193872540 251245453 465759965 342941972 267184811 612402569 749078570 631196425 732550248 290973191 285936344 882005102 624653773 200871207 113040158 521808232 542131719 976945527 344714431 718428279 349327185 226772295 607928251 188162882 585290303 403386528 361023484 375495179 832588321 250107110 565557606 425036511 387562661 314344939 339484511 7277331 442290839 446929226 903099002 525901322 993780221 559695885 593634102 799134508 29152997 993062625 341972033 120678211 427992972 12246737 937959731 399273496 872455690 773053714 68393231 273290498 394545667 581729875 423312325 418245776 304127615 619480235 855572996 265051172 242777911 362284702 113788942 443216565 480409445 329363845 892150722 487465901 707340116 299562980 947704103 349147955 664625244 610496684 535954282 567280155 120251223 178490606 343195140 777180846 697354628 721884091 633523681 745261106 666586068 807679695 96246163 487298844 348854891 648763589 55133707 286310431 299979135 339975576 569680188 285281144 42514520 682413285 626157973 852689683 183336649 285790374 641398768 449640900 260733445 877320461 189742966 877853662 279031512 726713187 329845216 764016073 27411841 801418619 700012563 820984323 44763297 209414688 757294543 199998983 903614437 594896319 922640202 685794176 799267236 284611031 750597919 286810828 396722391 791056278 794131686 212141875 753819652 735274536 919696114 140065235 951414112 570377460 172460636 155077548 147435914 119501386 982657051 322659283 923314763 705640909 827403958 416943257 793188940 368349942 773692297 629462825 757873370 686331332 111269606 607116045 965377046 102574272 353271545 294479858 438019042 48057193 253803639 623809498 729705386 554024541 361930963 646659911 551219123 534824708 686542613 230344623 464388568 498228337 79789227 543141515 944786564 219531794 108355716 551893231 481187871 351006166 312345488 617990414 705971840 69568279 401544607 718270023 728333174 270849833 401957501 503592409 927569884 392570446 490503320 478257545 658367511 14564051 44949362 728216545 204461731 811150149 654196568 968016374 655758303 907720884 162324917 738868105 855873373 701915079 714766808 830262246 450143762 35749166 488646527 398210096 608512705 981240965 48397169 57078901 48095743 610613297 204687226 567682717 683732308 964153973 490845616 821869544 505568540 81024252 552238239 901390328 33904124 596771751 166015099 901750581 101772226 873062067 688746802 794064373 888941816 997783079 84937790 521477172 148264286 351152995 172076638 515320462 450787562 574078832 728523979 517627331 756710852 498710330 899802993 723358304 840492142 333047606 499513439 32743674 292895489 350988988 89237725 221164798 107407769 816934367 801009147 912514643 787774488 590563230 590603135 983489801 552855396 701484518 323052926 465959894 675960186 302371020 824051055 641691991 416768609 22060629 822422441 888788666 589034096 437834333 809098807 875405633 357279315 291376920 496792168 42821194 905130665 950583829 548337597 929015803 25706723 904192675 899365687 813684290 674695776 77776032 984718423 293309678 764664361 997396732 493223727 832361922 670763735 70670005 172273286 102421474 656422740 419684797 216379972 536001927 353385752 819062618 637254616 302711249 266099931 433109487 73765782 438099400 360892072 984246261 881645800 775916005 404909066 177447342 343237759 704435691 695569909 333360357 340213945 387879696 232033511 318891202 584008440 777455249 298823455 790415179 925885527 256265944 602374212 359633865 668706738 157738685 795592425 429188681 744289826 492343960 83803359 999088582 563547036 13627155 737148074 873013193 361654860 323646000 276940435 526037768 226230232 274381500 619507911 588927611 53489241 640759204 881093305 193975027 424403437 287468016 364410853 952280350 5843709 954184811 835558395 222202243 118781517 584282866 967827272 607588392 364182641 871380401 195129806 497702945 807165412 576119738 727225762 562385051 633615644 954829788 942621574 344183694 633247963 297571997 33046267 880280333 311236832 894792598 882650408 46763545 419533371 522774018 725926503 69540297 572550981 726272603 419785335 227342402 269296561 983869865 244139473 329937095 12375786 949083209 874338466 500894161 99999115 914008503 272115777 343388625 816203100 543646977 884504279 285795429 674633486 393673110 214089287 794644761 7565112 486614121 629457983 973244570 14741795 997728361 863784426 206404872 354643355 350448887 94749059 929941644 300449748 848637901 448831187 485038974 392477306 948036579 347533941 528094503 535071338 154107009 943799072 205355209 916638746 455505011 772533545 473537945 167833898 409941082 154467563 795999686 890026001 709011628 469023686 810018623 915813917 763437764 885595631 592445415 301979404 770077374 84282769 840918070 753096593 248354748 133465152 529444463 705269293 815623024 171812385 905888481 465372840 320333344 706803828 138386002 134507497 36714656 377402713 367883455 178785839 989273196 354995174 851071782 383618281 199376587 914760240 177744972 403765968 91589014 678227691 388014167 805044589 778470041 562085279 329650899 495766893 433883385 807356021 467529747 136342152 785453935 189543763 734541006 633382064 271034674 427654299 923071034 48988045 129261249 723844513 178082175 694458564 952546822 430984535 522164111 459562157 672398851 737544959 366434574 926488226 277616585 330347722 143900303 145635773 311220517 919448168 269266336 165817132 972108621 793991845 217578863 650664649 123800386 41941686 489758232 244741082 187823795 211462922 763979291 608539221 891207955 649165778 94533236 79283089 552913067 40174085 982192795 622531954 820992694 925020244 366903839 217487891 48686892 647769397 964076161 495652018 373111416 252843633 448388182 550676393 873782152 449669999 151687029 321066799 631637749 291783703 352860827 525098558 609306013 234880839 597095928 503047816 54086710 921372325 742159289 296388932 547190825 980707954 526354071 789809129 249788746 106227548 221308024 175486758 372514286 486728527 913917402 763196739 79305794 89224691 289203709 215601353 327134095 257928486 810365184 284358624 59176047 723385626 707732028 702808213 706404957 387670696 139009783 253067266 882077099 487672515 555797773 908082641 824589481 225864457 403056237 494856886 921785354 80889702 9487486 590994495 39448768 771631138 905551040 519215856 43352427 231997224 670118920 431688935 806967401 834254756 709952451 593843010 90828692 898183320 4113009 185382305 115026660 617581999 15812310 532843489 310539293 177994217 285785834 53636247 84376643 918009637 185813160 982755438 931363365 655406474 463360120 292952693 372688507 633153905 527934644 62032153 515943412 68897000 681668524 792840100 722624898 822770571 720949678 325902529 171738321 359046753 429733121 191881456 655650354 909731061 673022218 957603096 978058821 874696650 409893939 517014826 945619607 789432582 132410172 295133296 382223820 2290313 366038711 994369043 609093404 177560365 725768154 852673380 628595326 291447826 477239390 128084533 457339503 522812543 316409359 17181110 782342203 504286268 616918731 538320609 11633533 362150891 724062144 778232673 224758846 488915119 770026604 868758801 160883827 742375580 617216918 728071138 889534110 95781191 460551181 275569018 297219979 350757985 935007553 933479120 76650954 733735410 948579419 696236484 385586435 865774043 977124323 633020949 48055258 83299739 8171541 483218581 60982610 405019363 463564253 25364338 579016943 725175951 113563171 306423829 326081183 196816327 194888556 596345680 284229180 981287738 682451810 357780790 469373363 409935257 189090434 582107720 106380479 435774051 434729155 308874273 370525374 806478895 958288003 735156463 132383386 448967226 903625976 772723175 193007199 213688777 447616423 121496696 943935144 433880188 343968325 239684605 27728635 702373010 807969789 382585361 548300425 525602818 915384273 988271745 953354344 170914212 407526250 480203552 881276702 459126165 536909795 600894168 536478277 793488842 628512696 225426834 143675414 290404886 732587465 70763221 687910508 759499464 379444386 872941853 726520375 142162273 494838432 270755781 44952318 195972643 1217730 774473666 272091680 689460149 361434184 766908247 451924213 975816590 787299083 688303689 90638775 340002505 951451767 390884928 396672379 945936954 200400926 933592017 792321642 233966901 863178151 293109141 541904154 837986029 935562735 831615133 983098955 999315484 411543993 410447677 962458492 904092387 641998848 84861893 848205121 650267659 177180808 961652102 733034509 328160470 561498725 758561026 690653433 454395582 551447608 292547668 804384339 299043863 246361678 485315372 542870944 331552927 613953755 910096871 54905384 32700470 151190682 516720582 922948855 815000282 542358780 35053394 56910219 424577658 412763377 753498363 406152616 936926011 73615292 212235911 817122458 978532858 398115819 354977362 284388803 155435762 968251256 158001040 63110705 270881322 503118612 810243529 873400923 118733187 750194801 645850245 694955836 273833167 998752794 695831706 2651810 501355562 819544577 517619853 60155744 554184243 506264875 413981377 85523073 148019084 537076898 806749071 683846809 655648925 337176280 913939055 485659843 185017339 32647627 113620783 856686336 996276349 868831359 933251528 63265044 844384699 340581127 99671088 78797917 334335698 420216699 227293900 536766915 855483307 462007349 364936838 765440688 872832609 255924591 510079552 594467966 694433791 187239957 231429703 784671363 658812606 984591709 64569057 626098262 887153396 847437655 963979916 643000438 455421062 939324522 210022640 7947121 24402897 194826892 574507953 329376254 635586946 932749096 784061980 916370158 714091676 675575023 877500374 769512213 259119958 946159883 508956465 513678037 844911473 644359459 713640061 526784358 713989907 285587899 159707747 976467207 202787654 946641257 26392006 612362366 849212637 475936872 579971583 209271304 374900236 826105066 361736337 142274302 167264884 815300158 654087716 783800345 669735545 599545433 496542460 174006440 811696698 568886326 293992460 536306579 903119988 624575878 190462374 775653552 255923148 636689468 780569494 412867784 149524369 791481954 832473130 53702967 559188766 499982441 562202394 380099354 392283553 291735668 408105710 526253539 683689487 450168298 387211068 812931267 963164530 778487460 920635837 743716604 595324801 400663223 507817936 241953466 710128998 937001094 730154975 41935489 847347285 133783333 934240905 357776659 798031136 205256626 107405922 82959744 609553269 312025499 662140575 465260867 222749177 643568203 144431223 544178972 995839273 487832723 900420981 282695410 970465027 932994522 39634083 245653646 460907289 224785174 603257612 275281069 489977764 721807575 22691832 80577835 420973020 732127421 589477557 404822327 778706065 133409861 647732829 77809884 31946201 935400018 130954273 777892310 56027362 536735061 465367806 473311266 87853196 57449697 272720228 357713702 11557237 530459556 115094514 513472787 211972354 746739007 792806871 919476195 226525705 364346500 351090821 964828338 889673124 438641795 903834545 989111037 644121944 108096060 680505302 972620948 645831116 97220209 166721946 100914049 720399283 409156564 142773422 66563233 519861505 380315205 645215958 39788232 468749994 485573612 19511460 680300929 492257643 630651542 939392191 784231715 351815665 209339132 280375108 95279055 703545705 849610883 276362634 912413862 5886444 964720727 559627663 664133868 387285497 715718593 213622717 862565677 218047642 69445602 604139695 682184783 978940918 257526730 826227537 592527268 950222136 857908803 663540837 372285261 336789555 768606007 715697110 754933085 819276368 224478749 716351539 681844932 904141790 953308881 855238949 554525250 54730794 679185376 430079333 480569862 137198286 211952735 291613234 116583902 136176706 265888594 82187030 689952156 392940656 232323512 890514364 396800253 240160281 284030086 416313231 595943848 322534952 55495743 37028200 829083363 763138281 875996218 230768113 83555878 662753895 226155665 106144054 413118795 603099035 355477424 569006250 117279315 852623524 334530666 713490511 77895153 131634627 213054729 636188421 877916158 811936447 834169085 364163459 82169230 128309640 254491482 802336438 999414887 879081897 1199713 736428644 719137514 175499818 237598474 217959983 850961195 236245510 903867374 173121060 729046243 210892218 751539332 168707221 500897691 360474968 541190 864400795 61142176 783459388 857085832 593426559 244573351 249416012 423118816 368269649 155363138 799163710 334779357 429244665 915729544 438241452 217714708 342242133 61288827 397936885 788735099 937268403 564509673 202246706 564231342 298613302 499464454 649286706 220303973 153425469 212617808 408834539 790197509 565125910 653886013 120930689 58682887 277624635 222004250 44813329 42704938 533214088 803384673 828179925 703801472 679824485 303479864 199635903 69327338 182120604 751792746 768594199 598621732 120909617 609318354 395658218 309108088 682260260 833313268 597024244 400081624 61060423 33743336 110959489 570171100 51393194 436141775 7830317 101078586 11400636 136035571 379436039 255018858 381977530 710208604 153718029 33560049 712659614 269343058 160131383 480757048 838848205 133818194 491823874 742975556 360549861 130446238 185821836 453457619 602897783 828505970 278848435 944515689 796055087 219284220 536676597 113442561 427935246 567775151 204159825 570236210 66005316 159414939 660837856 544540115 783556464 554503537 965372231 194698707 330698784 267897206 365160564 480348199 995719893 736837524 991326945 436771046 454584514 369737477 637899150 27889146 817787590 802017242 796563028 620654157 231701270 13666852 537493622 114881997 877852212 281224253 511422665 322437685 926489435 116546698 105037132 847666951 298022511 203068139 114853015 266804812 74425874 875996051 684785999 724732373 929508926 44802029 335284728 208813194 993822759 254991768 368366909 437533324 313192877 681475814 431410099 877843241 402559961 745029774 499496365 344438626 916558184 249601012 222400088 412021254 702118049 810998361 737259805 237320918 865920596 330735779 729301767 940917129 142842798 772027886 657860543 555363069 760473702 776163193 178750038 45232061 868518757 209950954 775303074 17804124 569238179 726464660 306398546 703932275 790770254 190153109 866295765 383792504 695595015 143248341 384416642 325381250 667382932 501649887 988761792 16711125 351741295 821316407 58837335 122270467 33794862 74715732 453499822 200873192 894661258 793615014 135357050 925403994 668395076 153661514 543565827 304024856 654732770 116780912 989332869 748722301 739051290 519048302 610086968 139359004 58210137 743034511 593241820 135769806 386780634 773636713 648925115 464453994 976093583 578480244 673592071 921937675 375059926 193048001 769754392 778433903 256150339 464747721 324092819 939588182 854281359 875836400 405344219 670263527 284330127 107299829 354577593 293848781 173722522 416852384 470515924 599443139 848287349 439151004 878390612 34873571 743497875 787225812 768742901 941833386 595982604 9526430 441149412 767605779 293658458 368044091 333189407 507150848 31998355 997714636 829528399 48006600 478397212 517169399 875458850 553822408 763777606 325835392 697516833 879855779 627907028 115997084 40796060 962020380 521414295 785915690 614010267 279637926 157220296 245296891 705873491 871265410 903965029 496108573 360157593 63099577 810096926 356787871 458039633 133823655 715215482 931064950 874848604 55900115 81579964 580467316 880637644 523535291 102833477 377563269 429081568 646632230 354177648 10871754 435058181 157307361 189709122 769121301 283644988 264206889 572127707 940827979 902569078 772082366 245088025 997874195 852563031 743883953 93852604 940799452 798280492 871320420 806875829 315005292 360860134 497638556 979522029 292946483 293567826 753293298 767821673 6822237 25801867 529478516 807002900 400197924 332228493 762269412 294558131 554095374 74448392 696383437 409347967 883183635 522638925 355375519 969238560 823477173 958129768 346847688 956791872 957910411 797058792 106374209 241337599 231624910 312194828 143738884 213312920 826758974 210730612 449868933 371410011 507557613 596175100 804826516 538151435 546323002 587687474 640301654 249826616 527682278 605168784 126613303 832796105 357569604 503274599 34807316 687208464 589773165 151156738 427973465 710102062 900076546 799679536 457810807 884251833 271545755 253198913 642834809 592167598 766147294 940322495 447075020 661365023 558073828 79267568 362298378 153651565 697816227 734758039 659853012 723733249 891198280 849151986 692921665 684495189 485315037 775718299 508774440 163873519 318374617 307361850 208848851 54077810 523306651 328112027 508044578 953405507 830778802 918147321 147314400 717087586 815813467 774001028 745136552 837281296 916312038 88313178 930222583 411618716 852004840 750620134 169201265 317547902 323376522 412171396 6790378 700198145 639237283 632146006 383443824 306879656 653274322 801427732 570940087 184256151 17708796 647108028 969395124 765313849 440492159 323853796 254509146 327664313 688838844 143290972 433043937 573190036 813638145 722091113 986339585 690006597 190939070 876809964 714090989 36692662 307190280 891775497 752716841 44164470 260942548 548300898 657433150 724410069 787255185 349335390 281006296 319472624 860997246 631530985 261958364 998793241 962732059 428117276 596299960 111982166 125918077 396059946 400636506 651600163 428573873 831064738 128977003 97770502 174594157 823825720 944527537 617550892 675251123 257782820 739300439 408500109 660059996 960224066 353892876 595669771 834328776 789960661 752570219 865507603 212292272 676505497 121953013 805600952 453520083 779532266 597705830 700468500 267041865 254713576 453343440 170514875 53137978 313159913 636686161 515378767 617016909 61901977 172681127 958500864 257541217 840545508 150588197 894511185 32780724 229593017 296431187 245734796 788423628 976153524 33262372 404757198 534099948 398101310 546986047 968142176 658772343 139610207 843905746 10735568 591870396 252038784 277083801 725105632 92792863 632606870 527218621 190261379 835405840 305083407 37912885 150701912 394698714 43677866 890715714 162078494 220296407 997077722 642462822 938011207 732190688 173238740 518490992 968318626 514797954 926349706 814477595 564318247 82248912 501450999 457112240 98083778 82440468 846500245 547434126 582740605 496051933 316151692 601379238 468845969 484529566 83332230 575212546 675327757 369975233 435690761 667664750 390615825 133007353 388997986 621896130 739241474 759789500 347713638 896552617 450165570 589635299 65752733 964091611 94685916 912856663 31332843 707285922 383294388 901961771 538500248 958418730 164297827 207301772 390606520 58920159 312826024 70195542 428930050 864351259 676225729 381198076 774762014 669414316 161945776 553651195 83613979 444962781 877763380 687612334 108704809 505849354 354625054 59414160 220810326 52492093 816050898 281313006 489550088 245320626 315330590 787686282 891112780 837776120 924050607 351389779 576256849 690982750 22657906 973604090 105209021 377244726 290009019 522659562 666452680 217857233 881094786 699874988 792146322 848743670 756447006 853686327 633672519 570799006 751254973 423386566 131544652 55888374 806301173 380546418 406786263 608773993 56755671 396865807 575715819 835219204 362740403 72574573 620892286 476425853 91862744 632685181 691081358 990615766 500487692 527413057 404235606 480988366 825321270 936076351 502012659 392497624 927644896 13201193 868076265 503035887 292361640 287841455 480678229 710748091 758761058 558607601 737678634 153555966 537460724 473253741 607104318 764564267 896368934 670977433 229373287 210092206 993574127 732810096 152606377 248419248 508759609 291652618 909684683 879388907 203726467 563005722 560285973 570841181 3468864 248556305 296260125 497586069 17490578 428206978 687489080 780236933 875899696 732597903 2515150 440325086 656376426 199274565 899257854 471841652 130577541 364341277 626959748 251239172 206328951 635678930 643635583 446285035 679550931 791385255 317195365 421541767 896652501 132523357 203936551 969412776 26001156 486613949 348395634 813583438 984400716 556913121 685171076 8942175 911699691 672590053 871071702 382074151 340703414 889660166 630991092 288756481 228911944 437254631 712389766 426135296 2024071 554445818 402334416 251940834 275229025 22342736 937606892 79414259 693826164 613328639 88999773 827150975 193503312 450577379 711590151 509466848 193799641 468000789 745586454 487822136 233079502 983198086 11866521 726842565 333523403 287402427 672290043 691525679 274668952 140799557 752330690 932930560 5511721 289641275 133091213 418326718 309309783 39922769 828109335 84537835 730015786 558746417 457497160 233288805 756987720 131995710 141992649 60559869 129108124 201517181 316678397 269454406 928027153 600696155 434737769 51389087 161483 476547919 894171198 713949821 547701814 453459954 279850986 925539750 631971501 455813636 71040294 189819881 324248147 941655898 778941011 72976978 919707428 822763687 487035071 60973980 77814508 308525962 347136637 582595970 880319657 209444207 650162164 964623509 958801089 710558482 774508545 383222984 920962811 241629859 583599833 213307449 969257385 679522665 421606972 984494016 624927875 905909285 796170900 421741303 707508219 170647183 166662193 134057289 932530821 61096725 989232491 998474612 232273264 813103313 95493115 54207772 85215529 37285300 551549666 518534843 402254459 705656068 966149548 1515977 962363004 525083425 925233596 816970339 507006709 83125877 604047972 379522370 302301860 265434187 328564216 89837573 415838174 611227808 46860169 145908656 678038264 587106474 694770525 720623389 355850216 318649709 328789287 192899556 681443232 547981593 872755586 785746052 183672924 380322544 134246609 792526782 324707195 288772761 3470265 146856831 300694999 777278993 743548416 383651425 581167304 551140209 344153869 607345931 763255674 31420532 701416162 289928680 767390659 495661810 131278868 306614533 399923306 727615493 118151922 431457265 119975552 956663632 329980431 349309217 25919624 666871155 227941874 840839323 20151492 970997569 528135899 232759493 337486224 552589248 254356460 943770908 357266657 391743139 845285378 110670881 303608934 324252382 837025190 535236114 506922707 145698250 955320361 979402798 269070908 439267484 450951083 167795086 92850892 863570797 961225758 540989797 452242978 782241850 144530808 793970672 74956799 976485402 512862446 515709465 902581048 464206927 173210631 470342849 540947377 657407468 790741033 762612248 121956230 57824723 853820047 315871527 661265031 782920094 750522250 65527809 225826486 333996644 927101847 191792398 255531765 317266787 721697240 785423637 556330330 248481441 898544651 535926113 173351694 552034230 29337939 625268013 754935108 663886287 510091465 369731152 655305618 264966073 858308512 558339809 391433971 405822314 276712979 101424381 200874106 567364809 34760747 663132051 280960038 271736136 449997408 853607866 486778730 101617791 964890768 666384218 750810887 161096405 953583681 739427739 561304132 97063111 497845523 333614073 977116058 860597929 692474169 205479586 772318094 585339501 401783981 784127342 665467267 280783020 489473586 306119916 649992888 474275716 109392747 43791963 951759753 44191848 228176339 176340477 854132662 993285377 771887564 838237957 825124536 526967760 607922709 359115646 874846664 923274612 660974930 523061183 682906966 873897630 190381415 940706432 581629320 334207999 314297659 155683368 729997267 428737521 289018830 305390583 287976785 877955386 773096853 438307138 52547525 975039221 338661827 557939900 631645406 404300192 958101088 164120269 44873428 507852419 87584351 651387639 21925496 661945748 196528566 436602289 642816887 299752267 731730494 142798810 42508352 281697885 365102820 227074472 347473506 652709388 425901063 625366585 554516753 999409290 977389691 155664786 113219618 609511952 598190161 912459857 568768538 716809213 789578985 329378352 799467009 875385301 706151930 860758837 998264013 192001768 984595971 999637345 703876162 314937115 726736859 466182889 225307987 156184520 269896154 83759872 438765485 758187163 2515836 751202066 995742553 701510958 265338869 537494767 969468528 866187885 543900291 410659477 856072013 239685554 405823330 957467048 418124862 700502712 221130336 559119612 547368390 542694843 740961583 147317544 308797146 578784373 116181291 47010389 93310645 482849812 287261844 119885845 945846370 314708476 610981125 984175323 965984255 851418013 863414803 25472023 26217522 32552159 635975157 107483723 792785136 129798939 395698752 843638310 181409881 759020084 76510016 886612377 718383470 53027413 604676340 847633919 336917816 591846983 809307461 635690198 487930731 294915686 643198818 415449794 256840870 960408203 372848602 812116420 461478618 170273552 851546658 934028323 958207880 759248126 927517970 212780529 924238303 981588220 110096137 49405013 478876485 961296606 633265389 881442426 346606902 162045308 118740423 642711282 823525960 965996842 572525073 24539434 123038865 542802280 281417803 892299470 879859232 98150933 67523196 347743513 401577503 772964120 907673377 541678225 950174987 486486784 459151259 464417055 401911766 293532977 942006752 900534192 31780494 500774261 981170086 292932458 807649626 704019142 256829031 451784785 439192346 706830987 541815217 47044813 96918093 172526862 655559932 645451665 666936283 45323123 226895791 682014277 988001577 432310189 839531012 561432016 678906704 312791550 243362012 793355932 292008705 191905106 663359517 304317218 874745481 978332709 845623270 449206492 683638092 162725201 257875565 324036579 274976160 53143405 457548037 192993476 840529205 547849517 224463170 543783900 357731606 366168951 741694177 11611869 461115616 810795217 864748412 500396008 45914580 742381303 144623576 199991337 991430621 272129098 254249717 592281559 420727917 288600444 99421995 621234193 291377506 780498314 637869710 897802143 348742897 405919388 280889189 669833078 465708971 121286137 281712633 377628026 631153492 75905939 271512980 615455257 213983588 812363513 652498567 748114444 305525942 588274471 742322800 141876724 412078321 326694570 560586052 762695509 958737447 861914955 569336418 401072793 740177983 927811392 2836169 618173738 71226804 515975822 548879955 858711512 180736556 818075887 752269427 234628318 393777394 478252832 468435623 327456396 172222482 84401866 365708727 791798827 218302458 184085044 225122804 486532168 895571865 608905812 328421718 421046548 337442108 816732878 583320991 668768432 45082740 839984758 781242068 525125262 449899782 749008503 67688333 730748262 859535242 217066841 855847781 792027535 612392713 874626102 341649757 310545226 889443806 332225219 478590820 19144772 551335318 666576259 35380796 644948633 847653019 875469631 48256275 747829557 851614481 240542551 789104002 525243388 282574352 608237747 81771966 707735059 179751282 576865053 875078654 36853071 147705935 919439976 268830089 13878826 522585706 333467735 555502904 873296618 16257631 756246984 111197713 270048963 821659416 993987786 998586770 567206807 359293775 689025003 222161459 420882259 999939455 309286365 301355578 800914190 560576046 789328612 745060495 332180672 267328853 261138168 818099354 852007872 806736077 849933699 757773270 106103818 495741441 601273702 43199679 825858750 490134686 151860346 581276424 719874900 802898187 413088032 7869537 164083291 163986977 666789356 327061347 637452087 727336032 3196479 239450609 669418041 403619651 152047768 250793829 205806807 577997738 619634818 388374523 881441753 289245596 134819572 456502245 354882873 805488350 620044120 54929912 650674342 84697549 447656122 923134817 687846992 193329669 701303930 372229636 693762889 732011848 130749324 351040358 355428277 872826486 428093275 817405763 723555966 21051300 627813025 902979744 243173786 639017347 625697281 17112447 618723729 880459931 442964942 347598347 369824697 858413284 93781067 380955106 55641607 605381515 667944174 250056085 596512536 793807327 618450011 935352949 175029901 621174956 160088825 438322940 788750407 804128932 591537319 7088118 737068605 93319469 126338783 520002987 372579789 157727134 628127428 891184105 765390994 359956873 438544090 438130041 766855289 143643257 729601106 659428655 486566075 389542339 684540535 463460916 510319970 8333917 792458356 983308422 422253120 280404916 521845076 780228056 920380701 692110404 70127909 776448430 243527797 751502292 735888783 345831432 28454088 742941878 913349932 572864792 488828678 951549939 391220068 341440527 844499792 954188853 373534730 182948801 939578923 398985557 725047084 140538844 211191229 323861781 469814231 246765099 40906369 407570177 993383109 656921884 674169150 560641128 740958882 986914339 627378362 825110365 905102591 173160881 187353424 66413256 458666636 49856710 154003676 723096464 384506278 892721477 732631434 359343396 345396862 333971858 463048388 254300699 899864379 525271874 704899023 469424304 195559822 231252006 138365153 217571115 46591825 253409009 463858078 107224757 140772790 892134046 699919981 786514203 364766732 299781352 383941022 710456133 270363163 864517577 855345713 431003276 214669691 5572529 675380666 100833830 870470312 8293540 569573544 1714892 68126089 158140115 640068072 8190631 504152620 242915769 271415959 41311934 783155890 486021435 546975716 314480756 107662983 152905191 900167838 508889675 905057450 369653788 961625794 194440052 864000403 380331226 541768195 534957050 95543199 507459368 600617669 227503463 969388076 543055745 690870588 184055836 220117311 367925515 848158902 375147968 375913073 910118007 403621389 82462934 683951806 4890202 68260355 210735052 789228670 57757005 862763399 870937000 723869271 887185746 380767433 591066950 469915467 542415175 320976075 553503083 683623919 403761035 583819104 13369325 281870123 598852262 210593793 715280797 451290715 932865567 184101575 119853466 509748498 904006614 70266502 991152910 743253073 324347118 407421487 134962527 899674972 418686418 663372018 215725050 113436233 732529095 479865188 351627915 74842952 600875196 428904730 366790161 733767867 712374066 69507746 333953668 51791924 835916189 753150917 896663169 16999915 74158598 249159422 756584787 158713080 576580048 157251745 915630454 725871800 739786169 86602842 4562280 237442287 56740852 755821259 797377844 847730804 82690198 367229933 353641482 875326298 29977375 175425813 314725145 742227663 322470628 251155386 309194708 462393033 282464505 685813111 496205699 999662690 639778802 788806183 856793313 257381685 693961129 55446525 174906049 809920928 389350771 180892329 927483013 114817283 933219894 922600440 790613822 976008944 539511525 493592551 508094545 452838414 251210476 476874422 119633272 910315552 607546147 160909469 825752377 633468870 279663641 770864074 376532537 266211812 399492364 81247979 399643810 885507288 591547604 914594914 387513028 663890210 208361364 161382662 689972832 308797919 95040903 931609513 156995642 16847854 77231306 768283249 946274653 76944665 547407426 981585875 296885794 821194941 112666397 176804760 760994566 296919061 318601038 535638741 722509707 830847778 286273103 495211042 778040010 61566548 189287931 704580274 702450012 304045859 5340605 784924713 239496637 611348350 819122227 34312263 48592357 181232825 869448899 133678153 375005697 487946701 293203523 582299442 45538703 158221730 612342671 969069428 14552259 987994274 321704384 309939244 643551601 312045853 225142770 408639717 475957036 741095626 637672790 329504847 194510169 837054553 259838293 978577662 423589586 43801934 733746876 955902823 820378639 198824118 569602851 70241216 394477451 226811081 92775549 599097545 80108606 601027737 111303250 350903543 458291290 38430933 963947721 381806338 496965810 948192281 704474847 391760298 675618603 236063232 451882686 844210672 863304510 634757583 33897233 350323676 723624653 617334924 129179269 890659011 161854438 422519113 77179609 496496129 445036265 35979713 171632373 759494684 875336712 840017092 419243314 328120257 825067049 257577029 181377425 210472430 856497343 838115066 654171426 520934646 523337366 446833207 404503648 45727542 789749317 454609019 316070514 761709459 957968517 319897901 786265624 911143504 783779853 165032990 32773208 384085527 666662012 727477530 327895138 798687202 942429132 553696285 910316904 860240370 134846607 306302101 890485470 612564972 175570290 345788515 261763085 61877716 517406680 424867334 523863817 68138307 447185497 587826460 723533535 687388533 484477244 10892644 884435985 959314946 484050938 128834494 937181407 504971485 888694397 779601104 183858868 327272825 324143327 983339810 625018215 939243548 179710705 779425589 229719304 213841539 760682033 172363552 924203495 382887175 208249299 60900560 10849582 338498448 860363116 71436486 132997586 998065081 213536962 485598586 996318646 923183112 410881303 481295607 785212103 142475630 13933332 216384481 715743529 985028265 36134227 417830583 444607127 751765308 479760075 291994414 469125399 785051721 271719327 337384048 630970939 950086291 129602727 866920842 116572530 502295838 659103700 695475245 865808238 249668313 598609669 218546893 697936526 509446149 16046777 479348365 389281427 693514918 21996815 28117377 336067646 660783854 172672910 23180186 511845247 456782166 903706128 460992341 476707392 803840298 365737306 9717397 561820973 722923880 466781348 990283265 990784682 658191611 874622024 616853610 844901013 800094201 629048367 209343480 206728413 840981118 285956397 410261228 924146719 456736025 889788961 315107946 533668764 735938130 302570025 410307242 611718639 776408852 798023899 53146349 957982731 861173894 603280683 498160262 471828832 795413489 685220365 128628647 826147199 568082641 462679646 280817259 448575199 650395493 983755346 356749133 539362716 409937390 677819321 683135648 423614668 657822341 916171020 231068567 449723889 654923494 831315601 554004434 959056633 622412178 753361096 641298166 426497659 361978924 646320277 508140438 855916084 509196135 920236130 361073509 371548319 913786366 287989805 822840590 855375020 766475508 585863939 620041046 750332909 574397286 242958773 822532246 215912504 965145132 885066796 742404818 673530670 956780245 996772364 799852261 770100242 957410360 8400423 465845857 380115613 833849214 226340671 588734769 795240693 927987426 792057349 382049968 839603986 223165331 794503768 993379845 112765160 882967129 726664569 534280290 463943393 40440842 994666735 772516580 812778165 154155100 578709546 210041901 860141456 534774400 431094034 520951627 688771159 125261600 466881535 284685989 82850658 500529984 963500422 963189586 363110344 862884783 658153075 750493140 295545025 771162271 570805772 363510122 683109222 989554439 427257707 901707187 454975672 119506919 410849100 436527492 757348726 228236352 207263356 865481227 389183979 558719899 107712804 105542073 685754694 163281619 733423405 437219051 375096787 653228712 12133412 608773803 339589206 978199269 634937071 818864370 365411209 416247831 398256545 683741844 75087440 921613975 767314665 335681189 759844650 288351881 660391273 921397336 960760779 872489675 592583210 878928036 348906500 178505306 334589281 251344100 753456603 750784057 466667640 984669729 98006458 732224932 354666012 590952833 185625691 888085691 830391625 716874130 498059249 844327186 18631198 966923758 775960605 29913873 513185728 29057813 464843683 221971300 86202274 168468376 446255879 634616701 554118014 744830958 933477098 909476721 73976137 672962525 910793872 855439032 992999386 283342147 128221588 934107187 421496595 728243703 191044661 684893349 958789310 407327414 378919665 861025994 172411201 118360057 926691812 404024393 114693250 881177108 382235915 240310456 775899825 119940299 505404327 20836445 812518316 531321056 619231694 706752042 457309028 638910270 794629533 314412941 123135870 9975059 399498457 842548054 773396746 622347948 918633689 460470358 596634523 943250242 142955856 613896374 405039435 336451707 20255338 202555531 259277371 496296828 496820579 400831835 702070605 843798268 362941303 969455486 931699209 210443757 528625294 178192733 247381659 91480523 147354566 245862277 285385760 513057514 222280834 373386972 914040197 468399040 696030779 558786547 358107293 745006547 335684983 276089085 648645697 234966782 938784253 122505548 423180412 793403166 66799193 623849554 690469044 642374016 94859180 582252513 210167138 143767037 870936778 955727012 361250735 944991688 164959596 420901980 224982036 738193360 913732897 664398804 95521540 647143911 950933150 561001391 282168133 6374278 821177339 254330445 104526206 308153710 44467444 745175713 282067609 163029965 180757379 487091569 44297704 918471031 364246554 894437278 94558538 807935787 941721030 39585193 506996860 771785620 729477502 414742261 567710172 466357628 588554372 976349405 435940367 678307459 482945088 494584502 280985961 744566993 739118344 908027016 178786682 734564410 751406981 194419887 9413982 997272068 599048377 2171002 336196784 857278840 329699911 715481595 961582494 610739664 972948977 646480683 466090521 660696893 340011529 50526766 122711478 430187831 958199771 119891905 795919440 334205756 590621051 684860694 647632556 469618904 243980165 617963099 178200377 492240803 767646883 72579641 177359806 514442183 427738090 869655308 332064404 756041048 873272242 493742204 717117694 18086492 113503236 624931204 726461036 551060608 978387647 351685869 158708572 619025005 311103337 1376010 859388151 140196472 347215186 268206017 84416755 887604786 100770749 986950835 548531094 756159625 876131641 328792006 709870845 836666239 270687095 137687508 488313356 828669551 702557606 665377076 37490251 126170441 167672517 573650135 664207146 226483144 763476621 56897458 308125895 849563260 393004745 19201181 875079966 374098423 569311894 324359072 856742767 766210727 417748732 914158085 890923830 938568763 966298948 529505868 77505473 749629072 241251938 683749966 996580921 234244599 76404464 676403900 853740559 608551312 760188028 474115433 695997847 884135937 625703194 782654726 471459150 305043902 583090562 186771674 702492897 981317531 382488842 697871697 118433889 261352501 369014597 906410770 903755689 940442205 710901699 962710072 239246984 830020799 32967422 888247563 383776266 747348720 529596897 149228793 497470506 531996409 775731347 515011737 659955268 306784557 671340722 152289939 444963543 330340691 287837078 222715702 840939850 841559000 140610166 298464938 144318232 99384649 210765755 141776525 520049565 318676552 298594133 754778041 594873375 624417015 481713208 755335784 566926279 729183258 848049739 110627208 987255515 532763373 272541089 403160045 89471738 159207085 812139646 157933111 436412598 69322403 253628994 554423987 670607306 249322526 817397678 20897724 190160795 248999070 388301783 235782426 618718349 640261921 793715573 532492068 116355865 768745250 272566131 69080559 624206099 733658352 940263115 767014616 626791418 832706188 792712911 854815173 54984710 498998441 909624191 398817674 22466543 274230986 732347034 247339359 359968222 871904136 708917429 151520027 930461358 248323631 898904471 919827515 394884774 661277475 79234959 934821492 562052911 49284344 654448783 793760011 133639649 343750856 560697439 96551168 693009658 251594851 722463165 854070498 197065941 360338263 226893890 458460760 822950353 943773987 912180187 406248382 331190734 51445541 141439493 205565385 56593031 855045737 80462029 934221918 757866021 422636067 818823291 79079965 418309887 730630737 281285509 46994646 721313712 335731361 403427039 746229890 256329215 949242742 178007427 171992903 921694125 188282453 511803358 835340294 623213881 670044136 216617190 10192895 772264421 88880011 787470828 211588872 713476853 98833252 746216678 293690042 515302878 437952754 825591232 32733448 157374432 993316046 702784470 628397521 857616978 784719720 937817712 966809252 349187908 613309366 722969661 900815575 776987921 753475639 311406394 231209446 158614033 422412086 893498381 773187326 241702592 840565359 700532977 798404656 425082540 677099357 978650093 79809157 302048166 652164810 234591560 163233565 829976381 992107177 341470998 323309419 593692357 310301258 892072178 562081930 62301547 183534553 66505569 233622914 886188460 902238722 359169578 244035571 512686465 466455115 390827222 382571080 42908517 271850722 780675326 71900724 579424362 250364754 373057308 531974808 776519974 119914071 35897975 279090924 233544944 13374921 94872412 952479091 617259169 991205140 4668088 316173079 676005390 770969271 267205148 674259178 264142902 727283650 698360852 477762153 760538889 546521574 64898346 65779028 768847832 162294803 719188655 658162927 573775309 210888767 993654782 789447048 879436083 358779768 528119479 999572911 727095036 502081138 213164236 932094561 734315 370528232 120816009 749701439 800015482 953166810 403907263 782659051 239798368 636568355 459552713 532276887 158994277 739672233 559691489 332950031 167405914 535580627 226993205 462426371 369516311 848386750 855119926 483790961 745077260 850742284 966720253 847011103 799485494 937155935 608083194 642552162 904885565 766133088 455350161 433975319 627514530 501780019 602520711 923666770 119349918 665162365 928810734 295170350 131951163 972110403 199638094 377729163 863210501 860451948 901069918 813425450 572194579 374600259 230163311 597050762 769085379 608980659 885960661 724871941 77690170 736796482 890971052 160284033 344182233 744353657 333856041 650149586 487282396 309956893 651886290 501649400 154678951 284975334 366770492 187014913 773098458 351197712 601864220 160426085 776952150 369594170 969667287 917876255 195884866 684937884 119936187 520233573 559037968 115554815 856639025 677285067 296347625 159080833 653821888 54794719 910626479 858878161 910074965 307002955 331204174 233464189 106129393 528842093 915354701 528602434 748529211 408011631 883957469 4367455 832068874 442865267 402777312 760591369 80428852 881154060 394583372 193407857 983999601 863809767 621366624 410257000 674906983 676725306 125744854 823448912 246234358 159235419 452110935 75999786 12364066 65866882 478964915 503554049 746426511 873511688 211242794 321433657 63561246 575908505 699624027 111388635 9043982 444584347 595433974 508216750 607484109 425151999 272831404 654088846 388265225 658893844 508391683 502522054 267034977 964957604 849845781 784050224 92565757 860761776 321548192 626297094 918363826 148813514 988601265 948986355 405182660 137639335 623555114 29583177 119760408 273985905 253791065 787098226 82716798 386377766 48578816 214095632 143025735 317290148 901993165 96314695 47411611 670644419 326301890 899119060 572865427 890928266 415182760 795599187 401046918 62070084 268360690 45224291 391559225 73175320 794851897 536315722 229512553 283344837 139000464 892221901 60766731 38812655 313131472 183638594 866629103 724851737 356820813 378395041 404988973 881223344 899379133 346880713 538537233 239168536 88373501 927565305 298091336 815043439 117365248 927872958 679540043 280989505 572747568 82079429 540209226 994676511 267416 211028679 604441621 577779877 86846330 451663952 913690943 157380083 381016561 221541470 410227289 587586872 600408411 295982965 982672894 999651821 645242022 913719428 295413255 57204705 803566402 793184112 681507897 250116310 66626963 693559098 543773085 914116866 570135090 24869053 996961430 574108867 308635900 39430552 596494009 738437006 610194189 264199181 241526293 431493893 678951363 826764542 570549975 125606670 454615462 50839584 97441925 500420966 416162691 494607334 552787683 272018349 601210123 767152850 631577033 474803674 581309098 356798872 934935764 672257713 930664652 555292908 611437302 628065951 634005957 485379004 723489168 132457383 550773693 438745591 10984341 325696275 68585867 401700664 649555518 511704362 466273530 849673403 413626070 471108486 779116309 787336393 836949188 610538253 890009736 535412168 705757064 80649092 80107889 519674259 232558323 83434327 310327761 651574734 836221790 599439506 801597017 490912054 728176713 156336869 15244810 559495987 878919130 365177166 187735555 187809898 553249501 474263101 470988949 696349563 356921563 144796049 156122372 849647493 186794753 667026420 386563916 289834741 191269756 873635678 819193142 314228272 93512877 646984607 718600373 90900983 963439525 978692654 178773456 58574359 930132703 397873088 937901357 350254964 889540430 938040654 262316414 546162070 371732053 186480137 711480119 104234654 311340309 81553339 395293848 480585290 377093716 144216696 434584134 331332660 836952554 571727655 488597088 754846646 238357446 388500151 377165819 762828891 376679603 543256375 671544858 930218008 761352646 233878275 310673873 742802385 582929857 791517474 724678076 255920086 308049787 547562463 477555327 284433353 590063019 296239129 149573512 944617111 889347295 749972251 26376938 120837692 319377259 86767447 651907563 944827158 88747017 313004307 819047397 728954704 115767447 543349669 374551631 754905363 834201297 797755482 777942507 204580985 853602512 971259699 49790650 805757793 198985152 307984364 494880097 600642286 439839708 439216646 531162780 765140336 549869840 623152508 859242451 818772936 210392867 897224653 275033787 731293771 750283 119279235 230020920 860923009 435297424 548170536 502846126 885904055 606333172 523181846 496302239 677711493 893001203 39108030 113205951 420305665 556881439 922530616 293867638 657293582 916334905 816875497 411688964 611949480 756300163 515108351 882180223 863089508 340039745 675737782 1009582 203415640 974849936 984728957 771086188 650717492 154317333 156304396 683325454 305469010 524517211 398264426 643532110 556453988 886548883 152318762 449113890 74392909 985648259 681511933 830097944 846835429 739475308 79800540 232677054 582331906 203675766 592908432 143063687 645473918 223912566 391890927 509073386 944229497 258269247 186543509 607397799 17256196 823039192 895203590 342251128 706217493 830176564 272044203 690999868 477990419 814026263 301929985 300694135 400260865 514599578 874843792 534236246 200154565 19166769 124265755 401254770 582663704 43532252 100737896 550358654 432501401 79823 212942305 312914724 871249728 833502374 749169618 994614247 494899062 670536391 971882875 798443181 865487884 944851974 437482195 329684579 208991850 596541909 366989197 460768229 29042878 856325630 483817717 788720618 472130367 286657482 22129271 283277188 170705041 421317991 900596866 374012827 94549314 511789874 671488624 573982826 835653476 131046133 185780795 152759752 660740018 635364728 942180305 663438447 925621713 782947491 200662398 201833318 755910298 378176393 8835559 292171416 67152836 372607845 285134636 292703574 706963920 546697981 114835398 217240962 158646349 627824674 948173033 55086843 894332287 974693017 756155684 298038547 114078492 458368569 722905017 715502641 811343427 770615044 142110137 792495672 776618798 585030206 714548219 406122136 978309495 33270885 848501021 573540638 366500419 425548335 886704662 769233406 737778503 291823296 651321909 515946381 46481720 44896819 980538457 390274749 206328598 165321816 127850207 10490235 395627662 401191610 65251175 898658831 409162046 94290233 440544479 606889952 263160565 154578081 745421871 981887259 834278594 431635575 510809931 176176686 332291952 585563092 105112903 562827715 269531629 533426857 147454717 881141850 717572222 737655434 282731491 647257545 819506317 502272836 186189029 959656851 633803650 345181642 679983524 627017888 77320916 390052373 472799973 669170427 863158027 297215134 914176364 210010003 734941620 675303085 411743280 343736145 365511243 134402324 64138056 988913967 225593872 572508667 221225992 311135794 33356768 484874616 918294072 259168138 554199785 818483702 816165448 82196447 691579172 247688076 921867813 51337315 133940896 856584456 612332363 678580473 505038740 700118205 998064623 930580475 610751935 368424879 744336576 533930445 382470501 181206341 186978287 197371615 968030477 316598001 868430078 840013831 433752420 743140105 955848263 951074626 871312803 427283328 712642143 516107036 215466140 762294637 112117905 484525778 295411974 846949306 799887280 577634578 141330775 774149070 2238562 617412620 225141682 977576167 475132717 938477382 910809196 359335386 678230345 610549430 650761454 235123264 920816459 816299987 298518503 239481917 53098725 235336350 16027121 763918470 941909205 327332957 480835666 163641562 730050152 459427229 41428577 323844953 42418316 474363844 671693130 648937476 773371732 113642675 46763451 46560148 200296718 974044491 795889734 618447411 648702933 11516974 859089272 649237759 347447661 71048024 577339786 189805473 811132443 521706305 65662820 178466924 468338689 827858186 893697726 525113277 218571160 746583181 463142374 361403714 380543372 977116254 236758558 153020077 498035817 184151817 860025502 309401317 628248383 980424287 616547256 127185018 447191743 117302766 195319968 975384295 989836838 524379109 537825139 849127785 28391057 101771383 276351830 11550379 4981643 259809590 491322307 807973495 795525907 431798974 457210057 241344541 511490680 288460091 975393610 97222087 504654282 866024151 971679065 146983485 86849136 59769086 466829541 398122256 870626760 301585029 613748036 886391964 798180346 271909167 266175984 331892563 37637380 86989262 637581042 495449062 727706083 52712930 383582056 156278603 795682093 201811836 576760495 721179255 902808649 754742308 459829503 547677135 318934151 340601329 832176645 459715429 53100759 102792869 195552922 755299632 166480445 259699178 960889215 595335886 3809310 757017152 478235556 46792547 152202876 235860525 142943495 895696840 665306690 222468504 508260005 802235293 239774143 714440064 417361716 334174145 740943963 71162606 647237540 442272747 868892212 128522250 193796098 576889990 335457026 919447872 632070183 471017042 120980988 153515093 153377297 40069186 984774240 830730870 289069446 595958742 760709019 675767565 415647119 403932219 369276354 328754572 12658846 815420556 673416320 909603880 130953144 623267756 219443693 221645384 59653664 989812595 581536249 785431512 159982035 305302072 83565863 398614141 786801765 924445909 127906241 883740885 701143202 283496769 657990176 292873322 425367837 59595232 51681746 594842420 88741133 759531857 149514570 22037295 146969649 266502756 445481761 627735884 591460718 444690726 564636218 831808672 219820158 836936229 547335228 700780021 90198537 956515716 799971143 246302493 121759314 755870922 155683906 962693384 207504414 374837188 33139812 355034288 661769025 330861113 825383581 517843108 927154203 511964529 207711187 604593825 709955141 320779498 168466754 436414532 152646949 354234270 438643049 475291808 912184380 637655054 270127296 215445860 682444107 909760122 467659543 884505862 506015863 931224176 132167329 105228366 867862883 25801313 322984362 71390127 253235481 503263815 354219447 892007273 922428570 660679688 971808444 449370524 898009802 261344924 482555351 753993446 533119275 920142659 922158577 730912208 253077318 948522769 838629851 746862077 830643726 267109409 232288654 675184617 346679102 361989736 935539332 290631532 530008405 11653975 515916054 566140307 636250686 451640999 253769433 566897962 269500322 78940166 247198416 700123507 247033645 295291787 826612392 487417596 721234687 890867463 984109118 973069140 138620164 864836246 840941393 895129950 785968436 554042771 149914474 131134940 243964836 296889686 801599344 820808950 781975238 15600403 165502512 472383321 701415772 74423886 435007701 107440207 877485957 319129860 92367721 56562760 894706377 207266023 911407910 356397957 794914593 984321060 656922290 71511775 128432001 80529312 553125787 722389677 560893433 525833724 860456042 940277274 843200621 371273185 628985691 825469738 316640956 384068399 492518714 4737501 931867463 366620252 680241677 701094605 955415597 880395896 852866453 43013999 151802818 305332609 140825776 395903665 158399873 99303204 404069007 282529374 90194028 770437457 407978403 146657105 999793084 876137616 536503841 398056556 65472815 549998715 433769513 890669451 777963570 59727494 596185221 650759048 365934869 273456257 880253565 236318520 392604065 22780261 805101042 336929384 161467774 293172687 72302741 371563455 787601368 958884820 577631293 599866687 474695412 615363419 461918967 814564737 336184508 19220959 261736328 791453204 297413294 180250787 461907969 535418444 155430752 794369534 770292509 527143591 867881135 541606898 199271228 421702882 44186442 767264613 895144967 828884902 983934751 456429480 493958177 247461456 371751704 556537280 255737797 678442803 292726111 432722196 46480056 115732728 147661383 867231203 786020578 475179274 889186017 474525833 740140864 71492294 880219143 967384252 114119676 130911372 63508875 785787281 732737119 678450138 154439667 576322344 878862574 902414047 374236186 471113636 360458123 774955054 654216148 382656453 726653589 505443291 748019900 544624690 595803496 781587462 653816305 802718553 678060379 545169271 503150091 899596608 678877310 255934461 406972327 791848649 989584830 600144871 726584306 177389804 693749386 248341318 147829051 735406310 406380891 46934087 283466614 57491689 226053559 705417475 631962808 153468117 796327902 401953954 426271173 355702006 578404329 405121050 825276597 191459200 64558091 425358643 803408137 886424522 48879809 605113727 386711846 220711089 822150560 717008796 113733273 243915863 918646368 955266707 607863571 899177111 859478675 874588375 724339145 268425631 204058107 995032651 546237513 583216410 406671094 931028797 389487880 419634053 518871090 64418881 344248496 461292984 136666526 224150669 672775590 535719303 686785022 785050919 56089759 848263817 395839965 336812596 814790112 726263683 676029101 552821459 237989180 494360333 290202323 6382370 59893292 268198370 182657775 336287869 506584021 326456281 319436964 370036317 255149061 251574443 200763137 375189218 281892423 366031982 892047874 786169815 616516775 914390004 925347281 249328325 657802024 129547087 569865466 485179373 421801814 443129199 341405360 615894941 880504500 7551049 683632326 852022210 465090171 197138151 186955957 322893522 269980601 74335501 491717425 417281256 465483310 792311090 402830977 553810790 938699743 184150581 87432004 777214935 69889710 759348334 969350611 122880063 357538831 587705709 95571770 660217373 788175106 200685308 106590160 880869400 883217979 457651733 670080188 637119163 194643315 153573924 22630744 23425569 292370102 665670766 873908187 276308892 561913848 555326121 825119210 582875848 133081400 358038982 88553275 499008011 320265881 776817209 283203717 44977066 825628932 515107955 240435766 675311403 310178064 736370601 483042555 591248082 132213705 623717373 531039385 357029890 601338326 656217590 107510411 349808320 276944556 823874018 457552200 106967742 230054704 521844992 577493556 889403838 111125109 639658482 429746055 577480351 588648333 993707808 492474456 553446299 266264305 53298920 126300881 524910543 192822429 939823540 80475806 127183974 274823400 55781936 756526495 817519791 344454690 728866191 795356598 813169042 48489012 918405849 565923641 534382807 983446780 965625916 5557672 916931252 741267179 434295538 446853877 43692660 629137864 431005452 169514647 500431157 108458936 94925818 54147564 435463795 617084182 348472813 364350753 379547099 823447144 716188551 730777620 806505615 134017240 292118903 172441672 884423056 487051302 102044525 396914800 237284463 985216526 841374483 977518765 297336096 563553260 543308115 940403808 449622358 587886753 37404794 751584641 307840604 370801809 156546581 918046469 956778379 392032458 451499051 34156368 99886467 388965113 508223254 128910398 586801151 533262464 946003599 549871769 258797564 781770193 847384939 864590163 295523345 234741074 628869424 931803060 620562952 619877446 634491537 205314612 685124002 421924745 35113160 812411458 859455759 250279102 599191202 336559902 107608001 529913632 286170664 296305857 304196953 151719143 575727212 631479158 308960683 169823847 5680773 669567592 116257980 639865408 508905195 151814239 551050821 372697366 468424718 123717712 257332785 92219326 47803701 519131700 284895930 575910790 974121035 937432543 421603229 135862148 635769044 785686116 507674569 499663528 356280280 337963055 516859446 701569423 343302275 318467663 731392966 428773450 736120127 19388971 679962845 484126989 750873366 64480859 525592795 683493390 539680485 926242785 383858555 412017041 166374400 836900605 213698996 236465924 104506107 296161359 956277612 873739255 980032346 222615163 152346332 438423585 140361616 224107916 712711369 286834868 491322654 526837868 178270255 594119383 277880635 127488085 207209672 338708067 22496587 256260779 505650204 26772202 848590804 985424438 102630731 916055309 307908776 280262860 811939497 594335563 795095868 946204162 646716569 768020401 239157377 632484883 698303706 200212591 770363351 856441205 852406547 397146502 287586676 351373631 870219246 943585621 849419759 249130322 523934606 653240964 839724033 581428941 553577008 727406474 621056121 645526572 897189472 32563574 664376109 651730636 904067211 658065905 300593333 380825573 391512927 488640894 393843896 83675772 812667278 537571266 353062908 86878422 791178535 899719371 565940705 687976157 951568955 5751653 426879870 666829500 457466421 535592960 675212022 863272606 507333809 330432529 342868040 816848999 646934783 608044896 415721598 510701610 189630987 221262890 2985357 900581440 59766874 671617106 766114972 800644291 372044532 456454593 572376287 79979295 423164833 804955303 337492566 332945300 849283538 354083383 770021414 711087621 43239919 836420447 314673030 316867548 769607387 310387002 486671903 477828041 932232099 971992681 94663596 41005214 514137725 983030354 669323155 688356886 684772872 193702764 999234941 728656728 543751752 760397594 963331764 933120805 988410900 253886175 769678431 148410569 410805095 274255845 507677767 916560714 999579225 172369571 68567864 631438381 825877249 496702938 342607511 87957026 3264667 754900651 429390078 805173059 787818699 488165447 531388992 218297720 82549169 513678449 660327092 169945422 486865026 990865416 229168403 40961754 825037929 427521135 316080496 692350491 962372784 527464732 507631695 306846231 119429934 759139063 667175118 543406034 393191698 98017048 666284934 685256591 100421218 473077125 336684158 78157422 999388443 775579782 435942149 687098638 415978512 239983166 119583529 991930418 716138366 77265640 495075826 925475458 209383620 277530730 655514968 407405583 255674782 309323880 148211692 34487324 310997929 327351922 291546830 132424850 507717835 337324537 667712548 603123685 47748048 388434123 628832663 994546559 895433169 960255238 209578975 380391169 640933390 418143494 57504880 808667881 559580746 713018214 212639500 155282483 29320080 549075400 928626247 574273009 642812347 113543357 47256989 305183730 761481759 980164577 743150435 34896663 518317476 618418694 322485308 771681175 607271266 192103987 55059741 983292148 390080898 470710495 747104951 960675549 307943903 998402644 229399065 412054266 196041776 312414135 773119420 873853369 316799404 960856429 360443760 710506543 996453941 889428145 232016457 200488491 472830670 635870634 894648832 806892700 596077463 795791001 795271050 685644985 730201996 614954416 591069073 336615951 129883516 325809684 587920631 14354795 313361651 527669928 569765620 238725971 958789605 794975945 649642013 451047485 892137313 590547631 987390846 897635133 195735794 582359554 738342025 33327073 130101268 755102306 493976492 83033339 314007685 605140310 263130566 270977697 763595538 847726531 783213144 37627501 846456494 482091200 796804182 468978125 619164766 460006890 386083188 614585677 38969534 419084730 538847235 958184085 636675813 44043002 524944702 357047534 987449973 394722921 709598963 595363470 371628609 951247407 698164847 13328735 697649139 205492787 965484724 648513795 103541425 62093601 678503977 141444026 244121036 252150038 616440148 263513151 216137282 52511201 4255589 71270062 273729242 819718716 147003252 518537255 335153018 855098043 190554941 188958033 640484895 486564866 700732690 868156461 528895931 178182877 473308045 676563583 5072809 659903866 66472370 665923618 768648962 899843322 267478840 442763326 844417021 973428322 262561630 271432147 553613299 991275182 316712561 670596127 674061598 261507737 402964263 463773545 136247489 715990884 34589051 8704698 239015115 227471617 359685192 73543030 11763980 492869468 735493775 147437329 753327434 55443393 571810214 403622016 281330855 667198728 525900752 777314916 512134094 795268543 935378857 216922889 913503019 251436515 797076587 287980038 67271044 790954738 674990759 762573981 442185104 503603773 460720589 245523272 891652303 417848700 453058345 588298264 704390170 848801521 936254498 359952257 493442253 385440211 276244062 732617203 197480720 868302500 29287739 887279518 702524056 604279245 977815875 878277444 153142602 817520164 799865053 191834061 58044939 275417765 425336824 248500064 861284560 717709619 916996163 465464465 803628142 515987616 885219559 803606793 693544481 331095647 850973616 999699811 208691187 636220428 427794660 191483120 562378485 570998034 318529305 951294919 305140504 465668943 719101210 316310335 855699727 437360223 389278065 803647097 272380481 40685666 268114424 705462091 644884059 215795554 242781105 707976179 756854670 711097136 764458439 105433258 212266372 739273889 354988714 484281411 615687366 651536367 670406832 589331052 849501843 42515095 713084598 532888121 16116938 172946425 151179200 122099280 878744707 757469680 72736402 268750141 813589552 607649095 338661958 158745000 693321733 51045653 129028803 527138172 269675265 156946133 942963436 289688159 177442003 586974997 634883855 53807085 213357431 712345268 824822852 781583968 727984321 212374179 834146784 67171574 387067562 182006866 673397117 920896733 260086320 518124602 235378606 968922770 980515681 874367691 919605586 998375355 856522464 139062154 881211752 962531355 298238831 431437412 793186736 157903773 396549965 193879948 145811328 783338998 681029275 28599621 363127400 652688306 282163857 354001487 582969136 343656865 364599387 233192523 874846024 145575344 902798051 949577137 660449147 368217344 328304691 857710420 732106905 26335818 964137528 578292985 186578363 847554877 589345425 143483750 399654235 700360034 112723348 413188343 605335188 958649680 935633992 56262235 293740807 150906238 509955388 60961484 384865852 828114557 850871077 67553964 640132135 417474602 327630753 278692921 687245411 110286370 554938631 807312467 53639345 134405110 543218656 927772457 971896127 65875416 397756110 782040931 589741599 13018629 726863323 408319192 190103675 776154932 242493823 1954300 211970049 50658108 475945164 978545747 898690161 832201190 147756676 379491171 831677730 750034937 253455766 904844868 687605781 933857874 97661791 411667282 547585308 61217509 108620721 739921002 421122072 771333746 974379896 170571494 690795148 318323159 589584101 514730409 512735048 550566496 86608438 225137696 853088581 546219118 161662379 123633775 303371819 709199523 506541257 515055637 974824844 622630697 683226683 778896012 679233332 196057883 328044248 418638392 198783992 954486573 957267395 838483099 365735018 539720095 296743667 323117762 219936856 84768357 109257860 749826323 267790309 694832373 331744148 235337163 55302649 245601167 424265866 604505032 657247923 544174887 493057146 269360231 670064473 984453265 793980455 955465981 495261987 852620634 868614029 273658455 499491719 950830830 160264458 609125190 858946621 945856838 37010632 670497051 641632452 483820878 737029579 10542793 616643220 921107744 226943949 568770352 702652006 703590609 211433785 739623851 691388206 722932538 958273996 42839595 397552928 554023097 968707825 952053441 360858728 894525143 324377016 403461085 47508202 403723509 356830266 256152210 389946670 469410221 538144185 925973506 320403950 369654915 838531670 272782247 464944634 913606802 173603710 671441890 388864221 214989813 780603803 91030190 42108402 676980486 831469061 839460660 446956947 937537028 156845294 193314971 649789598 934784652 925857270 740791131 438795356 796404766 532044542 787939577 905962133 362314636 865562344 727219919 511058744 614588846 589376147 890714589 244012638 848807816 877200906 234295381 696047437 986600726 762225764 213433355 144623240 343757390 68462021 346799048 902765059 262318550 400488416 1368084 257839255 391704238 409330713 658691970 288857782 395550042 136165041 321278786 568700748 487636059 829769390 924118272 530188705 919909539 907215463 861764676 215215882 841684370 211244416 294011954 433109571 628169034 184104406 163668663 417232300 351015481 839983041 134735211 103060454 109309613 408973422 140017455 207812853 629876888 364979878 426631814 644669017 453808820 625007686 584959278 774739571 469792201 100929769 614212607 448950342 990218619 901712274 196583576 748713183 710991010 378929466 689439873 490201122 92811128 592871188 22234013 831652309 839270194 227066087 518989797 998402492 475851 403623478 954465137 898561832 471999100 986141638 272122638 826323491 93590433 578679083 396830962 404304269 753653443 440655877 995522347 43407388 263771671 326401964 843399469 545715573 36857350 486782039 796834466 212958717 63652867 636831214 760544574 902636006 438969295 711143093 901884952 591293716 254204358 47802609 825709923 509122040 558148138 133345666 582841858 937277504 311307207 941809063 740149978 194794362 910212038 823448297 960346891 427273170 277575494 827532109 333368296 30452339 148922993 55962234 75184837 55352471 57735403 829241736 888188952 887032306 486409012 219342075 381419445 53340293 707776380 594465752 632813599 808254807 543997470 7767629 156024945 559142519 782712205 69353026 714914826 360194354 363373386 21542385 650336392 906277751 387366434 537397909 869656634 417772540 818637991 408198971 184566850 937592612 152129008 891447357 124451731 2776819 868858611 113814072 922802334 17620424 46551393 954983780 225146627 678212927 751681339 935432903 106379950 809475743 66054913 739545576 240043393 622343872 512064064 674815446 191258321 443282359 6879237 462817913 929041608 291615280 457754727 461182653 454880371 613297845 827382653 330978509 720228981 528725311 263674530 377844047 130047304 166558651 251402909 534408510 711762658 740949926 264947065 132058248 825577661 51167291 199554707 181961469 106504765 61308784 634347999 939378085 551745638 4766326 210482663 55933740 997695392 667074283 157340414 631909782 45618343 713406786 644625833 993320077 220885300 750518914 368850772 139159298 727533585 789084155 993117567 821466060 531991497 682131272 401370322 180200033 554073115 527121975 822248328 536978155 70366156 799788045 909349096 68625905 237161487 850213350 623733759 999920964 234024669 356262430 589560589 304145304 820504252 825141615 392155417 221207574 266662126 815682674 2619423 273485788 553130165 698293692 40637141 275860058 690545731 625231748 691219766 882409599 494675508 412914405 643618308 487291772 498034651 444590812 701018486 634077857 247973861 40945833 863971421 622860532 69039837 889082927 95282518 293009267 518151102 799009709 132966792 803510055 243736627 256280334 122859439 255844592 896370433 435594155 622850953 94303690 827728951 514668302 300715030 70376235 222868445 965306951 966518615 86540061 753496733 90405952 465431848 777864339 317740895 697869936 882518609 856601200 506648585 935544653 205091901 828361780 366945914 106323018 552415597 180202034 126324413 680218721 819077282 338491777 865823710 987129397 504306036 662775762 254204525 374346956 891674597 141563844 27859778 906331615 952178426 545925719 269888449 80177752 68760993 423012666 514336426 451030422 286711716 426967747 888527557 892591715 88849701 20346534 727907431 261816360 366415825 641561772 241456400 683741249 815157658 801330040 402849313 204453840 822957664 175658 582560525 328505199 337606892 473661880 911177149 123199191 197469032 799147168 139997689 302519588 587872841 495685647 86250424 514839504 335106457 50818490 821418185 693325289 319222999 758231765 407270587 485302412 141302813 164214436 279120802 544385197 223710014 578461863 168169814 608345131 766190073 836284719 989781145 522218473 408941089 567792544 423627074 834790690 325299102 342900519 786481518 653445337 633877576 952918997 660436234 620860963 223575260 458633470 647071906 521558965 188252396 148531045 491067837 711173887 856332163 507698034 662466629 942619685 635089520 813033425 831747243 220936132 938451653 839833400 705419719 87999376 913933369 277785719 239836125 728882101 15717100 263454096 128263929 24328143 57570536 649891186 415574943 775337295 757223898 397687470 864158328 444870797 100367636 360050804 139592200 366962227 620416580 234685938 376821721 357849172 157045279 852115486 152345895 222393827 375217961 684762435 971035054 338876701 297888663 518726768 553707737 146145486 927002708 960728098 239222396 886067834 549524801 892536077 74331990 600648573 148741631 982121274 967012622 703752133 55148466 747424667 568467735 777432720 752487142 123733083 931484959 487159789 492454113 418991992 469017329 793753598 818968541 178497729 308409293 343755397 83434822 764005679 96630518 128863092 4811920 95280300 155837966 440327725 609710361 523085567 910527626 446204191 976831132 985724064 424506328 769123531 366592922 253271405 908077700 832673078 377482026 172249156 732426901 398033252 394580599 748741330 701213981 908459395 984869439 863600784 549416658 659855052 438946130 542042060 973537754 425514942 619192576 290161830 957203951 462631159 776759340 510007198 18463272 962199750 911931191 229896186 8719946 627532485 435196630 132691420 899367460 401799773 292990103 282098312 893287144 214843994 386517235 771703479 727348655 848863733 425365759 394512416 306037775 739155427 145590990 51466006 235903727 450170455 896680217 299825816 750574204 689433926 669700972 208413054 436226515 964289898 449780012 684153352 459723635 86064714 875422087 784950609 734804422 954112847 704884749 559397634 271951262 415789914 5672357 749231110 528207492 630036169 405075436 680068981 428686149 99623484 484616188 736493970 183906792 355607739 88325526 133551685 754180125 33263626 215004550 83363352 810679857 354418410 896185323 875129384 299550667 881182136 260930191 41088338 337520712 391384428 530542641 157839068 483010163 403485223 376913289 764359379 870577422 781468335 511674861 234720023 478706706 247989586 538018061 416821948 742084907 818604706 924526570 197596429 651044645 985279078 823770102 244908111 818353628 699383127 316486635 626090920 357309390 379751167 19042266 313777570 411468069 520149992 465157386 773116449 959669663 942201822 236948769 590818802 234210710 57415670 79498429 44905390 477456446 27611238 942535786 775751859 767468937 81978617 994988673 100378829 147339866 621077952 100208279 785489087 313420803 402862848 120096833 622530260 197317494 839921744 433029840 743753386 888510523 678435573 49598044 565366099 208510405 638111824 12859548 586326782 507697952 129649089 338561537 614952432 899967217 366240815 343388962 265433701 24194850 928333315 777538942 722097103 116151413 63178164 853471120 727458801 534654572 148344025 229301145 514140783 617508430 123314316 108166707 551686953 306634748 460118372 662482341 33742538 422434550 620093050 651400054 174524295 206724486 262368437 985010414 112633862 909063422 220096988 431311327 698930258 262413870 937216543 460099988 266778149 699830139 525613807 762740889 28759062 861533890 680920634 576184169 931621235 125279972 164479882 139090513 402132375 573193636 210554150 131407046 153655398 533722989 825515281 999291619 492098072 413740387 679168913 209235995 934473072 86572009 814011869 596612576 475112391 849845393 676293540 270437513 613373122 399984579 60380696 108713243 35759292 845960749 723046538 831134012 105831419 981450174 144576988 915944771 549206467 652878562 766480400 289716464 261438461 75655737 291022583 93344323 751254974 391039383 961638731 425279188 516665084 684558670 419574948 393210764 712275188 902165967 580493120 381398873 749044346 249166875 127537050 873724242 10622073 987333105 771983489 797819124 343433805 571524491 46326557 460653510 595221015 106692461 960377710 434625485 62160552 949926098 352192920 762013776 176517894 188916710 673572272 579217830 749399894 735154302 200241874 118398777 434719057 82301414 586715400 72585282 907414974 791173518 423082141 403891124 72475162 436333846 819565808 342634819 771510672 285347278 287097475 363871121 464315126 653594141 122654495 970137814 941060105 60228837 190166274 680108442 533319549 762752377 554943174 636785884 314792393 760442704 105929472 943653744 844438385 197747936 150813362 169972103 842235222 239471214 128871787 173153754 89253617 946863834 244771230 847928130 505351835 53855095 618368713 937077748 737235218 283261123 854688717 991258298 458600917 337047782 335679394 438718037 652680293 822221320 311069037 235826653 754749545 65983133 632646788 237158965 527442991 696570851 832913877 592516792 765414647 939438905 659433443 544300588 314230065 725652852 379800820 606711079 614120749 85404090 908900557 959297389 474642840 416025109 628310652 91441833 654837882 253085326 396375145 733382486 636166552 587205795 694968222 932192132 273268809 798590258 911591454 193681234 359273714 854143250 250915556 983916924 782629560 423566233 549266434 146018447 165057765 538186717 111258527 678007628 636868261 517398314 135780905 854633099 880256044 550321787 117251327 370535234 172844779 905812620 64832814 124540057 440290524 950181958 136106912 61100823 999304438 576059140 583715276 876213248 777930291 518685275 38679390 945254026 410872313 325327633 43800460 978831733 269243146 476713808 433468124 928975749 733921104 639852214 177963961 205405041 137964336 505198150 421711821 110036377 400676579 665899967 48281539 276101925 432133659 420214408 437710931 957397061 292425001 24762350 14057404 345574781 127233029 940559478 407084462 774922055 987678091 28389141 748574290 144345250 983037185 235070348 800766077 53840424 19687115 279812853 461952764 117228376 619917448 188000301 787251119 108773051 523779910 473713306 688781968 962327287 506224337 798029431 689676918 378193177 192850995 372759548 557007028 747870853 897297923 14834720 355616458 831276768 776764333 857472139 536742464 292064331 533649533 437707942 22320444 672942023 141643080 773500616 796898744 909527575 433336477 681431418 518073306 88269940 782057953 666897597 731278456 989195628 542104422 61568874 808847173 630846060 525528994 945778498 61038155 853686903 353566910 122605392 80961222 323607472 930615234 91322893 369418158 525840667 239385963 616653231 13561093 17244647 177944871 188184840 627009227 587044585 691632686 764930971 884564510 831994546 223903153 533321076 46682807 224268783 863630094 553164677 299734196 619912812 694083934 647458596 252462634 571123074 55766001 667241097 551490415 86115063 431103198 862962367 828765802 933195223 307558514 533976764 237420850 675088033 344897492 652184339 336497186 360081427 116875584 375517461 595692595 844848336 904950744 619934005 807852593 233498945 7897171 986631790 163806050 817964059 495017047 558021853 261766777 202647366 524497678 835716517 515342311 796359681 930645450 310360858 134575075 906500017 340890039 554023529 752177901 420714940 701599717 878822592 935876787 524985655 893951701 219076006 372263414 179298101 491461512 523154973 461922505 242045288 704995036 423802931 593038041 479761965 413065146 204671036 520796585 728561920 164095073 802167247 511399802 888566145 323296085 239625985 935817079 561192167 201403392 731064239 752213763 287198806 653791853 974796562 296470567 615625040 515291161 271315418 781825273 207024618 335022808 431530547 534945151 325315620 766754449 732180600 725452229 183874413 984975387 831184076 237747452 483627374 623367014 301364300 998929627 889707213 573067583 115977870 477850387 479244191 156414543 564672532 536790674 988030522 365301890 342675406 702592633 848243382 573708232 447354292 368511423 741279627 154738597 7113501 150454580 950918993 553861612 7104486 597897588 628452733 114279668 593317728 936348166 441943229 898032907 224489458 158807487 728035242 722425931 395426061 780444272 988401036 860145711 913037806 798197088 56604667 354469418 345658450 577777175 993819103 272926127 169384614 125775924 907396982 768601495 270362926 258102150 458862780 404215094 387458245 994968552 944387883 999037650 60548394 391522711 348156453 302796165 507808196 533165136 109766631 798396686 566511629 492393048 960743612 271955840 80002069 742290807 837759332 894809029 689547230 110937733 591147453 207382792 547540313 979071403 559360270 538679777 687980504 939728129 909247400 635942953 92201343 247442035 776554441 515006423 19977149 498683006 838960855 17620309 509250362 679963527 61605559 470526724 144600104 730815388 286935137 781953563 321891974 384064213 110527827 641102501 567350544 291240008 989804180 167451759 288013023 940741129 434863079 5103223 733519198 118200655 524115958 32879203 122112175 476754838 502003838 883697368 445486729 75594287 182856515 450910687 996656712 234888475 235516024 305241264 631845925 76248723 57477983 847229064 151747894 970852401 99521760 852267630 112016912 313663272 297590469 428753811 882291794 570603488 765368078 307898691 358355310 25318678 138432869 197868535 253629717 615626809 995408566 246072015 30072461 99919322 766221162 579806702 989423196 17440731 797805711 799724256 618979741 675429672 675330227 194753892 76563695 660794834 890180261 816275006 718566618 69163847 717981277 34261273 194700620 767897738 705546509 843669871 405758609 7702112 701880164 412464397 288230003 207089817 481690115 32421134 838448527 694317227 419608555 168757180 185843134 966993501 847079878 351462380 377503541 880965595 141587127 201935163 325539269 581726622 45975196 150867808 420530349 574013359 715535451 991722194 428165587 657689999 608211984 957569425 129334342 423525778 592981295 124843277 836286428 508980638 171188468 850611894 106021808 259271891 932730739 38200723 689207454 216624615 836510124 885690100 523579340 392332881 606175915 574490362 609884399 762444086 965735485 466668173 204149873 737709140 252149538 366596878 919078897 367555453 921165727 484558922 207287183 780098968 557702900 793329247 753555190 876984109 660672766 612807676 877370255 732918393 811585589 802637362 723854933 547893243 765709929 884187482 503367744 723770573 327995531 211479640 731964010 650358926 901136546 885696505 433208564 492492098 364939750 298758354 585500289 360545736 898476974 450806843 889681819 660543806 597144212 818866979 361888503 743740789 413246928 589212465 359790161 148470240 415482457 371569505 394894828 746044888 892723081 592620587 698657350 279728396 630128175 391799625 236568866 917755613 502350401 536659020 445177873 670729693 510027186 809689239 443531635 663477889 881730120 62431757 518796835 49558751 604175245 298181917 166843334 15598094 83078485 436650052 595663499 246592858 170239644 23896463 11502112 949038825 971360105 612314168 709630772 354272639 68721271 266626296 143731748 308667279 267058465 379101758 577715030 494514717 520353922 155006421 614938901 954896391 853003404 709744973 19278472 234724942 275030539 767092107 292328579 169896366 723230479 599697528 449862752 516359991 26539073 791563624 700251475 18482489 130355198 850237904 257008006 610736924 8990596 200314518 620807226 942208799 556346320 772397096 522155867 355957849 300041958 794034115 889649846 893168258 643358820 199804012 896772754 655562230 390039576 736812213 981620050 890724387 490371625 192042115 552899511 653846975 705962857 466608971 792266277 836587818 739854656 861303161 484566522 581593146 846779668 186046971 824890768 132771339 553193893 823150485 607137527 690680899 683791992 13545910 118324370 237463135 368559390 825668135 604649181 932572029 669183752 659920100 963918490 834783880 272449588 596450997 765043743 639040705 529996049 588576721 654793019 260031126 578929290 630787724 532495735 574341199 411373091 226277509 118312168 691033805 114781019 607629442 563630376 790058927 623793834 344197117 615027084 894558913 877983935 619481215 284897297 528732287 513446985 696942169 627785917 155893505 365592099 177808598 796426810 263903029 36726915 750166838 22936366 489809105 368877676 530165160 197779761 919064434 313961581 150933016 271805264 330631244 73411194 943248427 265662524 487152692 508906983 444442064 547201997 684560773 279335174 192816736 118124775 115570730 597395735 584104182 399765429 563193030 649678157 393158507 199829371 203228074 626527893 865575414 905099059 449106164 112140330 173183964 117479145 556327410 278594753 968632581 262628381 757880390 807093527 137900909 911139218 813262340 570781859 841258895 941633419 59209605 444612493 536970579 19918874 534127713 900382539 620891593 317926531 170227099 788219315 635409415 899008114 434233240 862710518 292404441 431789440 625027475 163815661 585370816 701199834 61126121 188333754 14103223 236340627 47463483 110041211 684009946 689202715 4317402 691666502 686402735 752628123 856502679 136377251 441586492 541267497 824332317 559542774 307552684 715872456 663544452 546304583 464173204 970846232 183932902 595315132 336810868 152754797 55563444 134361215 461799498 311086227 700248284 554259984 920981110 905535417 958824597 843558050 517669792 930350203 251205912 726446819 432123585 5403268 878321845 828950391 11103062 130563155 917121253 115406590 71418040 761812473 385072194 830962948 349700671 11530812 585729846 239245301 292555644 692140531 928352161 136719689 96498421 642113373 687526313 860688523 308612978 810005673 132657909 357463522 306550506 909887388 558382730 529385721 159550365 361412874 909141211 370129684 879769071 171484586 190701974 240281895 319028157 675924763 54815155 763055193 818519555 170844100 798017825 955632250 101261563 953299327 56124786 814884947 490428584 710156633 401828784 122939382 806975505 607429566 748040865 91813949 651985481 249353319 414687685 728142480 507775383 192080477 425207370 269403351 92573958 805424985 970831888 627674699 730965260 562264181 725872783 821370873 702216697 684447760 218644033 285038960 795246495 433303194 564714788 196566495 559410661 440467116 222134783 95337445 461160898 672633536 407108274 818224288 537818859 107114685 53590669 191104266 192187167 761287598 642956582 371286904 156046941 80649172 264417606 80117375 436416253 821587963 792548743 946451210 281061448 928029612 497678180 108498209 716962308 267071331 789826980 428674015 11700884 81387996 744448918 22158291 53920710 122878447 554156436 588208982 999102920 232468545 808079217 835384058 320889824 423690625 905999215 965369505 875526773 230140156 141591971 683737832 138900237 81050840 917705490 257173771 212040582 310974518 332476046 259557447 684537628 413113430 219670945 479320550 456716596 233243310 606636703 56320959 636467252 216317860 290157015 10233964 346192636 201525267 584677240 57441932 382305270 591551290 178923951 848398909 788754790 899984044 960750978 598064265 205071707 338652291 638994152 960380674 43775367 638231228 713604438 249123666 191502912 900097472 671979096 395073219 482215608 710048998 975115397 231186379 311814000 747416899 803731748 400451399 224034254 33215291 408043522 129186086 695093976 721652597 525957671 176027430 472403604 450625644 34053536 46676901 773196099 287207333 862579030 808405910 286900015 84028814 141705222 123038536 214995398 609696900 16928840 812786806 689801052 685956022 467665417 971174834 855611391 379511335 113110426 134326839 633754904 368239301 431710114 259371037 431499218 9478245 141325471 741651796 617113710 151591216 737641118 957237400 411874939 821854306 87955338 594629051 92078373 788727799 483333075 293467601 373856869 718098143 28650084 67253147 985610265 742210537 847376768 667158629 645591996 69328257 439703145 62868593 883517438 66931038 564083623 223776049 679686605 737321754 63192555 494424021 332745437 940907471 473481674 914917473 852091092 161786335 838256620 44633136 734241810 678243446 897702472 133066966 518498995 13744682 744952617 641765077 628386336 471233124 429845554 646842587 194059343 321657597 22327270 118502355 761971313 167270970 226209500 454807803 331956888 524496279 926992872 589456910 584705827 824121898 83763344 978044723 975479679 266913475 563237834 288888454 825615859 579012725 675154062 276390725 167182810 332023687 62823318 241287064 258302393 158404643 978143966 138855387 48585793 552424159 881437129 267303515 486923982 560233443 164295907 435084590 227362163 824220019 462967148 333715973 398981540 422652814 442636379 394230832 793181260 553081954 702454347 960377709 743533477 142176569 483341129 747188941 409037067 360411456 813493576 71592692 967307200 24863833 897955143 655734708 557827058 283236154 867914435 661658808 431905977 462319592 864742603 583884670 222032861 321220614 312565517 813079940 402805011 754883689 292157791 30713177 679629891 177224331 788814208 783555511 526406740 280504335 19317463 194037755 514571781 800756601 765768596 562541592 113837049 176203411 299294598 466983848 777301664 521768306 895787392 600324556 692981652 165403070 34443903 109890906 4364901 65347439 729628516 944630120 843081559 101127782 509858286 25376327 495670479 570723893 254534075 399475067 106142249 901392477 535707553 372644943 870962957 222384768 335774517 615861214 622994207 335541534 326248329 68961366 699304033 305074473 115069255 122519710 115341214 817281136 641777864 250674305 930610733 277878350 723390333 505324182 648607730 333622501 400446649 235725961 985371534 705458643 90060257 193167095 918615137 354394724 281680461 297831145 602681635 647866198 675298331 513546584 700115052 692449698 82256516 207562511 197104215 376988248 102225531 847087826 1573085 573029537 842561947 467823947 205483532 608010978 123763363 964017743 716139722 936973728 160552678 681691019 202781599 877923872 606285153 9347002 140662232 587189170 613983009 700941102 966708942 530182207 626840656 310824388 239295889 337030198 194568541 725220511 689034391 602202499 19029015 751584430 849631766 981750639 950480428 922799283 721248473 505914609 398751306 71056693 475788921 95130053 967587839 563396335 231136805 410285150 92410187 310648057 843157491 795614861 805707373 992927670 289079855 154697954 947417595 717542499 11753838 518605546 334476816 157530718 957540584 599994741 284364409 254760306 38617532 172041017 56613955 820616078 132546286 664882172 737634194 492238598 101649522 546760747 536950491 613395607 149311602 863421983 117196944 966650621 241351572 58863451 889786643 331185990 354180936 607459652 722950314 199244511 132698517 601671126 780593001 297186923 60392565 665069267 935064529 354714909 754961170 149823385 843916273 291615812 177195416 249017832 862828921 51866097 762917800 828773493 234810197 155151346 51033746 769991080 964439555 429475136 434191388 89704204 509131798 554027692 239944730 754993784 371386207 996959518 495792323 578790836 258387381 524594160 558615555 759558183 229696753 548802607 346178280 355459712 672509324 419370952 846516430 87295600 507359581 664903967 13796542 669739344 180272367 431198044 237004470 8737706 689896474 45021361 432311764 844861342 259131131 79523683 192393533 279164026 435574289 786606972 736176880 452649716 568067894 910240085 279211956 706359648 168851970 974494391 990497970 555523952 710810472 198888085 922898184 673270891 646015156 980326768 9636972 248466583 647413917 282651497 661124968 7753183 340116457 221333783 828760628 997960751 30070110 575255217 587638125 556573483 119170950 273929028 947013209 183845829 61136348 887753464 908106130 351800290 854284930 489708419 976986861 715878283 778634067 749585148 704129577 322736899 28804287 211131184 932625970 809786712 489830051 122353118 880982002 728197452 315111941 469264018 844595992 316935821 132211505 211519257 19278520 642980567 90447834 75791315 847576502 789362769 774655444 486571313 212796258 339494579 59482092 347670333 313306798 419484043 702101906 680575139 406520138 623205647 151021203 131067865 772493668 381465823 270192725 867771494 810794236 329583191 281149913 624107223 257946310 564212423 602601249 117455222 905407546 430634668 513488777 972379490 848760443 556604445 659291802 793265067 981408843 459278947 896747658 511014612 651051680 63198471 842419483 559210930 5665099 14974570 180804379 145960852 616853455 785587541 54795055 170202321 317163324 493963711 716185118 973258012 898402448 910032112 888200536 878657642 993326156 271687846 407155119 109261339 169121473 97907941 239865144 373762193 811384933 633333736 369331372 494471475 832501051 534020889 995635421 586942413 115769845 319077614 712430822 138208503 702660582 774735819 103741262 79948703 65095247 494495070 339625493 661501974 526415704 74563553 82476801 197247230 804727866 598173861 845713696 453787943 917238984 907230961 442191423 82258985 404733360 447428351 122519196 250407481 125874755 461816628 651614784 614891681 354418561 13672896 859170695 579858593 690862868 137638917 913740985 848235472 178932066 50246171 508273425 984779328 879523167 838975655 337428480 360642610 296511049 176578264 290353438 712365964 499587838 795124048 252996653 614646471 588421243 26315929 516519593 477602256 506083800 702704545 434190053 534226919 272886225 902374184 519808749 931824528 592468472 468210762 706504434 868427480 835394269 603266998 76171910 843486192 104009355 43938860 716913817 184819973 165823101 646447992 659172795 260184181 370018543 951562605 722008514 146528401 629148965 921753329 881306147 116933828 404230535 352666189 591884509 236446878 588437768 599264883 200206551 75867800 484427617 234008681 248557532 51926820 309798438 241400040 746745946 550912536 798471236 92970220 460319999 180193543 450762414 821462838 847707456 357221270 144925484 493426264 843099904 21430057 184044598 3230639 72407219 682398490 140385921 757088731 471151459 784035458 507770568 31883462 766459154 982604523 795686906 659219789 764071657 55597006 195598644 981420961 757075256 987545950 647708208 870439636 794258330 249644446 412279233 831538824 751406686 41989627 476874133 70087653 27241044 534476879 139033740 288537618 903573071 898161973 165222669 561122320 608382564 415131419 201044569 480903925 982456580 483028576 992043474 97271909 962674199 306276577 496005419 92927516 784214311 328272122 864710023 259972271 92358160 648445073 932645854 17286407 338424417 2036866 196460032 692702249 117526742 507439118 793804038 154585276 39439706 380521142 630206006 911997946 420034342 970348476 42864257 79714457 803113793 711414154 581107612 338955353 600849510 129317334 550155415 238650703 81198171 403054185 633053907 463117487 278552140 126691408 731870153 414748721 742495220 978346993 145480148 84234240 46947959 710256292 526591109 634452369 908985988 810232697 54923163 73922766 942309312 527866337 859226097 926989955 230724739 55638561 147526161 287313579 729192206 45193224 478159148 487887746 5607785 277195573 155052415 745181498 614242467 239938654 742233340 330355548 493801877 122376750 288720531 833275777 506998973 748618927 870959609 808713992 305059826 460418540 3119350 63569532 283034432 945580113 313729236 326146349 309693170 743999573 154104862 255101457 535443559 608939320 570729938 774088153 461719248 229399370 882579520 786720096 817074916 62306830 186962858 286206905 775683540 91636443 685877021 351990344 896794153 821778619 929776452 998395423 438399998 662847164 80647139 87215693 233429896 925128580 67856749 822124385 890591530 21322718 467377077 522425877 845780406 445275793 643322154 958358488 532041349 32806753 961749713 931210982 930548872 752159941 216954753 614783963 471122353 468980885 131682465 555194805 338612632 202106709 52628117 16730632 984417012 479732838 374333493 299049304 776732800 383742127 514367954 701953759 674539239 814887007 389294872 595057699 542701855 307013007 112117106 534284427 645275292 626271914 349226292 111485687 396082813 421307781 577236075 850822963 742927004 85304324 712811901 162065213 787296092 330677817 732473418 594399042 8058298 853212884 938472869 950784448 809693231 629989039 498194541 999704378 841541857 481886009 9199974 811926485 455311857 213706433 98342360 566341104 649567206 913721388 442745595 504780747 701872013 353957433 412516951 442746505 703497080 122007960 590646757 97555804 899620301 908797830 27389819 48959501 895690944 647820600 344654337 26647334 843647304 249585084 872007633 197131540 949334842 553811623 600089538 159315788 719517106 505803909 763605981 285330216 368225941 639175175 801789760 164140895 314503043 747689644 670899679 262583427 704585122 157359840 796367039 543857281 247897966 176437089 735065198 940517281 441779629 862033317 513454410 943252895 375033331 998726075 935943432 253639309 800070043 454091764 768102478 143108529 470216298 641610631 242368977 692242996 501860401 403450781 725726581 84123388 349583239 878318572 147459861 464564523 195446048 467991693 218509440 26789020 436118989 620711229 129676739 172758863 203757871 89211692 488630340 671654240 787199004 443923246 711588823 429859812 509201445 282368221 397444702 141135782 197500349 989702959 387473982 477893062 80598713 150205661 224219977 955560479 369139675 331841939 596727641 65458015 536059467 493400275 251178401 575781642 945634580 73388537 829065917 608606420 373247632 648286026 583299096 560922516 515956858 326019378 366157913 837789611 606576561 424153602 686780759 310241536 951512613 541573177 787740063 893023949 863073773 806427963 478880666 92954086 136644484 609861714 197923341 486514900 456950992 870034851 858727113 663421682 693716738 484921745 576830402 931837411 879757705 857631645 281249664 597282200 424175492 636793523 691258785 536213295 480323966 402528157 110110827 629801604 670805322 855095934 519006596 899209759 470004877 350091659 455183226 258985241 206779325 79776028 14923540 206626161 584822624 47880508 161178966 525690269 942228384 470655923 866064733 847445561 624348234 838926375 287984184 966322255 183025471 164487251 108778912 238924164 906762691 747530715 490263294 498233987 881451408 245345635 319347616 205527195 427677814 847499525 574841319 282098355 312667621 291755985 546587450 563840737 603544022 897082374 853327716 865515310 735464313 695232619 801545451 928861821 436410213 16867406 42212245 444665048 938416480 746835791 6118089 837651186 370162153 580933538 213629956 302759868 929165254 596152208 308228185 857078331 239483910 557057957 618367997 406502396 242332740 281361970 937749109 462685180 293175414 353377765 26788384 331883801 117785471 715263829 910759489 801872173 817061667 10226385 214385937 527616340 359334623 157808739 691183986 109285651 168120439 306247180 998249169 750765316 462789201 433425039 640842935 804160170 661502372 964333578 330342672 112628404 171235 841591755 832340907 619764180 494592151 475865963 17000803 734566954 954099947 935327554 463704407 116670546 735772830 520404325 237685974 422107662 927018939 300501461 654063903 758982089 90827473 183323619 561255786 760997419 987981380 690745263 805828205 235062164 491963015 159564433 678470550 663409608 502602018 722185353 260968863 47823698 114287854 807457381 461371806 260706295 287436664 467372789 824682833 182758104 471596808 613534805 270723692 273064454 672454031 117068825 442282070 674055574 609881339 911327425 613505340 727063038 860078909 110840389 2449951 30870160 900363850 836837092 601564252 549865091 609989213 651744264 86484579 419413770 338121054 552286650 942817902 606460280 705434495 498464606 838399331 509191412 47247309 18377244 23283844 838404878 439658346 767135782 289716196 74220997 155232867 106933591 666928897 217376867 721233407 592588613 918332718 372557459 628354751 377457021 619661412 748406200 308644643 3475423 387933135 825434302 223930972 935680093 826368892 866182109 435352223 235687947 488338022 913491683 198081245 590573089 293505954 778819690 458996207 105909398 527267174 181992063 512237891 4131493 435346881 279999543 583151756 876379313 875901945 191110455 351354433 90403330 782817822 340094030 284655291 708196421 48720435 313546531 476078931 878711072 141990679 55764350 673002774 90842963 844111406 529069354 741854674 820785010 444013587 476460076 498095557 980982678 616601900 330278367 587052597 933179156 522297921 280595963 96100148 170227500 252845311 450154875 59354665 396768274 438729633 529839589 325540520 592615688 9097584 593560332 179762288 548599657 14011884 552038357 138333749 888179044 682936163 477074597 256226083 777944838 975102907 107744269 382005745 964549386 1829926 16052861 487168904 50723718 680506570 607129454 852206807 524848712 177521227 314161070 843574602 446442665 538528830 786109079 456800038 864845873 864585235 405604466 589462201 483416576 488810189 415218369 788763929 376834541 552565988 219809469 550239140 387798419 177146283 604877145 761287103 661173408 554052793 401845308 788337230 696319395 903043138 300899525 776025764 859496955 841514152 266164753 604405283 530327198 837957327 398366623 218509652 176777419 424945716 31044278 295519324 939633406 18333319 598326388 441458376 747805157 835655737 899872605 520209682 472945000 482662331 790523520 692516861 2334045 982033586 498589956 574002123 561050721 632019572 192979804 524923505 41535703 406276702 25283188 600021860 41216536 697539966 216002873 966632340 533653689 138256379 571466352 966489763 808783839 58359640 450680391 560013547 461679760 379350433 53359821 492364800 794324441 281242040 851419182 426169861 277656793 478457106 47032184 561328959 801554824 810778574 320324092 531330819 815499503 137780241 902344973 733180184 233864197 586503685 891630590 393158913 769844680 665733789 609652632 770889 404125319 104898381 649524275 392768721 901382299 112071253 840727508 289011731 220347332 494553917 511552356 950669957 466799337 652010855 161264803 991921687 169195615 862080661 545462506 61267704 597107077 625239788 834524726 885904311 280862975 125235101 750774252 210712133 323150449 941818374 739110879 413345388 678257062 213553388 871965109 194700184 180660002 866614227 161847055 313415646 495756083 120029423 206067098 552298413 418622691 828686918 592746687 183354964 774135809 878367161 549772215 123922225 295553833 371505041 275581790 374024355 437646147 31020158 371388544 31091603 109228601 530986460 29830144 982616284 648504349 500979705 209027588 43907685 995713362 42090952 877642166 171037650 646889214 28692288 345473813 42655574 546131562 902740758 734348540 456035352 963617674 144115553 193220034 273129240 330850905 80853103 263607566 884152873 830876359 685679822 821966185 201814901 786179444 281764479 789349737 973144920 169154997 233811322 855798413 327830586 123205448 70343247 127522011 245112168 514345672 673617447 955450690 518014559 42945003 513847182 789592122 896763315 340138897 884078576 596763046 33428685 53787313 840078743 867560161 609084016 736656896 481012026 631574429 874603332 737802650 768685108 416543786 955728375 530421624 713503766 256257119 493473382 31983910 458240221 950962764 582633651 239342271 150781734 946521522 131183702 68841222 595361604 20395437 951709615 364353746 231005090 856993200 629487201 646390489 577705427 10736948 800335515 224802711 33869031 559934899 132774474 905604532 956098934 366446358 897391859 266651585 705760586 252120043 309588361 119918452 415352942 919347568 280664642 646421228 119965323 167318925 330159366 301465510 53039040 749353101 596010143 861023029 450586296 889309842 230515297 319440634 975349519 846605332 353482774 730484474 882197284 94556503 125955907 156401578 608871896 718952688 490294473 918175323 561496188 112449487 478652832 223049130 560447304 763775939 427427750 188716406 940356157 767324589 907222077 357226895 270366350 624034500 652302340 814558151 316570941 713135297 130183459 674894568 176024609 50071881 855364958 896150149 778509039 184785980 164713511 610096444 203710530 310183378 778493799 582776292 854999548 155028390 756183719 737775463 665626765 727227672 364559090 132206169 986439025 611030843 758294255 490193322 742993112 455902666 870398950 983088803 988014106 109700559 679748159 885770771 86857545 265952679 794875606 949889909 363841990 990431202 74140220 46181598 249279521 848483817 460039170 206718512 893807162 969753469 997828151 406589605 811089074 872001533 728769615 452700802 226191113 458857568 77529589 921212488 338477087 984573463 142155134 999907111 163689170 870157277 524398580 164173599 378297670 226786533 415274969 295204127 284343610 150990226 381259211 218121215 814055316 727109722 551552893 777799806 887400777 521984767 785146988 631865433 610320703 239924469 944790112 322650845 196631672 18695340 21747381 160918284 534858682 564825177 355999678 24690074 604267655 64703093 966587221 737482040 89254162 857896231 686261029 776452020 490459179 417530019 882951247 448952171 958060626 587187153 857923037 594673839 995538199 31641467 159054981 737894226 790841007 427397421 886915583 246560447 472455050 695549476 635907867 516276510 342077502 292808835 791077654 903429052 126009219 408485809 709564583 400014705 138524220 556053780 885092185 834817188 273262195 839026300 187988816 129035132 622980286 45137898 204208741 212484792 739007095 909783143 501396995 239573080 715834523 532777917 681868721 581371728 99550394 863636079 659930802 250381891 939943318 707386785 829350585 870964924 598333622 483376014 512428373 624722275 311997808 976740365 234570145 736805663 746310752 167280074 597253199 914357783 949010711 755179810 311884618 46632914 965902694 517897208 305034886 244529082 60366189 89957692 712630048 953738834 727332161 101225799 21015408 926659790 283795252 456247023 109587980 35168952 724974918 127378625 679685297 235383516 996856910 310177489 105886112 903959700 450702651 898699530 982457643 629728038 553103800 200709765 626932837 382092507 204684419 982287131 353572852 807618949 143437820 924300986 551976016 313092702 327890292 226602731 978892876 603765192 222652088 401617254 301954170 422504694 705420375 819489542 8152055 56166461 698263333 189063607 130237280 256316066 514855341 981534303 710173422 493542321 61907855 620129487 749628599 507313558 17047209 553708099 213424138 119406482 452880958 148765442 709009811 594923721 899811455 141845066 193588306 233967092 711881824 194959653 709887674 843962424 245158946 60675134 173039139 448562052 882944383 676519837 95654606 176089900 525047822 544447117 930790434 329892395 240792231 640529355 880654576 825206295 756456410 340335722 636698884 512089895 426076899 301622797 87313017 560858641 533615736 983720375 596518268 124129681 747226117 151447302 20075363 88031312 823124715 800469073 465196905 961965097 859150592 631197982 814765594 814649920 665723561 349096374 840796968 530093043 812492284 520577404 36210782 338302357 944246829 936337504 664251557 930407692 213998467 626194344 446626124 272550572 916034870 256432605 447243620 789723918 799022257 265416463 514931216 422241014 765862453 972346206 289855991 518191673 996526288 177908686 572020936 677202322 240084019 132653889 732992570 18481550 215907498 299718951 611839575 29689673 752342690 569278146 209522674 785539483 193877904 50552437 830956633 845632485 197397994 688316295 247136320 55253887 573873585 82117133 833883280 78463786 450438895 876671958 912684701 751689356 828101967 245910453 830516919 180174368 212568272 771989448 519823595 87119628 1737668 959161138 391344431 737544376 677654835 191445295 133429691 940500564 123722894 306779914 684006151 277197365 323875191 969001664 267495840 67158459 37540639 409312380 22927506 252944711 617640097 352263881 758738633 726419555 635820061 885718173 800936650 10956976 18892863 947310443 504092485 722434757 322414761 121145309 107797558 343844176 449957089 681461753 973516611 851152419 787844685 579532672 90111172 635293341 665202089 788673094 362200746 95305564 290198498 904976197 954470619 622708456 140076139 100032184 237769158 307089426 909689538 953750146 762726661 161749112 976252143 560671017 735941912 825627124 942474423 636740903 349573541 202149734 827221965 628707074 95723878 269875251 422189007 751579454 899779873 836624115 838494346 25409401 867150836 77873950 432963449 784231627 369159654 586296471 888027751 746365540 456771222 713645263 559298473 445737129 945430100 613714873 481564582 633210206 303052082 513209115 729234127 519297902 20513823 498535399 379696015 55695294 432646501 598735093 564058980 916455302 306829193 777610854 929257085 166815505 318116858 494171725 955774691 390936090 912478226 949579997 252316703 771771281 654998739 481088946 365211245 59463842 461140173 10925969 429087879 90828895 416346138 842656982 342294136 735164117 788536750 291903319 182008931 323028755 757504677 310980927 495385069 62335341 790272567 103256367 985649434 600906558 432919878 161896095 388868314 563749991 398514964 461441331 280314069 724890687 847477541 400777871 44271826 629149389 317569573 751764189 320516158 514038109 276066799 345317637 934504273 565169261 80560220 808174144 158103910 56865068 822659273 544127284 101470321 672867330 204658213 884227980 501429148 665561324 465197751 904639173 151133188 79165042 393055006 232338444 941763007 283056371 624322039 683602407 256077448 840975402 209433898 82276073 79690947 902792911 421870043 152009444 686272289 470700832 381125907 793198533 539882567 139666216 337438260 407722759 121646875 596509901 857092471 927107412 606751960 38406887 147458015 36786583 283391064 436786659 343578661 323615438 871906168 392050771 165196263 125771454 670121553 852223637 39684017 981090030 879314753 553310763 749468351 928634732 84836609 652765483 464999765 698962058 184617247 541223358 144395905 77404340 488208959 578763971 171421253 409930699 464292160 227228079 662455640 585941630 603145553 419268328 62292133 676237885 89689791 814091777 928901261 357415170 772768441 53560605 184143065 33259654 920520529 838556126 518618884 380722966 383418686 746646472 552537552 236673830 686459302 212252857 800101020 165386612 124806629 805170063 940484867 660082532 708210846 381976315 570801685 39963274 550356947 305086187 593767170 965622816 251832911 333882207 67117386 155456091 712862718 427716640 822693355 523065682 629501821 571878817 14681459 729424806 996444054 406011297 81077836 388926933 318448368 972281918 33255344 814988747 227189309 17851984 619130780 263785656 562853764 21270101 106730234 292032039 465914182 522873147 87763755 693701981 506074677 887900664 840928789 120705407 157488647 391469224 921179946 742036033 593327203 263415366 586384606 824125537 39317744 702120884 799831866 835177825 546471727 185502657 395051110 994127670 935963497 195952102 857500820 687287654 448043634 604327314 585678090 359898803 790594256 317698801 791051797 389510533 392860615 449841730 728794839 618263502 458557136 550500010 640404581 922935915 354927405 389763763 320716447 460573722 613685381 560877428 799515116 596624943 912417743 812868077 787813301 799626288 755304356 440701671 144723017 323557130 669033140 474983022 743413286 615414546 404370691 704717354 35117870 898416200 718891623 342261523 159376799 773929420 472300412 275238844 631442729 631765936 199500330 641113277 421956294 908087783 384641641 132486091 64017048 674032298 646272556 349006696 962152311 442751955 792639975 235133742 714718305 143597800 590196418 167505795 45206315 462814063 789153934 222144563 430115693 830203714 613486329 634210311 208491206 654923585 359850496 998667797 396256986 533534275 263299196 986122144 552978383 27827596 454320147 30412760 562561207 448165655 566816300 339135928 935599535 822363569 502426021 356653563 110776604 756432913 702075430 677444527 110989456 321124794 605776160 597393909 989306231 482808965 968498376 920137207 135481741 530810903 517022022 225420807 304676809 850426774 645877099 304308805 51661458 672431453 994479568 712490312 693098969 936845764 481795931 660789330 145874762 968398199 684203124 822178266 269766388 722887124 590286105 699442423 614854887 830862199 951694499 8283712 286332802 236794358 486917757 55450631 132993553 950337617 535796141 731657847 365206918 781338302 49447653 690085385 391093264 57436810 30204501 248873271 739725116 562219501 390522378 562545780 448853293 880689599 520623425 487308903 891633264 688230306 787709801 162732839 941228069 894566889 659018978 492677408 492969733 123712120 854799506 229259119 391111732 592799566 516844863 397357754 868537653 337121128 986435656 724573094 352678255 412804011 422049924 606628736 604975194 338320247 810060949 48509409 10949818 615383161 431107500 339145898 586380993 948216348 648260379 667081674 127519462 269629951 356241149 383717953 68672067 358686980 817356555 83138117 535159412 570683682 457253201 933590904 499040562 719644245 737166748 239120567 939498036 938778642 39686722 104572742 378769479 432058893 956872457 762894297 236478146 271898965 28104515 404004767 717794078 88647406 3531899 584910370 829266110 453597575 690021904 379627819 680703628 666468822 773504665 692425346 178587239 346522531 328404846 408891837 671526098 143825875 923422885 604456920 767984045 670239407 559500281 554754767 122295690 543804190 401355287 241301051 4502430 492264042 630501665 558319690 356066052 881392965 109321042 857425503 343799049 811518510 292299337 101991360 488022579 200896970 236197494 165060557 52764091 250603430 332453024 724261407 788977295 43282310 649622726 187088761 751848389 906917865 342067663 875861897 139290730 97163174 672905996 168138350 661308449 498634021 593507394 88494257 667937433 608872190 816533159 717682912 384369979 398888509 395130422 240820521 194050612 49602175 457008631 776790349 942372261 443837564 455524087 446375019 64517570 849083973 883508989 812902170 922205705 764246110 682811710 815799934 517042268 679508623 610633722 849367604 707239591 200908173 632410937 262039673 374489757 341233908 577758490 736724326 342120349 960302270 101276044 10534411 719811081 366749474 310938655 20086093 301648655 928116809 848358774 494992195 505623084 820055748 353906951 475029614 971041833 145009933 113542055 963666213 41118188 115288651 831247503 906207217 184954832 105970551 831616147 427811194 408230674 340993890 169546904 223863586 774660334 819994883 581054218 28089887 819446521 393070925 627487105 256794171 647496862 749980622 811371157 302775355 497345081 838226640 888545026 598609108 412709759 579106767 307481567 706357506 549167589 101064221 239387895 160861796 483333117 38093876 532279533 396341617 237384474 510557405 104286779 23048591 629939570 748875368 470453634 625961606 797551505 738450240 832862052 968037631 885598022 225961178 475118470 764912122 636952934 687225725 77384331 569407532 150274231 437627018 490736456 910522078 973061711 865259446 159283538 380842304 234230350 271817249 908342743 263496850 596775097 56693992 333300938 72877734 961263308 858963754 162576092 967000025 152998692 306664586 904693474 814257955 633447113 26921954 3975008 972711777 831901784 189738071 612649054 161971087 644979263 794514646 714566431 410225659 885387501 323571362 244401824 79868953 440325958 468137762 671538911 421070393 709273438 33376520 13206881 664376107 542656027 957328207 723233153 511877285 410860020 879639422 651498174 316369028 433580679 879581788 541737990 948156030 688346515 118177878 112070966 742019089 378999070 520668935 963012432 788949687 75048035 881754209 194191746 657955755 984900609 333297090 768490217 422940898 900687629 302635620 542912489 420723235 599357263 962786204 530450476 55526290 749884334 786390863 612804384 808657133 969305787 770569606 857554051 364961933 2307270 885674105 48459999 505802578 69499825 191928989 178612964 424540659 40197720 878698124 472611848 265408269 42107261 518672968 43618718 526626404 786521280 733335518 892174746 906180913 906827147 903902613 158947742 446126707 331551922 293667986 988351966 597190441 358266640 830217378 390498799 4535073 913955447 241128332 547060090 713721977 183520874 755589047 863240110 372021973 369300179 559726785 319582065 471130420 419712385 824393418 226955572 416095045 915472240 873625391 3669703 140161022 45190658 286322627 379281140 574613068 580672081 44724522 887847929 889644953 157646096 33611134 150630778 521398253 677349174 533578764 168076656 221830680 740206493 358310098 347447395 128960365 938521518 302033296 648282005 716304034 374854398 658919505 297283103 5976583 521921863 613869377 220346855 277299553 566237060 578262149 87562908 895269356 409843308 417993600 476523588 774951689 867965437 150800264 648270193 151884658 502046749 344595025 452553206 834164960 662267921 985636922 813638994 17989895 37779410 608245676 258319563 83501020 846933336 674609254 500713853 897361821 871477636 481445968 169509165 297015371 205549397 720089129 543684476 782578173 686486075 143960041 599446193 239042976 511914114 741614282 312443193 343157306 619756964 280379036 525875671 651431552 193228951 842827194 314189821 982469866 762596571 969985313 954526419 325034451 731118667 963877742 634180320 298468260 349994134 478243572 839040549 843659107 50134951 121656892 215346732 386972828 906434891 100720991 919815593 845116426 800044557 929349628 663903639 505667547 922695890 41689067 279366980 734716209 442330587 900370798 163298170 475627296 266269977 611001531 153760711 658808838 583411458 574173765 940868083 885904221 556500983 714049265 596630915 471040564 917452059 665573736 843596230 894349426 693923655 432532194 655904270 770521132 472544620 359152566 245898605 17927079 121240315 262504522 579146526 902714798 670393430 441498390 851237405 530054453 246577121 162845627 475338876 410487039 5520452 105607905 146612007 434968403 697074807 84335812 471484376 464263148 142797709 395315956 126042591 693301785 887298810 727995228 251466007 23740450 960550807 905091539 559300855 391466579 315129914 987560060 352393609 456788378 473171164 559656653 774783061 173860695 81788626 896759667 976380350 296311854 291030774 698273994 29824007 393540414 966367845 273022568 83271952 236158553 861567943 472258994 38432103 841406005 383149740 375354669 301084397 12169102 479407645 262306207 420632983 445931064 81968200 31135725 30591533 759009463 98131039 159112410 61587963 997375605 226136552 75562006 288856928 789049795 737180324 995204685 370303673 802691682 519237736 942383712 681099734 319120769 791671740 3302532 828493957 686611918 96233785 585467736 907742866 583315535 578495792 409607094 133048008 808599090 421109565 333632952 798804002 347551886 737454064 830214760 560387618 143003314 429504709 270554914 718944756 826619932 238669390 194218032 20649757 236139924 146891695 461883460 773295094 97734152 14237077 19049035 710906298 977615831 661513549 551538894 550324898 649806771 905131182 786256328 335939237 212078233 272526148 863144896 887160508 876448098 644544491 427890186 45164662 397835003 880527990 786032315 466740978 752713281 752997701 638099616 514936186 907329905 638615163 242864535 907512717 429431667 888317377 221302961 435175459 511460022 616726811 832161018 239542128 13920225 796129570 806982842 943171210 80546868 931110660 723025560 225704839 831837072 236375207 282019385 473306352 151371061 134733016 959060833 697293632 824880798 723591687 93870771 170389750 997349284 611406000 454251825 6677541 103791064 421196775 143760453 7647912 357179194 238994761 104117875 158554993 573216589 631496411 336198210 647210385 984591299 305542774 834069524 864981921 697914795 326473914 213116379 498335160 616653161 404871748 262434204 19668569 392748346 249649162 193121829 187710182 734942098 14530760 208067602 894445246 512429315 291728637 346047970 775264454 885026458 480980847 369978751 426193075 56253682 78395020 638215432 590995674 780088524 454153232 374358481 946864063 523939431 776892657 734996140 57041068 261620481 729413617 49296337 958256002 913784365 804713358 117458747 252770082 983168443 240897315 670914471 213379626 293288998 342058746 997691046 630718341 298584020 461078596 627085120 918558518 126809848 18915760 217233737 274362197 337443063 212279203 850252232 92309526 509928040 848704857 631097591 828555206 951292829 144333702 29623544 934098284 86253911 775501562 55502049 226164366 964606142 896107254 958661449 598583817 197545248 35248217 388173673 379144 234045209 614471041 467523238 535693037 941501599 328022980 10412506 808584295 117425276 899071387 817126108 804330907 417005529 757716660 919961646 303499913 395164514 35683840 693972876 926682573 918821976 139887058 2023327 673600201 283800127 920009506 325791461 320992901 975209841 719032401 243525529 384885295 647402683 883267715 336485792 560051265 32698786 313059891 814361755 45337233 132055299 131583656 587957496 389504494 394255143 697590631 567634837 111956072 29762109 372291642 228812809 769606816 828568096 570123525 723400459 823216907 331301831 853488232 841330574 102020975 414927375 17721448 574226516 575418288 185683455 935920463 910127485 493035138 331824647 242148744 991140043 721836508 330898518 910770513 731790773 856268270 723689481 354746317 308901222 808511828 130821550 498676829 42786868 152325198 517912217 860763267 229038227 536490135 197902673 628102137 529745875 253484222 382959849 186066847 131779964 402572882 136684929 515073427 330199622 666321088 333997927 518413446 905704113 126085038 841870932 946326802 586368813 686900243 719034260 199516391 453788217 757793992 836150579 603032453 361720838 879055801 197438540 208834441 112302905 974661852 285201302 720934656 695815890 470726652 294719418 837533263 864991799 836163848 453361870 803931167 848601108 289293967 534152046 814783661 456072456 157105403 266021814 231985782 315970384 252664828 358852873 396388190 283911165 340824889 310051357 430548340 134288827 722545360 703393367 867054298 238655295 372392928 179826714 492638719 347640763 471268537 538109363 865352846 488592006 408931781 57734012 124695986 718273152 786293028 809643512 973085979 995966249 61754141 398920719 275278082 889443615 680536641 216176265 637524955 336230661 204442587 563034891 135637464 680345909 451978402 622901919 614583412 29374594 562939425 529484801 725667721 344407777 382602967 745880811 979081957 663459347 519545620 232437012 775324676 120261764 949186566 752686565 475885122 282515175 110795266 378580546 980693073 425446373 235883415 40182008 937217025 772248742 354276808 519990913 672321351 218502568 720333268 38837435 195576258 315075284 720456284 330377176 561945774 391227167 742619528 419978910 890678435 713044810 86572796 532651373 71724073 236288181 128503478 885531095 445212612 578434110 435439945 15402395 806456298 805843825 36748121 722418734 845527698 441222145 581275692 626563491 980804215 778679320 900546452 196664937 459472600 102060577 915562847 748384305 753131157 118314448 81532762 299255823 495719482 330095752 690290649 560023134 595964591 328679886 680285762 387642204 191806569 246998488 968570444 289804897 114555120 593673026 965513167 924010418 42188896 730556620 34106427 422700710 306058275 307329426 922777890 121215044 214652141 148965055 968948553 249678008 18597864 419591418 117556154 875247770 935867852 950269291 885221406 119606898 985559752 364281545 243822150 855580630 205547953 895287752 147943709 51241915 646458405 881268731 549434002 220708674 342486345 571175683 33076992 740769718 472412494 248745659 368353038 930275140 240451378 316080954 288731249 369185515 734075134 728966720 259238966 803916579 90513577 306750621 922397168 523886535 475822177 898347135 820934765 595249752 323829443 448057095 343101912 942840844 712499445 736580323 418558918 168511630 530273910 537377639 617324370 206657125 879155527 560513677 131377944 147174924 226469132 38183376 269599803 338272739 196818491 313918542 16307245 320395584 570792209 980503601 80086555 583266821 376739266 858615237 890965448 907937001 730330052 928619559 590261508 412105913 547128307 56201949 105807077 701855766 796014108 11092569 255753214 841382786 890840937 839042103 176718839 304925731 544184514 196976075 328299423 953682314 512025494 767205079 87494240 262479974 591914535 950015247 386423207 991401854 813883681 413384025 287603385 246325745 712214123 698655023 637883837 748220063 394599524 802801565 788340493 559707645 108654240 620025654 953044245 282538197 586496099 234488670 532679062 106295919 78461081 141688148 515609481 152874764 610737916 68166188 933082595 854058129 256460220 807180410 914246206 80713282 306607836 532013714 896442459 384908911 406658594 87388605 43006333 889294810 199152774 5785123 88600550 777214053 610973301 617876964 812607503 878713394 502816893 763086836 215617336 322836298 230992631 327735408 370446666 298280988 911481034 617305919 913612108 718784441 640826056 398037414 894213914 602712150 352834886 281078574 592820254 33528473 477554078 962954180 69342753 325798537 564181731 177582406 588285291 394596899 480086380 322436489 481061196 671552950 621799074 344135958 887078905 927765325 100696269 505422593 229329227 837662613 139082124 774984764 408815212 174986427 770034755 210848880 945630340 931499586 764318174 982223198 663368475 357350214 582965271 791143378 94558609 201322832 480102675 727368680 619153309 99827159 67394522 843933 72228636 510150187 269292611 843150745 1584713 934439611 276251518 4842941 50805754 802604925 551360183 965945475 483405974 451920922 379659574 850217986 519717632 988496860 405752727 896129099 535056238 685531516 44672044 362285908 914025434 248695840 364675004 293682537 627674279 32497525 125591268 857577762 911211544 182732944 801017969 107058632 443846603 711361248 322049937 361150492 967812842 997726455 901580687 959376989 185491530 80968852 715768988 681983700 892372515 478551146 424515987 944612061 225425797 936325533 444862014 566806077 989029288 707570377 8302805 921226464 654242095 966002478 164994114 577406392 337598084 12032916 453667965 91844719 927656723 655261075 531129760 790806077 282499525 65901627 347241791 507292888 461749181 108851415 423756155 76254919 682020463 444540222 726721410 945120226 129428861 765406473 476664393 461399913 450310928 931842163 354636930 52067838 842365606 383925348 813698820 953566933 823338357 142111996 569967710 192600088 480710931 905846893 813747873 580291030 687104404 857709386 732287882 624770138 955091895 369796761 357559753 211534180 383533836 945685917 66315276 282367351 412744476 738894511 298320843 419865613 349441207 355363349 237645686 328194814 528931490 791455300 680018292 825235316 242639559 517677912 123761716 32231506 87851483 208991632 409851023 463899314 144567345 216452536 265681433 474231452 392443555 140373637 571912607 151031381 153897623 974436198 397094932 250017507 470441270 161634711 666407508 316030650 878125186 627220177 977628833 839320834 922516521 427204509 178551008 272765573 853421309 42860141 442165329 855761320 444286707 815725733 324101836 846341225 95316080 825228742 148555504 900635636 83867347 288291352 516966584 251275379 649769050 152918846 781939198 35509159 756234585 913046046 235697786 102514585 946849816 584317618 254921112 623028206 297854200 274018645 312445595 804922421 153781476 715069983 845265708 362143216 86790035 972471916 531793837 233854495 78057682 852315311 891919674 755503914 965884599 317638773 115486691 293651392 835138459 21413100 840774634 626650475 839053179 818027254 940871227 424209400 31237577 83065940 35379709 838505336 929300931 242485230 450023623 522659317 996999118 661415201 393546460 296716061 590645433 217239303 459209938 887614339 988186147 582740864 108126057 910045920 867228823 902081207 925520145 682680320 390592650 617221746 167188686 613289697 11247553 361609836 308081718 364822599 818084736 164932139 98695982 381801687 920444510 534653875 986918298 961160709 453905330 802521204 119211881 26176852 269894060 812826919 443438637 908993445 879727206 892092266 477527679 773990121 460830771 54797790 105073819 524515297 461230138 823339930 979004149 153505104 293405781 894293359 821291335 683882208 728523414 874754290 660644973 285200205 322294037 901869930 984110834 930635113 470153556 241948420 822354050 541965188 308772362 80025759 662700455 864035426 625158185 786334357 357152799 91680272 32698864 325258795 209388782 306464958 261832413 543485730 878842733 468116065 430938768 544116625 480664168 297127788 514551336 821916004 152703082 760547610 576788083 531507128 46464033 737205456 901743404 765670554 332276640 962749469 572011377 939748555 632956610 403206302 193615148 453740652 602698277 645111084 780377098 23247738 61963341 494982963 939333392 434452307 406042477 903614639 936248178 259373447 634546302 711560075 564797643 376043959 191189311 589662260 768005455 355598103 26834274 579279677 404491701 111320031 251253962 801951318 24302367 258790671 140473954 310962694 571492307 243225744 596062096 253141286 86424654 391243855 602046805 187052231 700511227 574027309 141144324 446679822 261503338 495811293 479386948 880946917 134937183 155304838 237232267 277068142 467535316 587145713 619770032 715003258 24478171 193935566 208297490 975610672 478161724 880569667 860365493 949909022 588166626 678405473 723650940 604281203 514134891 765833033 810042404 410169505 307468148 838280116 501451854 836602787 355259355 841521445 608016299 682382203 419527253 358658398 511226918 9873046 865120491 876379447 13492611 285119600 429510666 957397319 955349842 292783985 472501958 514788313 602202129 109759150 378143528 367645916 237037877 674503644 930356716 948681137 890148664 158987145 512931734 218885214 995566202 717029423 875676128 186357803 100863081 330125761 565038655 997519724 909720115 430812402 64049274 738512683 986202725 817076386 759847674 502502493 541050953 43919358 242973191 325518869 570141938 595321054 108291042 888458151 795296815 57305216 998155854 594360525 148072733 312102471 92550912 551703923 484080038 332155049 132850751 163040991 956302730 474968908 546155733 38156064 969301086 812452593 57971463 673504642 16804350 436051887 802080196 130004193 876200004 883332835 498115979 613234913 172295391 89321335 570390694 72335475 767296248 286235162 847272452 892228021 102907692 219354283 550383984 142608648 147045984 942436593 142309328 139146749 566358889 456706628 510876297 98043048 987289976 468695229 879204694 656474826 571835447 662324637 435671542 557245108 582797046 254942334 432671907 524897162 419439175 933914252 80112657 664835992 248344563 55591891 983489221 508626558 227197184 776693469 705734372 752377701 229548072 734725600 497189621 339278759 732786906 39519927 219645673 521902207 915938148 444036954 330300872 974665786 27794747 748637204 475999118 13170465 431958056 702315838 780634753 157218862 320141368 194944476 291950498 384681516 909300770 351794080 53526369 390895168 560366485 316954481 263839791 939958496 440151774 395511201 510488616 165397021 726642924 657269106 975347743 405764115 182419077 180533590 662724757 350403475 69947784 838619763 246302254 598280513 84627919 37023406 212015816 823248500 655413109 471498 775577845 30720570 644950156 237161609 473020217 318231180 255059599 804651894 23718160 79601508 460287797 690632319 236573369 919314758 15916585 814648140 682301563 454530918 787561438 10156859 853643264 598045524 811249784 689593663 52843233 349813110 213362175 904761955 30781557 489004298 345729507 421508301 657923226 840395897 424887869 368382348 899744261 877320603 64611280 645281644 760822209 66109428 335864857 762755686 609814564 290699555 2524723 326415470 559064103 789163171 515985442 641316563 834860837 813964860 847508458 146139701 484250953 159573525 423086729 791478833 99391043 85865560 115979278 87746119 200934586 969897614 349390012 80884806 2679895 151485245 38110902 916470249 72289798 891216122 702271082 735455463 65051727 825875971 514243644 764983728 350530 217531060 201933336 109435217 631465064 241950095 77712289 719432961 651869092 28219997 367723116 623681440 342532127 171359690 704807125 664624085 897633156 4736415 142213063 839635465 880399395 588295458 317339477 572247943 685637551 676399403 41147890 179014152 985063640 583787749 605384634 798321851 122813884 8221878 89029467 546006742 443209468 569485421 366028901 93067355 844006425 974658140 177541707 649320715 208671777 591622755 471922917 921199832 496312385 171631595 894331271 802146987 767041188 980936988 698480718 427966192 173499670 36928832 672766364 127096248 517850489 320521710 989573648 861337527 402193833 647093623 473416395 726656655 846557173 860295022 934475481 462046324 407121088 185370716 700936723 375694883 528039253 889416795 240320875 917588583 645339428 720484316 460526026 740981744 376971213 344305898 858739406 352843318 92041898 693837017 877407055 538915201 936520680 345528202 587764735 477985737 739636379 345968751 968555619 370638236 357265216 955590746 749742934 978569694 44349527 668433671 407957077 322688031 42256183 390582383 106758957 919248227 511596639 979447363 107819307 201442887 9474854 401514088 774780045 835604282 524329681 333475710 547684128 115325559 827873282 299745229 671225219 359762643 965831816 475415080 552205587 335030254 674793351 641175673 184562946 441634095 56720611 956065190 890771485 852110662 399907518 847674564 805979010 900222707 217372427 985626358 298500902 464495696 93094568 874084124 12863516 785704911 781598574 830667911 693003656 970366394 70277063 528213024 212875913 408469581 70370368 780018566 350902956 416881186 868205874 216807602 878401871 75974226 735196308 364310947 796541461 884247576 96894405 637210387 220079532 737559394 772333433 234016987 265043374 430557248 475245027 323326833 820732029 882460402 661384054 924933378 622189982 672657776 796509221 257930823 691288501 650824567 606453759 751969846 539699326 601885060 89096586 71823999 126834866 356768455 763847516 233628348 227823132 222908285 112136960 272258505 508796863 393186671 15776377 187572727 764301904 563515161 595216853 634132739 697893004 821580484 72992762 348351214 261887395 73859205 256489548 639131502 167740078 432260044 506311186 234891350 380161662 402548208 53917391 392051148 99320588 101617051 645225657 808227821 250707840 818107769 738571993 207287482 28482016 652045644 180078215 931825730 156209765 307607600 996469741 390929552 966870816 639601133 368574148 184303524 870313393 864464174 411796607 961917711 729253866 215081736 22398811 434971164 235171738 518107359 899745626 771788908 633114899 500401208 390671734 307677592 77702927 95218408 506824450 488856004 360381153 90342190 152235608 445930994 349074723 400765904 112757281 986331182 819623083 411080732 542877295 274971713 458531866 946575584 469363743 584857019 726282854 1150020 907800461 693538560 663359443 281960873 751592453 554574718 421822857 992396769 611355707 206492908 628327890 827988340 853349559 951232001 46049438 266754766 641736179 998411810 139467514 10567414 775527342 611726349 457163841 300931180 269378041 905911240 374859092 28735075 446535667 889770033 170801787 48141221 46106146 871616819 845578399 974112206 590281654 983980546 225991633 145753558 361231929 61848251 841926033 497055629 245651740 661574632 847417877 770500001 12904590 502882861 565615719 859659988 330638048 798704254 151455476 168799778 513491666 115042599 318320625 627046350 454745728 710501331 623986013 921234882 862928165 671954563 246943158 196470324 912438779 475347021 642544332 784466857 274926680 729888435 207222846 508286666 561466821 898578011 463099076 73978915 910888309 70997320 505698378 357235881 606587862 459367739 144654392 87457090 759891564 1424802 633671092 798406980 553565098 265818635 753352199 678056562 390504028 540981922 825448752 150656727 739897884 108051261 58126662 882643897 143951515 715419599 15331850 403262603 90468219 313276193 655193779 556705322 327519744 553441408 709775416 655263117 929649312 36067976 733253383 968910684 456115723 500800582 519695257 105084602 492391251 817210770 63001317 649329874 214315418 321240745 146762028 553509531 546868838 306149638 432471317 195066188 122907219 704169931 935867399 63729989 982267492 655131390 469938974 806469402 845747720 519856455 71996672 223567075 769406776 266818385 687790023 31037805 839407376 17460010 144563806 492734302 825966548 613518564 830245331 557052562 841211783 2142634 805371603 33833718 655958691 553912577 989939075 21410449 822926974 145736213 875222125 56182840 552148080 3994719 428380877 894670520 997150176 693709351 577883391 958339817 803178239 647885541 371327972 545450415 155087656 274120024 637497132 167195435 780586864 361601975 86093358 23797902 950025175 828602745 979430816 546827653 649988628 442674078 590452602 696792561 887520155 809333120 716838782 600269833 225826948 966581308 352592479 562607691 606685733 580249309 778198280 38182560 538128826 178163444 706723304 739303637 399380020 801166060 446284012 688112856 736070980 152834084 578344842 778660544 279419302 769196146 960687761 799479443 862831327 726921052 330939189 360622326 325487642 96789059 426267133 987930773 858269847 445963812 263778903 560285443 416507860 335470585 620188550 765916365 656535556 562180088 987015108 246180942 117657813 471072703 401844076 848544793 102419299 490938172 191364301 632164786 383530074 316882697 90298951 905950000 747782270 38818684 525430666 4849261 691323344 76622204 961610954 112365698 837660304 736220100 714531187 331074667 7585482 86435479 321169564 988045327 28227341 388855223 134271218 788532897 943515004 125479335 690751651 706926569 640988478 556215952 903304382 9663802 37963924 57826984 538990099 368543152 72282022 372053436 933671643 879513628 805539537 311575009 391789565 671825506 274479527 400940931 304425707 674201151 228277470 479264488 204643737 929415169 435938470 951953620 125961599 791872506 607816264 298963293 705596028 87051437 872139271 347282493 465102249 193730191 789303897 306856460 363656638 159240642 124734602 434208952 133332078 713340903 50572383 441980560 327661866 976259385 792809623 838103318 5691814 72773264 835024800 919759981 677765428 239131804 647572995 52406592 241017308 151327825 745467156 416970974 633139121 767683760 917811193 253697516 57929667 630865384 791113238 186750374 175842482 495014827 436659270 19357867 441606249 175388751 700569763 956767877 564874602 754366569 623908933 573388243 197611184 546814978 219886422 266454193 840844662 649455946 60190025 355942518 668732116 252324179 42674898 97568382 902878907 719772914 186057900 858112266 459514617 45173271 103784723 142470410 969602197 56295605 359550585 632364422 885764627 772899113 573237700 781711140 965981788 598437926 932002727 864969412 81353228 102569237 577901310 794384524 748633825 27102291 369295072 80165624 228336899 418994001 955758640 826263453 526964153 885240067 453023645 163346436 639254522 869483368 392366224 960763817 586503270 585655302 986458689 926177168 969555820 626964514 368570258 205867122 151117097 377083928 425219354 413474368 758447579 323786028 964626533 423176328 604477099 278271020 725735440 898942922 959988346 60676413 535670935 543174135 307232460 345360999 428334186 262455346 737488814 166255457 351599836 165295715 906592809 956634643 378876949 740551818 321656747 636483238 641320572 663693920 718263816 81002902 588764460 329552332 358142838 834837010 379174274 145207070 932214933 880118761 729085912 273066819 103341986 398174737 167394347 386789264 851230252 978666526 632549343 812241936 542538143 705436114 135003293 333372792 812393826 15286045 839270713 539587502 825704990 480685879 998402819 952106372 180049003 419053002 270963757 13646263 308353288 514512710 474384627 470517101 863794226 724660717 726747816 760340220 383482794 3492023 365994610 625774210 20362449 689604396 608788806 178157284 692585251 804877653 150077196 177305374 66499887 303752063 483129399 644067180 888066867 96840579 235968644 68345695 707004771 514219197 952055140 88253940 717218309 589553892 580653335 78075360 610656690 910016781 661055217 60577883 842066514 256837584 99596011 607395194 962803160 258025067 422438525 158461069 883144475 274373538 869053343 17061581 420993732 150325735 200748885 805315385 460776102 96233181 828529546 580615260 128779512 232360975 538179231 907810619 371565830 838518985 60583354 197346058 178845910 463489491 733989441 940205387 840494345 838773951 713839035 168235978 863512967 374608974 674503780 808290049 732596484 227102720 85503429 36711578 658622066 772591360 663476833 129104264 151281569 892428258 595194908 42938149 446262255 723418130 178799868 277003638 202846332 316420361 45592990 984313975 916380586 814475383 820752672 314329022 416938916 636767371 841911357 911999680 717181685 570694533 208836476 759387409 164635749 924109725 591396867 848025570 784789198 714071289 78367809 303567544 388824529 916251228 553090402 975790162 106810090 608385632 237203092 939769225 543897913 663239994 205164350 861176252 761974050 510113927 704310709 409632678 992148480 353186800 636176653 352581563 527752434 775620696 817161469 828295835 311624738 412570333 729603736 26639583 699836753 693317440 769405614 294560547 945326423 813391860 465132182 119992041 480355776 289243354 827227731 115797856 921323422 149564374 856252651 377090669 183108801 958927117 362507765 496792282 405838448 979156021 200323136 746872315 661615306 275059704 891781797 567683956 176319980 328029164 742805805 812187621 66357619 970748745 937619940 769433476 707859949 791568503 175261724 79086814 890790540 914647735 85974898 806527044 167271392 636568372 900111832 285091847 133303652 595697289 184193538 385291571 273105598 439271537 557726337 423003542 375992161 137916746 174333312 695821429 89780745 712344111 900245584 178775365 157840649 885264613 468452079 687207617 112703741 467130455 995242613 613524829 931199953 456160096 936253241 99502971 695990362 294912427 751248350 681052809 607239545 428251296 826334570 364420472 619991158 894640513 572059865 251648082 357480995 992150916 843950044 67482997 313535333 951844433 944039524 245297915 396646258 153108891 596748142 880619759 377498780 436406975 878052156 643537730 688317869 103457164 918691539 968566092 842259498 260285926 47857305 400072604 930168150 15231043 171033592 396278583 184578852 502168150 709982238 823282553 736740863 428797543 17022682 802237327 976389886 233952999 243419498 255290095 920341868 587463039 435271958 238242847 366718159 816141546 41115801 658077806 927031001 597189639 223392415 41527071 783559671 258698191 546945393 831744345 528541163 271973157 937616972 349055565 43281363 582895610 837142256 412696142 803853714 613907690 730237428 150891839 353004482 999299255 490063161 449094290 77375311 911886326 973457026 376123112 520735277 936212765 814681370 414996035 973502322 104831573 694872172 344294961 143583490 927102511 667404540 259213093 716433070 749392923 357149485 295279653 655553035 979261982 438428813 540569623 764268917 998092076 134140311 444716745 367266239 879250459 773142257 301393316 523479114 227021661 488309527 492579332 283726677 315231350 451744143 209932420 984785183 718789474 424123122 41937942 135377209 970569162 57701665 438726993 368778431 780902356 869675357 808268199 952960752 469162254 371374733 346796706 292399856 571091052 541447172 551818988 775394155 967783094 338996945 158222205 56560448 793334433 338333748 417174579 378495113 500311039 221055259 872096543 807783329 467753823 27826266 424905292 226404950 664698215 643986167 952848840 93220621 347680918 673708534 958312688 342090389 415034606 255339155 938807552 844418389 10320060 986521451 679778693 581674901 681489622 667104178 726294113 181588299 578589397 190127449 15773586 513537598 326475145 695511502 272677144 56004042 475156182 281811407 141110701 171453971 417803632 246063892 613643158 33755469 935844373 726430842 547882632 810252776 876790111 355749645 505208939 247824142 810622778 458113729 838924643 64316999 766767677 80396948 429068379 542777092 608655253 352950992 954689448 169388135 216031069 562063405 343621676 544543810 743672541 825440956 955604119 144855205 98809626 572855974 492609489 868255050 902755367 780641944 179803975 500511014 988096537 352791821 593483535 938745787 359414385 674278872 235441075 173736355 814769882 190408062 660726726 28781953 193159366 650868446 741405486 389761140 444525650 708076386 146763727 313681249 807165388 61134509 224249158 957517005 27770759 866025442 654876721 245263125 816057667 158562690 596209469 468730357 941148647 959045667 469904882 750569196 434521319 908142784 491700657 937967121 977811967 661909818 126482794 891640765 549254678 471777089 619736874 271974443 83931682 721173150 473024718 189736997 210197686 789410299 110495232 348328058 653369712 250055986 289120788 699519774 851256925 955384732 430382367 868897915 54550084 606228542 236344307 165273378 264486838 647299631 367715591 831789912 739593990 694565607 823988088 710454016 299157954 496221778 811103447 106099070 20282211 412484054 331185565 808028648 634749895 18951370 224774989 524525197 628291485 871405007 989166307 21230697 644819770 370384000 940686385 403228633 595443252 478615090 926627367 67758970 926649900 513322745 972553929 685277435 954148171 614606389 693798885 917232105 112834815 791425761 624076900 5949019 615777086 282061420 161684808 376437764 599734627 334891875 83295463 886870692 175263016 945075482 305191291 907431154 413353459 432958135 601596711 869247938 165475509 197006042 314119026 745919316 613201299 566241351 110300559 280109964 671977724 935323496 306665913 944652466 487313210 158793179 202191144 461749070 479836716 229966702 695880433 542874785 583406000 49354882 443221569 774564338 285528579 153646616 606824640 379785991 211283706 30809175 453457694 221112903 351707562 174226421 745089545 652222554 206811679 551471022 432344677 292966613 759403140 101987874 652353004 499197328 740037200 978749353 538792670 475267513 241489608 680236044 997180793 596026189 734747491 823084608 418671056 826506445 157021943 567567344 610382240 510340745 884660822 302855906 317881781 454736728 974670807 739934250 812003444 118276458 374600634 689746257 659392240 114376737 619128928 873872872 76987168 943173650 448461130 888379476 137759224 189688384 440944642 921292712 161733186 898118058 67527461 779420003 581102090 664765534 419088842 91939009 14681004 509998613 938876051 953653026 461029971 535824590 144927065 575188700 505845841 544524058 187721601 298030517 86199405 145302621 844539717 347931638 891936614 59466401 43933668 957269933 556363946 239792211 861787232 96957675 778054870 869404780 527693875 484062740 672963050 600439588 736962817 236962348 108355825 82894821 12582316 895826373 128472228 313870206 337612116 57199527 248973467 840220488 377687130 497193461 131263857 888676632 952814637 166897589 567507399 930998691 313140500 87086395 813285562 442741927 240417888 725890251 761039285 210740861 736023614 392251981 17318536 451096485 763395955 321581664 123721990 307755241 510970015 332483293 362549873 301721250 867284322 924108900 550254269 854822155 833293977 782596940 358504582 350061594 42741841 43069388 807160596 84061308 241929271 640846709 164122141 430630463 182975156 987988972 241827432 979615087 880889129 305627479 789353714 698294583 668248621 829055988 841734722 863746584 180082959 838933518 278727500 867748024 850763448 425468701 927042704 406263560 999063931 11267359 202863442 735978435 351442700 158918411 386848264 13563708 71299428 195526286 491524591 454286113 43629664 439687972 849361777 277202316 103524394 906855894 1655547 46388750 385918075 384757151 660561280 110099381 598400924 277225072 848124081 745372590 971814507 368165604 341442752 564898307 20232796 377679949 990903766 825604071 730343602 920188405 737208306 207957336 305293088 534970203 421109969 618998899 243365541 27270256 394666905 538720934 301975370 948638318 932586123 896191257 306110787 373820528 461757039 126777939 741066678 199043555 619268214 850421664 969354763 129800870 375736846 727966717 962393923 105224658 78239412 807268801 869160033 797162493 994066359 284801013 101826126 832602167 367913392 733474798 165206976 438337875 875429388 472692597 403806545 456381622 802090240 481563818 94007516 559835257 612630129 965273544 45226993 699341675 803405989 77172598 142715034 358604450 446259295 449996656 419292042 661725841 154671155 862814324 692690013 867674442 853351517 58525913 406412347 314617263 416867487 381547912 551877041 94044555 313913395 243183265 314145996 552488582 546617821 910657765 230989093 170273254 981787880 582507558 681690840 851723200 507325613 356067091 32013761 175929494 658095028 471862440 678083310 279267192 284215092 995020897 150173975 776170538 996332376 821839543 440810741 998753322 567941532 564584883 853825716 253516128 212353030 551212598 356007990 226711831 879561073 562998391 913842079 582674369 633363683 186983456 75826513 911227962 273726142 848393179 122184398 794654265 129543384 146604710 32534599 310512604 285484061 602810006 348949780 655552737 980481343 573054785 724466696 709155746 163147046 898836916 80505016 827476536 295018557 228503026 108406235 598996062 708463978 500579710 643561312 709202176 607556461 592216110 325730416 88581595 795019887 876612377 561881799 459755222 964745912 477890678 6825905 172252797 597729185 392672897 680930969 43943933 56445835 819341357 266462104 51938821 372167123 999430763 70936325 141988613 844024905 610798911 521313157 512119523 212760835 582341364 654808351 189218540 122957897 86098343 669110916 321399301 739282767 342860407 660355498 454927007 53775600 337057781 949041286 50975755 504077173 560845304 440859788 383712482 726684897 511786137 104377395 485565835 903233809 531169456 133029292 935730571 190993988 188409604 62234807 986708423 69133963 291759997 230877173 364428899 344085988 4891257 290793695 506838623 294089495 862616448 194955954 454720332 701880830 390778348 329993529 69667271 330708508 959423555 474281103 857017383 176379821 122244710 168209258 913345137 519411775 547172732 653359741 191663061 659331787 256118814 608668504 385933632 404546903 862442591 52332557 913124008 813191459 402957156 687517420 179452463 26864708 159280735 520814936 951602109 81218777 686354193 238505855 543929455 960858861 446100466 297626376 885600707 793557063 935026988 678201588 235843414 95724263 42052708 95504499 877224005 938677742 943223418 465047179 376695699 611312671 707489818 561816677 455907951 113518629 816768556 951615558 340288044 179177689 345901066 739346903 809986620 808589909 482879400 174555125 848925057 315456918 118538758 682764544 514769030 737633634 856669547 302802835 469033498 377424614 197016721 716264906 940213754 93403402 361313898 289711081 261405905 636781407 818638465 117575091 267777449 606315546 164553741 823717712 483665956 399354740 971399764 84111477 502309546 514170251 895333596 930331171 88384487 523358782 863373130 37204518 618287357 784406278 967666870 762746364 45721802 433893930 249244800 674441625 796627548 832450020 885426447 299979405 812749687 765179813 442543257 518279782 179118679 182289973 668863874 433755808 853763911 61865508 546239926 441898302 700472814 47348912 478023537 518533425 241278061 975830828 538263695 975440466 700017747 395164352 766950566 453100270 519682801 264864917 7814690 680778539 328720897 916733386 666316408 271776564 854464367 97316333 257827778 189984977 524056101 439360472 233242005 515810320 995348800 585809392 289367185 327721844 874327941 165535454 839889287 445648591 872802655 582882711 792334647 16416018 822163132 93073234 495188504 427893526 222448915 453131788 738144299 241465378 187795057 552880066 136822638 68340538 975546281 702358992 625120624 417941666 486039690 400131983 301461754 583575673 162671757 464291652 158608896 981194841 133900583 65044939 841064798 117353537 824755708 336052656 166231899 587986176 940136596 469375971 323933310 974278818 97512892 652592618 412370315 690966090 736645232 515814333 557337591 240747655 138968027 228689208 660764732 286379063 249991611 483552348 159791624 831111929 69557466 802955508 772362280 945794947 366183634 784945493 860092751 292339173 575663851 440535693 350018723 747094935 155514100 444737209 20548423 664162451 79488755 691931172 577731507 571764251 379749494 760763047 862116064 326333199 918385807 141483283 36064570 614654308 612027912 496873395 460676542 267748684 599156374 549898080 421450440 976136665 798007846 185899334 754839791 923353769 196026346 354550688 101325625 79697371 19850501 365850895 246752235 590451610 608362017 544414674 59117472 659416084 392902329 255357050 259130190 855171175 68883010 311809744 484771594 545342672 255771005 729718571 440922774 48263591 245288444 272965344 542183267 446588205 221037010 968926247 785208815 881700884 763048710 885483510 283527825 760065009 636320939 26866454 542016165 597695178 96242890 64330387 838256619 796219856 533510866 495877142 187711334 742493381 653195087 119351491 269232973 957785927 330268032 90354983 648471104 482723282 80704560 479779595 545863171 361457448 354725604 302673473 322712692 814974047 489593443 206759678 985985783 171174173 27689119 440695068 660255335 785724034 215147692 460869829 821938669 255802036 693894963 299436572 901315296 934701783 289606912 232857601 699600923 445203564 246870656 388405973 144814978 366280406 811021432 648308372 619399855 779181931 153178068 720222169 765120765 330047163 924639152 826524822 308540001 63361502 852839210 779062824 935722599 187143483 902433901 523322679 552486099 762096591 63740400 238392761 953333544 910541281 119961021 195633912 925039034 208312001 603417683 246874934 151411083 919174688 790999485 272899140 710581514 968435908 736395098 886442258 804452412 507164052 784872288 271550101 111658977 596484606 98900225 157132482 714192630 783821495 358479563 706164204 278019352 264868551 199798748 526024515 522952969 406573208 687545297 263883836 488275658 390942612 345218864 145502347 667827017 263564722 81983667 837262097 210873106 636023711 408998961 531507305 842737023 16867512 402777803 363255417 464255151 740216062 365965077 79827793 51765470 212650351 770892811 834619888 553123081 447630540 739139827 466634390 911647239 477858885 591884533 132253176 771386597 526235647 672833284 550786459 302050278 622994423 857513914 972433678 58692362 812252909 706607048 512810206 453694205 120298433 771576753 341821654 644141372 427253935 603965969 781433080 635116504 989314068 20936222 431981580 368958859 735554046 693240639 249163738 68011955 13187406 103212246 367089918 174043046 457131127 777642376 367515431 831528577 45028893 218713872 245753845 332688895 245832665 69204043 180071041 141094737 345293435 86988048 205267243 925760383 157733988 341810211 603401502 948084936 456994084 690198171 378820642 209494709 143934013 234001534 597134861 810414681 393900841 340145178 78651072 6464046 113610222 550942374 569069696 212319529 571821002 604079269 633847292 357419683 982506523 652288246 571598111 16968703 17944947 813532978 143950654 338896768 955332855 198199099 511484728 394308898 539782708 55538837 899285736 440351829 918654468 884379291 279989418 619900493 412486983 535091303 850968842 806079563 316443244 195536401 840464135 751117822 299387592 416997084 582811522 425666509 193499043 807905520 41043980 298966411 489965954 772907577 733941702 495637310 807346611 975519781 561074954 113598499 763565251 993313403 886307170 823664704 937457418 711457452 375472545 420474630 273739065 100648605 766843121 456148350 123214746 575857664 586223771 490245489 511840642 142227662 667927508 606568402 766023085 439341751 800748963 726086770 305747527 741137695 222310502 814497552 878391466 71209180 719500299 166330265 496494928 35007055 16400986 89533467 717703488 235524459 344811516 742432261 389558880 627333550 753064591 211216129 296965574 147625247 784221714 196257043 305216501 64441347 778406743 355788464 251226202 335504048 777325191 572305255 921757646 56625281 293423933 319059296 640620310 987787631 98591803 874823689 319931972 197346395 935272989 179166219 602817793 853076226 97881444 519256913 194918611 92975613 831955177 214143787 502603805 219970211 548622792 10909764 372871196 785248489 641834913 119083586 779384172 659561112 608477706 193183746 213239198 547978664 210360634 94262076 838951230 231793952 595585970 707325731 496022896 214479460 521168386 855555517 510955018 734189663 164618360 222981325 489118190 886353537 656609029 99566613 645424995 932659623 500548106 715480873 760154785 343591697 358753902 882391187 823354844 234918419 926250708 513386556 789599874 861677775 729727553 525798854 890988297 846979029 8382866 662451572 159029856 187734889 470236948 197431766 743777218 297652983 716626148 409062686 885680213 444184832 938524257 491333169 332900202 898384537 580540641 809055139 308003534 121696735 47727088 751605155 155934401 680821756 585979243 645857071 141053177 619697706 473866445 913655442 866130750 831715345 921966281 698211258 828411859 960903536 539521979 165052239 617704290 280517968 132591820 689574410 680827439 951349863 984711627 661283329 426338221 673158843 912197324 449428687 278616582 768481538 809468867 692837393 953022228 739040747 713676444 444754870 979668020 414570293 259325836 713360212 427744924 717875938 998702637 665414603 510625651 707979810 996228462 222547289 971274353 601773303 510423793 718198697 482622078 816804811 585017464 333341801 655657969 179256327 393137994 583493694 627997185 583730833 640847260 812395172 617430920 212520900 822727130 905023421 924224751 444739431 41634608 99937745 662226584 15690993 453242098 710713385 983996226 100193630 961015602 700096014 202531089 970418976 175383693 706336926 47695906 76920521 968731839 294611094 456947821 668743109 273419337 505042648 696550493 111696960 651925245 993802276 58633227 757959993 775961652 94375850 915875889 461215572 845949348 858861436 570638774 154804268 935884337 552255488 800241047 349650207 992867728 268893048 51020276 284898887 712951718 773323802 963194521 366790269 75180050 754238488 417903253 870144793 386665374 999505665 15765256 204325794 989670016 80786932 176129652 824449935 686008168 958730213 692809778 835186788 995338252 600567962 672532936 107137198 44469173 680268741 473631158 696525015 169775735 952897492 897659053 153147198 590926028 249757602 358923320 175070647 535570958 294533164 322603027 787468347 959315188 142916238 892907656 913791884 34434430 242175930 884491707 23581846 438208329 428085268 281795812 735724725 680819777 375410809 369684050 808877524 505063499 825280114 965505849 355273164 816914853 492866784 352916129 667664626 796954514 799951047 64846984 77947428 136285448 844126903 107860675 831700563 574479653 91706605 706328068 219133696 729276390 207056690 888325927 870455049 386246400 951815996 985869905 849947391 403675957 18484460 837924484 540337765 708016487 541597060 776249821 923718628 553174537 565696047 747302259 246007398 526105119 680553018 930992749 698940388 920195985 807178844 103290370 980851765 882196239 450031772 292079497 383732751 743099670 314507226 20436576 224818687 352210374 56309846 236279173 690030795 266935035 396081547 694635258 631244859 143787358 646359875 786972981 341333981 645367514 253249924 591606620 780884431 174843462 649678010 145728176 776510928 486975048 549639700 720498087 730610039 633003771 111340721 244727877 24156223 730243817 515477934 483235938 965824044 649961847 56503378 419881663 423658663 190436979 74249337 810880153 9254923 100376717 927837009 550169382 805523446 153973132 11718407 808029414 42448704 64490648 185660891 579129923 973972060 651250391 771376384 451116438 88591240 176042321 944455125 776515726 73759155 715179169 621372495 734270253 174052582 247121955 981714779 589950833 792437759 575528558 646817757 411718123 752119285 272814469 827819667 430941930 24543907 773603914 761336227 192888121 498707318 612526508 942246650 59784615 165568537 323989541 924086685 454012358 423253111 256988470 945252156 526572429 83046057 130971894 478715360 454993029 73373218 124133351 122455987 597839663 144134339 153860635 865866708 400333194 676351100 573087783 61567923 352015713 963617915 511928041 9090276 821435444 655044468 892940150 83385035 585027387 884427624 947343635 232236867 444771653 5166278 817858543 720409935 730580824 527130514 85062030 590292653 730054856 934811406 757109871 389441016 595684521 614890784 840998942 563952824 672987688 470890183 970562295 683347865 81384282 913477718 812040278 374295286 112957831 109779749 365019213 102857830 430801093 351011918 282434138 540868831 134815711 35929877 608364723 904048960 819550660 874011686 103525756 902931449 462999396 481496975 271086525 892724414 124380323 194490071 627293018 678028171 845478760 757274193 572179584 693313442 86209354 43988901 133372413 166559563 723420817 712330572 386455389 157030504 983511578 38029064 333081230 399102715 111495551 488257026 212210860 113311408 134251202 532573893 361256374 359847220 284207295 772066992 795757508 289674373 809850259 571009772 248900268 663667195 812505420 533337145 989211200 242037908 494454757 227661301 265935406 291443702 668489416 491468957 588816470 10728025 712964332 127834687 316607178 114877082 44619108 795674329 142600636 506992682 654470876 475567235 795773340 408642048 916767636 943494610 91997866 92013701 429799204 784737584 384095308 627993313 356640266 655182926 981833444 177278163 296355430 497042681 864555992 227663981 150926232 927473474 913787986 862690332 802560227 222594157 882889286 501168299 766912187 506812599 609368611 143164606 404931944 900162621 778268776 146067461 111459536 284382187 510961218 793424091 650903891 408624772 334935469 494473322 288019498 586649433 237056454 883505864 300588282 754690549 771425871 97095834 14558732 292861923 34036541 922147060 826612143 215247209 319763450 388919587 7490169 574238692 785401059 997031302 486651068 15195988 4583024 770926767 552300543 784225849 569580197 949991863 740546200 211876042 728080632 402917024 50989422 405191163 108678151 148845603 690658433 320290702 260432872 194491519 531617588 53171829 901063008 172546661 161364840 975168369 198617894 582051481 332162789 168028614 148019018 378772513 551790450 139063878 855829310 224980561 362706946 173761563 777605557 390235312 430031179 635151073 654169876 459427344 319691684 104970262 820568230 828576893 366709156 309892105 579094894 869891340 901361023 74430118 187010053 752784606 239460395 480854629 700983676 788515329 194219099 105402123 575119261 778509429 174576420 107506890 812976476 699515342 860601452 420626121 901904895 243084689 435981697 120019969 514580065 870120735 333250114 518274096 271700013 406016790 478136871 142112601 910926030 833419705 968102704 178578844 669878928 378225282 719642826 581360544 159058287 147988595 20596918 813468700 899374722 254818856 52371127 994690391 159852917 895947051 580181578 841021922 267859846 249531635 635402833 815731786 245712058 504923297 15574986 982018183 659065407 668427180 936104369 914088577 51487640 688165783 284573807 567882054 439469940 749734427 950556190 699586094 116256677 701509019 407540973 132605903 61042356 489270356 751273109 677784706 90371105 300467937 428530825 261668394 475308808 716016253 444690642 877888746 451406751 81475288 54420650 489972806 213101447 372840836 465758791 453339643 887640271 715632300 785065328 631869198 373678040 928213128 381235956 269883703 792271857 567637834 148173884 916163311 532707672 737812125 916657688 784727995 28770698 61589535 811829994 449854112 480159319 356021081 940444976 82704520 96062784 318981329 127079891 233756386 821301563 58391666 397796602 271361855 923491478 154412479 11574076 619027847 811889394 667198762 870036273 936187728 717447897 359514031 886806540 678310121 391361173 356326776 840209960 105220633 971206696 981512668 764660305 665449982 592728587 319288602 961722740 133205512 942049859 496284289 228677709 709840101 456208523 12495857 341477550 342317231 672535120 360255510 231589033 648886714 371380711 536865865 361437434 246479146 931564335 751240600 247382782 990699538 688818073 4505740 42382317 993769468 804026143 765628401 701856026 911798962 818779578 366501263 895925550 716105427 194712075 569306273 248598705 732282090 418596344 303268177 101832569 98366509 104648036 461413199 627241708 675526357 326132260 459794229 189942963 707780163 302835638 409438893 734491871 775686423 743207427 134554622 920830428 340778491 892247805 185958211 383897733 485781651 391399423 604418780 702977260 7195440 879565450 660006910 602141936 950909795 298238080 51715393 750369868 773752901 176119779 269583964 805643711 458498852 221347689 62904847 331418132 39286088 942888008 845917303 308078274 352232884 356307840 709964418 951248927 691358238 186625933 92020165 860827410 287132950 623695579 611138750 563904626 438467528 315550083 358825854 731846880 240770639 454876830 936130369 345809477 8159810 484788232 500145278 436811827 819246402 597430092 2639877 6837419 823519319 476570339 744465736 335865830 80348071 676161578 800208045 924576976 880242906 70645682 399039546 867097247 270349548 71857777 467531181 848180528 222108565 260105156 39411916 97018630 743510833 547457110 402599738 760773110 940771914 763735662 80999533 345550032 63801047 7917051 603042999 123670884 12801478 575350791 536916045 973957221 270731438 101944044 552646110 946612979 476872040 169943096 236491031 319330657 574033488 37905342 965597020 187804617 869132581 417937985 749979937 860264338 330929506 426883192 805502820 19822696 569667190 505093973 834541514 686720523 813153195 320676163 516495244 865369143 292779810 181054956 13630144 166175421 347582754 221594405 62504063 243182996 606081388 356136561 245849025 601270425 439411772 626960468 773193151 855530321 346564252 376881766 70563405 53071996 105180310 359957218 769612146 914545280 145816876 644655702 171659680 152047628 675582097 9548028 842753933 955167144 819992157 993529784 63916249 137466029 361143061 739491244 198130066 549385731 602110130 55162103 691432375 412520723 1403954 383308897 119497721 516919316 466735944 632010067 50773929 332704240 634030623 877087930 435556392 393800260 688239159 178054688 194707174 837137034 561737477 494623374 656891181 998462878 827586095 843014713 196975304 375745001 402424117 87184972 792960504 868183469 848642173 289969883 73406141 891309578 248069218 860773075 804569253 665772911 97647267 129736093 38382738 433283489 980584353 52583462 7864864 139388043 797553400 347402683 840747039 834500590 651830959 828350106 255343632 775848633 294049972 730026231 919059998 373446950 594115468 751318654 732919155 378944018 947127405 958975035 550054652 497099526 725027680 358257796 78378678 657035614 239389577 68509407 636341457 503285926 424769032 650657960 213304211 972421593 879043775 997634720 991958462 309999008 744525486 781343761 73301274 889581431 275140834 714423516 68172777 905718850 76338092 374287080 50129975 484456179 660388600 430743971 210357546 342830361 578367613 803333988 76104359 620303741 246660164 428456002 566234410 135947599 131254953 752094416 895848159 330964864 349267206 656781756 76024944 855593883 775456574 611111996 615544231 827946204 304915376 710417531 23534168 683776989 628068075 772328526 296642252 961651955 410573606 23992055 983525765 912914056 221792615 115141744 731609200 84988347 965506661 477660466 617395071 918256848 54599894 680917160 553840725 359565434 228148986 476436349 165040997 647159743 193559072 101703366 245849512 674813679 602282233 126628670 432743308 180242841 588809887 355113760 386292125 107947223 306463282 6810304 332708076 897244965 52192418 997617059 429212263 661382887 152736303 238809064 789299999 461087313 469669794 70267852 437919697 696918339 360917862 504243475 894875592 63889413 863651748 926684634 585145110 282730513 53360591 598621047 888570919 901501977 373195303 266675439 751344597 64119687 211119608 671164795 945793485 92092991 352111380 652426922 280148460 314556792 68437384 119153542 466278198 600568739 496686273 390205306 938451018 976730440 279123414 23955664 565621104 934730446 366079101 121143744 216159977 542167808 675779052 627976566 148014394 70257165 726070231 892647729 6939471 883522556 426926850 237303221 150266671 891109486 838859380 278164518 134123975 767242436 273886283 16829648 735552085 607285480 482088925 186191969 945872491 823183725 261864594 400562796 936148019 2940431 95987532 382855698 232053334 583997480 351604745 204665349 708604342 207334042 237183717 169284887 263656123 205292084 541166082 893721118 192040867 478143048 820631595 800275467 496618860 923210242 55340527 361804713 215208638 860735447 705449663 873349967 10985612 186226774 389217726 972310616 68114788 506565089 805531683 663529129 794069073 591065924 448314671 789131780 812934043 748185365 447685465 583697506 775764813 938350120 941546870 144376405 189823750 225915451 37996121 647899003 196877489 387886883 827040329 535478598 589905492 956899030 808787225 463600710 274824543 384693120 25484418 933542219 188080758 751965275 321750771 215679428 902783036 880952074 947956835 979818192 446164975 976198296 696691497 517588279 694363775 369262890 476372199 797870823 148207483 925839789 884327410 183881087 289688868 861887920 154553253 733222602 550137112 808074200 930342969 95564072 198348146 419235057 565604680 311094720 37454136 18478067 627589943 794705718 453240523 366313283 556781948 736136844 728029672 392735930 326670999 961649483 649594 27159983 995545467 191658234 215514606 610462021 53520660 905312662 289786989 706375609 846639572 36136012 68832234 93756490 879195046 826768759 658228037 719514285 324741662 650800666 902741524 385961106 955486295 259127031 515996899 594188423 272783213 594424184 12237306 210947023 361110817 866360849 812530096 672573643 794820904 580411900 564913582 304042981 238779953 97277595 661334108 927421386 679973217 512031161 857922873 448259227 395206899 528744845 683582528 318587628 551078254 954639075 784172689 893663058 717115205 954429586 342297833 325936250 573183149 108443288 481394614 562288688 896463744 6258124 314688585 388441876 452526212 955988030 539291558 551495507 912378123 781750475 776779670 547268503 421124250 227748964 54332740 913210875 496845535 81959131 823333627 454653400 918325461 769357651 484212714 251501049 76229574 22165913 50671156 137567592 562406378 501235854 657056347 903716592 899823019 254946781 385547236 941894598 127067474 335760048 557300031 803088469 249785918 214491885 154330947 374398987 298999569 255390513 649736560 210444966 922439109 70004577 223820193 957279360 694014919 843132368 731840819 505721925 694306091 217561188 805183475 640150823 763609279 705210409 143735360 883995637 436030940 601891560 464162750 7037581 305722312 595937046 628080144 561452006 850198995 344122052 92284441 386592428 21262829 589310813 358862456 40632359 322331318 427084744 585398970 700910932 637691230 23126091 322190251 197921305 906431339 807959534 840446046 459888114 298112260 219405352 318876419 671947367 832744207 701746667 337677357 242892120 80441074 883785099 528041928 458214235 976684218 890097678 839891994 123474543 231932438 412743754 496571141 948059244 820694596 730416700 943040845 345148228 306639140 834573075 100772650 224550185 516683111 500449459 296839739 302087233 734477133 752249679 460203399 474248858 409551827 342329813 416154839 48326750 712103653 856400177 541157613 205212260 933257144 334254117 523836888 863767745 454605689 344285495 377138125 26267139 594974479 477026398 441404120 914962347 333383884 24288378 198284696 171648370 521397789 468040781 282197688 184037698 689349968 28738162 434603262 168133345 96397621 746153469 709002047 464035904 99864489 829342413 333103755 663359430 316749491 379977419 306239322 29406232 580957841 320166522 793758950 885475769 731702128 418199949 482265100 295476812 470955094 907497414 941413166 749605596 335464053 306152853 693065185 498250313 117040650 748200840 359760306 394974056 654261421 550690393 582508456 245606159 486705356 732167193 912563307 321539410 967559015 158801007 578434922 218584867 737613152 751870264 564087956 365634675 40494427 939647094 667966351 511299955 589775660 712244167 240956088 616115505 207469431 437666387 977834829 379030950 317594394 142162123 728606602 237086858 367463676 607986198 488395743 995089443 16785017 511479188 380360642 863489222 602466786 540834271 701317797 538367201 693667748 688577954 536692393 813083209 75175270 920905901 338741447 126193748 989429410 744030698 718959544 359112062 254369083 765196660 813277065 496925945 564380810 624919883 877071241 101166886 149820328 534565676 92478057 843953201 422843086 370162552 990596380 137564904 574060428 392415790 337536266 107205315 132108439 659720718 851485749 357979015 457535955 907029995 941148026 711452794 349659096 926856627 329311545 828605504 432709154 382869361 533156508 754492924 344439878 822919707 305662079 702324848 698220918 306206362 635592058 404578546 790209014 598973836 978292429 886321885 142508221 182907460 875819770 972230467 576489006 134647397 709695338 1415329 822232013 474441201 614514808 988418284 62888087 750660966 889877467 721916308 668710824 681278274 927128321 802177077 388553971 208990541 408637533 683736207 262667119 968030272 467629570 67062220 989414515 615724776 956361675 658720274 678285518 694072842 339916729 815815781 581678197 587000681 301853306 907840748 482636293 625657754 709136835 62582468 644585213 244738483 356080369 309592412 358394751 604791790 726391689 741798729 633423307 748034745 139502516 543680293 72356822 603461356 91161572 745276665 626838160 373406354 199610064 583895520 246581099 581267299 318156289 688280374 906721878 892286363 231510353 673232540 329580597 534225091 6739219 796386413 170813104 880343633 966766980 140501517 689946541 404696960 338289903 106372958 71834005 685528756 308703056 830092615 680761095 191948052 746454776 395947608 999026967 604996700 511768338 746392906 26819754 492641680 744986452 407344768 54625406 541932650 122784948 483519945 761165028 865568142 841481566 791602152 125018404 266021899 735479532 750503694 839627225 210674109 379324569 36886744 888618558 141404531 309633630 261131548 729737588 423993768 681577860 201571208 937540745 78098347 975088725 660966780 951564955 268891080 289627708 700397809 725996006 747419106 919438913 336256380 540515454 548685323 444122566 790049207 491370164 122242756 363359250 389113088 197158535 166388754 556499184 832901360 543871943 202894097 26472685 805823642 940323630 207540513 264869427 993928420 96147184 837564790 284036860 898927307 435501488 407522784 442172498 278844354 597227616 594928919 645488982 236710639 676897661 824470658 521346462 96756533 939140509 229465458 871642829 184576379 216873841 27561712 907192854 47435341 545672812 834497042 21516685 436834410 11232565 976516966 262905039 318899349 128870752 262841191 670110549 439520653 577716836 164830972 94840324 59868679 85750131 878642796 593092755 442909019 773421514 186514977 632980872 402684718 480652692 165137620 406472839 780184738 889889219 823719981 226386581 584290825 636780914 784579378 46108287 122102293 970275736 456595794 558231802 726236132 411430353 769096255 934797791 138572825 5298829 919516710 393539582 342410898 201622044 278041540 474063018 502741 674470335 604185844 543505164 699385644 115686909 612548585 110827231 416366233 413789117 168372775 259166929 172594660 851002180 19059194 990224653 388381513 274418620 525786022 912402384 237871378 678278308 285181887 920389641 40356370 787347300 715907584 532948153 417109857 406873750 464810611 319953825 829109017 573712053 109999247 787601043 196999832 152267566 624161210 242545209 913892847 929012116 963271277 71390236 213132419 713034217 560447486 446666176 281154937 302709048 933848105 181564616 239585144 530527068 323411133 624457432 677070657 213426017 694596840 262457987 572396544 105309927 189724778 215495378 438667159 142162229 826096179 200987396 975762924 113311245 96918282 63990415 211685892 959311530 143732221 340491524 175500314 850124401 844374209 78926989 81431276 785041156 881371975 561028232 47099137 588172702 385901649 313687262 141661735 156737287 275634692 544792050 717095530 12915597 69235269 516458484 594739965 876515084 873679764 251480522 770154685 456524289 417337705 360495808 817766369 315352728 305664713 650061499 495015889 948234326 853140699 60252316 290931509 708941427 378338422 359733621 845402687 675858286 701522318 896781946 652536048 774712057 176688617 689872621 88674355 248132760 297617186 656436142 782385516 946340274 848016556 892167228 162252107 878509198 448171225 304243046 996505592 187521746 131436183 835726471 480166203 165885541 474296868 829630300 666253862 734882719 510198070 535421534 275079442 828847955 317811614 530810380 451974084 119676497 990530903 864317962 319976590 980489797 540915168 298911507 715459801 428742042 574856028 684073811 62186259 199198259 878937472 928873653 221057940 450865441 862831202 8797765 734675408 320539290 104303645 263157895 847925232 239986289 213557211 947654243 772284815 65942525 5549432 313373898 688589762 817873699 957402226 813774322 720193752 614312528 251888682 393332667 58254824 796430492 211895757 247595095 774185243 652786076 266347769 116969530 765304887 921844597 815207573 646419101 163690139 759959935 538311129 767125659 792439022 784776610 988622707 196182067 485563442 759025416 109606543 189185688 811933474 807924896 228064499 718551959 535542514 884714623 109786627 527200117 26043433 630484808 614498464 139663640 262743571 914085356 679900852 568310193 130714629 280737110 704674859 976992151 806578948 261744402 712431343 838764746 746937619 484978688 314431297 680902573 533589421 724309374 436232545 863526511 96696489 341424309 601485099 648279741 624374770 994463384 82072539 573439864 407742267 298602163 616375813 873053940 573236743 659717111 386978861 842615097 13158593 379951389 613082163 89103805 39981679 317337404 808001085 365832896 472406899 539626863 739046237 714823061 481474902 671482441 679369051 642492009 279236706 28848026 166551744 959294466 269582742 759316203 486509621 211390790 627861150 606657146 376525487 843858247 994872469 536493077 52532890 170157661 661975775 685422709 270621267 255483570 479454109 324314941 828316226 381692353 679781422 373888354 772077546 588221585 365973359 317685575 126337540 432712567 570821611 367200511 711237725 527169746 860278715 416023460 786350461 999442042 852788644 96256583 702666557 228997851 631372136 894500082 22225080 651411477 215736432 145033758 346997862 106999802 288038411 539804084 154504977 224488853 565289897 898100965 628718733 159864666 118923533 45862556 617836752 474214376 539257958 375270565 204029841 193299570 271423158 750029283 186923321 482484159 592500795 427725442 791706892 811110031 974827765 454219857 524181191 191915030 105883163 705722545 311216694 524578757 306293944 270406176 51368171 417573453 852113603 855769228 962191684 731214682 379320851 364992658 360696917 758872887 988875949 282008100 110682801 442658329 200672767 900478669 549550054 233959356 927517986 9517283 668797763 528263458 203522535 808388822 738510115 953772563 819500466 209856435 534933056 342136945 931590560 696892314 776177257 837406460 169432772 868677961 343535605 464704686 334288693 695355343 609229680 769772269 598274276 338629181 42371303 511880989 217580589 534973809 524091409 829449481 792210554 234854520 970514389 688774902 724428134 659239374 823251442 837916975 356437757 44032643 745954760 436010624 852820106 353080671 333324837 500671114 331951289 710060229 501815786 657089491 543772387 624659680 345397856 211283405 618463419 722841729 545115987 216794773 463208631 866491198 774060638 186471524 668690128 478464177 978191933 83816673 947692152 16937498 873629027 946416119 670677730 486513735 175317278 334515579 473088054 583948856 623568788 572125865 772694625 4095458 129270422 849436940 448263129 427624932 519561677 973673046 144774404 26599002 185374944 684142318 709526825 80443500 572615348 78708674 471298308 688899789 637954732 715019766 134138666 543182744 564234559 375060723 424048686 933929743 476969023 438589766 239712302 416863797 91384444 723776898 609571118 212630659 607110952 714256919 309833531 573485159 342916233 989277893 238369292 949734949 745935072 347836010 490244240 930565063 798829906 323455647 436205642 866049343 698947688 694335998 67107376 631016635 189124038 179473885 175365775 687606229 470335189 959368363 36190315 810682694 83837420 780515606 870985640 240040989 183960176 36753816 524383750 347628032 99133091 188465506 622356484 419211136 650841634 309996336 524310133 348512687 789648670 434509620 447358919 933355183 862768790 794068580 163708453 716515754 174720658 862980663 982294199 160947574 5193638 563288544 617166893 897060048 80248794 27189411 735047715 54605282 286516563 357618672 917996479 467914755 49503844 761122161 378805643 436225623 818367612 3894832 930337028 255801849 41607435 913022196 505976783 416231701 86683637 653403350 294434231 523432658 713930437 403476287 146134796 544699240 212048087 116094402 184817505 351361547 753119674 105946602 406770750 678571427 140309842 491149761 174317544 873358459 265513051 974332640 9659662 870416379 231605914 57225305 632810123 452247226 268816349 696764074 24322590 154917861 483537488 296452302 938465604 830212885 594588152 68896302 528528086 596022326 110475238 313108569 354410015 350406699 880865255 659084349 111037148 410378454 998788386 269391144 208399339 41683617 937862819 875015211 233907815 632678882 20519494 771203081 555264736 475048882 331790950 445479281 591828286 15790146 768078469 990704141 480121959 141768331 900500048 69890916 640533495 641997685 615568700 478190733 282513938 56818794 764310235 611793512 675468013 866730795 682028978 379988838 219389752 928321414 570747508 848157690 657696433 874979762 945688959 362797615 53619399 410855786 938505003 503750156 602032211 473293788 518434844 346441857 237748919 516410960 359009499 128130092 252132896 260315136 658632137 598619705 301969157 646542762 184172586 460763348 331751424 911184672 977903447 484966298 92344099 98304235 567032532 655036859 881670776 274268161 702465031 477289197 473114988 464085825 133596828 540457794 962227697 48586980 941949011 394958466 380356547 482383034 840357276 859266768 389226769 955368867 991044147 159645321 448309089 865677815 810443079 64044738 288750537 823296480 68222491 777164032 594950733 579138071 24694987 130398257 320994438 899459604 397693450 467454028 832974247 191145755 143016417 770802545 656285299 204820339 793235750 483507357 139413634 855600320 853689932 56229918 918734758 402254753 812915590 931209110 40064425 63774992 173127004 368294089 635345390 24364445 651791357 824198332 477676238 235989876 196099679 705690927 276248249 744047064 700118597 419653283 479074990 962420065 876605041 673123331 115733894 249742312 384850849 326327276 124804325 472928522 40647579 33003350 99455162 226199563 800021116 599439096 317739089 951921715 704016824 43984470 456956343 332544158 214868568 379354998 133228083 587692922 870040186 480411300 571243536 322638545 688275006 439476853 456501074 207135891 896936867 776140579 898013227 834705532 697568281 360734655 753225920 59178813 451696206 16347814 352718928 521827070 205747314 796047933 153829630 164835840 162774870 482370031 568485784 57173953 995676453 950524059 779574853 902057304 64186799 138436442 83905846 472827388 216927543 926671224 626517016 793595672 429749504 799501352 207702346 131861841 949833127 738709036 654960645 622694106 267746251 123048577 482371621 274289784 456446643 277888379 297599302 631692106 655401938 280916777 894891858 878167622 704557623 444753698 960673577 550390749 37802504 398171128 922029501 431602530 930331573 501826478 552751278 982933111 812329247 262721940 639599028 988987323 352131954 834058204 292717445 876792069 558892378 528094530 23178443 354861623 201651428 971710875 280472210 65145852 242889927 62071927 189841989 114528828 914530760 205432077 171206547 257115327 483345337 426942940 183468335 324655446 682856412 681599628 538352816 194638268 407945404 49525949 663811422 282813214 803476418 444321341 271210290 570962990 996261851 538364111 223206120 377084127 891061763 898589883 749432674 566694351 696231941 98555326 580138766 747366600 615462532 425895752 39671363 793835090 197819967 120765706 761351117 712029062 790637341 20720706 610955973 111887897 541909540 787180490 179170319 992919072 775486520 596313879 20569766 350700692 395086715 135651287 647200304 113417599 858273576 233174558 411378537 245582528 396363885 572339650 377578719 180351249 83362756 426039900 518889091 210374966 582661757 202322045 579445273 103032894 205658000 295322924 779866729 979015177 666132065 646371953 297554239 730399702 277398233 42638688 115138728 589993298 402430062 425402570 233383366 466942026 631534312 600834745 663293862 84634490 731917910 256263253 943968898 771148674 60206135 61044664 523189391 902754750 115213110 119170562 842777205 523373059 233228983 531205975 555650107 33906197 5886064 740262072 194568092 702917575 817827280 732266962 507116954 102866909 761936265 935740418 306995139 281414707 267470104 34713685 967367954 463361306 501372644 134917480 519348201 639845347 693117421 797305579 711064818 771434012 659164950 268979457 416895888 575294210 210139858 45261545 151005134 960752515 254144571 423640801 853455056 949666597 892704704 756932162 323640178 992817439 933044890 772874320 989928543 479285412 359369689 932604227 782866868 334167281 618292941 899452293 99764787 313169933 595871949 368692399 780959996 481097125 870162618 605614023 608707738 946640911 824461649 193250471 13457458 748959577 572276406 43333867 274044487 799062227 621423171 729368957 803995281 637931459 791586203 389215256 50064332 222121331 887319108 968112171 111507509 367794683 651252057 886339105 607688870 508549277 846512753 806627024 745431595 152223129 164890034 353689216 590884869 890242777 478919032 567076685 2996682 878271641 969327768 781078765 748566243 31872308 867658812 144533517 42764622 382322570 122261173 825794278 435295778 337704695 794338323 319265553 181072321 699160619 287684808 670584588 554815567 186508725 1034540 997538346 161057132 853295554 296802718 569223382 296707921 522434320 711441360 122211167 369129017 515508208 888492757 64127990 986173504 774833754 872518932 782365731 711844117 2046197 131409800 894491182 968652364 102036577 215446106 862557161 268355487 291702075 526535466 700077621 31315442 316511756 25766957 321525206 110920782 793814796 336949905 952650457 675323417 127414125 394586229 669873083 684027617 939235147 714018432 491253535 669254352 97173964 22231798 640143093 6123850 216534627 425208889 208987767 30439133 242828429 484454456 893767582 21316397 851883468 470768458 274788276 254793946 221368530 771989780 988798614 253475451 140237604 647484350 815557095 464528152 179519586 903033941 786303619 909490005 877092652 320048636 345289816 66725534 173463366 609924561 994431269 960287619 303628479 705926689 872307672 955075094 966352681 322519821 846390741 727034427 474032125 968614727 306765703 116828950 816421532 928002372 319840035 673763982 910408470 68090426 516416685 831957303 734880139 464613025 748755568 210895761 276087326 481642621 400721417 644151648 319307757 908033706 580388309 38682030 876267769 803252975 638662433 151073675 95219568 206852692 298901027 314190684 114383536 593381488 512388617 100477286 888792955 746850313 607694160 309843537 886197442 152558709 920360186 334768614 730263751 108401517 263341596 623450595 434626896 360841960 781727274 765259831 243658351 157624143 64432039 410710295 394832755 654113023 791885240 88096354 145588918 310105512 465776960 999046121 482756857 668049853 697112422 99906963 379320577 142480502 315017497 712217847 691564477 330058665 42183909 119622557 21761598 753023311 238572239 514933382 343287668 450627093 929455232 990586027 345361700 31044771 447172525 252020956 754118554 936920941 282266720 23959074 62671178 373353224 92370006 53825610 281949804 699955822 879663382 670270290 318729921 607860857 446186121 252278068 739075134 981678475 919383684 500293299 414264662 499121803 203706820 773786329 948032162 712762540 635787144 322342591 518664147 759300061 295147061 393880525 437619651 59806487 39555952 439818670 283178923 451538386 51256057 670677050 503884005 233981612 836284883 56171967 19143405 503919503 879962548 803442460 233881672 682030945 693134070 851144682 833777912 668750654 259053417 286701166 118533493 660264322 520549252 230195717 487001834 40404268 319570406 173086425 476536691 642810299 40679223 486468188 527309397 993501056 675311169 739354513 31083549 256564704 817048875 190020090 11351444 927022024 529854597 545187898 576909342 45783898 9418763 8767707 873816393 965313448 653291044 661349783 620771983 718299427 491447115 760121241 945610923 766522172 791144358 415864254 376000535 479980735 715746523 380176030 163285159 451624780 265387666 100505926 213884900 633069382 891966283 515602957 454756279 517440122 81992328 588902465 734786412 229578145 167826401 988382588 166979557 491635650 134342317 680679552 901660546 968559469 684213493 5113977 582362445 834201930 216868510 932189508 579955447 947029575 396344229 830191649 954629927 116581880 215911103 258142634 733352232 758625567 699034611 734288300 410598501 321204501 796508465 461454646 745336204 201187715 88444868 767648067 402717133 34339160 728400284 783183088 88966882 660072464 910724127 1546791 386777478 226006799 974927714 586480841 927621654 545241736 350292003 60991713 616692843 731851959 327065237 400322027 197415129 661252995 657292216 932504758 394408514 418675895 658419022 488233676 737275852 889729955 169976490 39792223 509649160 152868304 441736354 885713911 817567717 364236701 900634811 887750880 670680391 384223154 655623548 83930777 178219068 871389215 491521585 431964047 346963342 3439653 47240263 594865716 999141817 892977811 176104716 51833394 966175272 143827813 718342742 580087613 924370187 907964331 95406388 187700999 757504179 975038716 27093264 333904232 870760441 59400680 887384667 162060429 587479427 148704245 930191881 491391176 97997666 797752679 254337394 776573695 536155162 667424298 543937788 913813603 212158615 900532748 803101913 535711443 972750561 606792798 619904037 110452732 866802294 902601342 476892237 366279879 241173100 698154707 271136729 870646871 892277588 153866854 523925393 236775412 850604350 786702120 486712964 120546499 408859977 974248376 207975572 34248094 299357449 266956 372620180 932585760 792718671 421725894 392448836 319843395 290687204 573227432 151184298 581081493 597751971 18975247 995507219 6511939 655391047 475372350 733807268 537024140 891867462 547859821 962034636 79039185 395450132 531766386 768891581 875219185 869973960 766885866 433819155 182473608 230598862 763661036 907242380 396147107 231472551 281671819 714724092 734794271 778052234 403482852 663943802 472589383 735037831 239355910 182741162 277463787 318807693 517275967 619626081 753536443 490689008 902310015 171740035 752214193 625138719 602209373 314251132 561820033 639643175 205828612 317387430 93448112 312575917 897844938 377727191 236424984 170910735 833201137 121789686 83357878 311260036 704274625 79414032 295848290 591657800 11257689 326289515 315070052 237923078 592791425 900541462 119652213 466506624 891510125 92211758 592782333 887257636 676350256 670953643 882310766 141516675 140240872 856336440 257649228 381490425 690337065 467584500 53438535 150492529 800421726 580967858 209812347 617161698 499593357 422283126 885082515 217935749 122204338 946536549 301169524 688973125 833803692 845118519 44454292 729118919 696088786 931444899 206057108 521645252 772873395 716038487 296467498 605774704 216470623 673783813 148810876 413836815 257951057 916873308 993818661 998444235 406382953 515511760 899928008 535210077 379944607 740978560 794782464 701086118 491656393 665512254 733523229 662834666 359136380 132605123 58328397 106662179 957272266 584779781 67424348 946818823 978658166 907944167 483925995 497411914 788786840 683227653 882274809 227256591 163465627 694462507 545431946 480710455 232322780 29036631 727744493 428812495 312037874 471794852 878928762 610392007 438124423 382294344 803908584 830633784 434243577 47970932 51417506 938049723 416108313 598831832 415947453 731860879 227595779 253742843 457093361 177287747 430737344 445286974 934076207 202003320 14554791 575894802 343728981 846394263 904978713 22624107 318644222 560307010 123831371 947848180 277176456 168620076 328376184 209016225 786160973 540325114 809936975 656108865 959476476 474848968 673467332 396294610 104455507 1520769 566401129 998953967 355507480 848325460 977674615 603580074 786563674 501139654 360832432 303621482 403839241 571384202 795891654 796548867 633706231 504488273 957712696 196362441 635412973 715488459 139386152 846126490 487567125 253160232 885062703 948373685 297784223 297528680 698320397 69337248 946488624 672932340 835311945 428746754 369092773 421208523 815362189 74564444 137609369 819446443 450146662 418966192 500110228 414067493 253186241 745490284 464512479 733753685 508376259 29656970 458674816 819219833 141791831 979591407 903831745 945185039 553760332 190868339 436450431 755332071 770043844 677016595 800261617 84137463 672726606 865653831 561641530 168651935 531838633 5528318 317417893 186482317 953430121 340696561 68855748 434454748 979925867 72323410 865325870 424829964 760732988 595395652 19546387 983329211 471572797 985366686 343201969 371116831 229932275 930631799 574083440 678567105 746876209 417079575 201961953 916278522 880354334 882045455 231057217 237600912 476072267 96880457 982690926 839880866 888286648 775767132 567762063 543040576 573549386 595246007 444135884 92316725 332848465 378567488 634074139 484273951 426553151 538719981 918481386 48928592 652968199 249534394 101762195 873011368 519971470 974648154 168329985 45278189 177981474 406404053 506623226 738409378 387856573 360575190 413519015 718397268 549859287 465183376 485710183 597174632 744652048 897067605 547823844 786318353 159523217 778021191 807651032 453878216 917822346 980714437 918131003 651120423 563970595 654270421 863349174 134583244 720145253 269657050 569680878 920394490 666389186 441573842 517962393 235618152 590514171 829042788 796048353 36495916 28890712 875472398 526025674 949480223 975260672 839214214 804366024 1694424 20244868 105310024 68359984 387595528 859083843 949512903 101251256 906216477 341695285 644123042 425752845 920191676 679356744 918606006 882899353 103212849 311431154 748861594 525174685 66434751 851001641 420191255 151644377 790366750 547988159 895161525 380255390 484773044 564552229 530370874 940148916 389399775 68979672 764802439 761211628 491930056 876019759 976843149 147828139 131534107 611418656 145132749 762737131 727791946 94950852 176920412 869326573 233225859 90277711 536962543 286879216 787841421 339920605 734429162 892387591 672131553 502043390 582488737 935867406 738478637 647236810 716365627 110041746 637258883 600225600 620483828 607587204 7229278 993281044 757648330 729157775 65867725 728454529 372959451 386578845 282607331 952426791 704137265 476550949 557008134 966403166 430510196 497352845 357857313 470141884 141399300 128853296 898085375 391287212 857909947 658389498 158495870 936364976 657176670 621232899 802374802 946141096 723785944 836046921 694271787 885915751 574226916 479785788 365542208 886762658 267734652 221067506 518470265 156537861 109534953 332709076 543800646 282218008 609380343 250451338 619717598 274936912 772797187 840449110 527657984 106049156 124476726 288367886 311950051 654400832 828643538 879812938 923887058 385504598 411165614 555636294 834461340 595892355 884912090 413832242 877260354 101191801 97114118 391707104 425841025 154714491 203767857 139137750 563240351 814008154 955312569 991859327 308889038 598737169 961854521 748380040 996248926 533564477 353608701 316898833 935970052 280465589 778018779 963925741 228779089 246075551 241427941 179427829 799819132 300961962 782492682 311966754 322815775 201577230 547100863 596004567 748537425 686974397 193664166 506710032 179176736 16688185 811461928 368735713 227107758 290721109 786908011 789265222 257718217 418499217 399544340 387342255 601656347 664055184 627775156 134076908 359796670 774671830 51455425 46981934 592835227 127995208 600331847 659770149 689315532 623961558 974435685 186762229 20784276 218622820 76004616 846163647 685043561 60446935 317364462 819912436 752419767 430268032 385142423 704862829 20382503 173557849 603106186 940733527 379848525 630733886 694138165 931299850 910182541 883506410 141071575 940374814 363975844 753316292 178597861 537235103 81014430 521940186 931018914 83886787 375695999 380779060 650921410 110779493 716558415 194842131 776519910 643903625 966799837 305750679 279190284 901627575 219436801 35397703 841195944 524775508 44092293 807792661 796985098 179304093 644559495 508956909 474143537 872550223 570552519 161298315 886286726 23927572 408138121 473793646 909936714 951025295 583436726 539186068 499631717 928684532 672285733 57575044 680100599 244162303 612675427 770868417 51235896 679354697 399112807 173928174 766364005 813341258 686216135 918375196 290007910 856749397 860009636 787541844 514127105 234419040 530471223 408053968 689411628 100763535 199235001 674640774 103000616 271715161 410631192 836991634 364874308 583673718 517100084 810875835 714499146 756453927 749016916 943373887 851919666 624661787 618911917 163956813 79565355 723386365 698601207 401104640 711823172 702077705 294513427 722898308 992021045 183522176 545333803 391544802 793902639 696965517 445623281 417150249 857376658 835916795 844618282 699896120 12454815 110367340 206898008 65083235 441704719 347786705 363045281 972626461 269024751 492058325 140691651 81954992 250566282 635921054 417331661 37183986 755661718 546816639 516342974 217725192 156925275 795025891 309971001 565953019 259049777 282489082 87830563 754272701 949999082 887889597 231404674 522180895 930682816 807318790 101891949 388055472 825665841 936452060 293673486 205877681 608852361 6831760 689305135 788895852 298264426 153108469 298551670 918647302 727463469 518330869 558680656 374105034 132709718 97390963 791748607 795209255 68451356 652548789 426124339 50981170 699782676 981018284 767739888 920131494 999024651 254023893 992454371 115635062 607333899 812268988 679426312 877292007 782912777 954430584 848490577 68519678 126880888 813490048 723894928 517276421 829429781 322011104 705534144 192172693 437591903 160333565 702199462 964070866 611737100 418208811 649473054 401639267 892437723 362538014 568687474 116963515 40188700 800891310 778691653 691546059 374504601 286175480 952798498 401917601 108377088 981005372 554213180 529478540 800284890 900483680 909075401 823262469 914726559 278231511 63409754 618511507 366763735 358546244 951162206 811086810 131817974 629265291 272919389 410939277 15831065 692370534 511604268 387848385 280893371 962977697 294797710 564886165 105576821 350004779 72534266 605941084 845589237 110763972 159632002 480814281 927349075 100264975 937345850 553421043 647605740 327868980 653612399 964362366 410835197 160376556 35029742 870832586 235422002 223625425 659481260 861013924 36412486 490398179 780080131 155242240 559050858 449351229 87872644 310737228 973341467 835043796 243678477 363033387 844550298 922418885 135709693 642934469 213902536 71988641 21731651 485708962 107150545 442165365 880669526 563600478 137918679 304093759 28359457 177747741 696705051 598662327 649183353 179265063 104611742 14000121 886215901 845594955 408064496 938925208 728512674 408300115 593498996 465703154 876387739 468882779 703821552 441604984 533383870 15528795 567670310 459938239 35217457 42927948 166962896 618092877 592572614 286556387 448739884 784619243 845565273 474967021 508182760 807043166 518743058 536614964 500627880 405138545 353702782 30817039 54683281 798705913 160598750 228898795 186815738 438023220 47603004 335746338 824909670 34445750 540655988 819944539 410145225 171183547 434084014 576948142 521840455 939632629 100485527 714024330 88128084 861032456 290400132 457515229 172266096 715794890 804961525 887794267 203916034 793688003 285621785 135006856 743602180 532644730 315306703 998664037 494744422 848170187 677157159 394235868 592153958 30769350 363791353 602655961 743345251 995931598 287826200 107212356 93912490 782583759 789508760 564296090 560582506 589930294 183661322 4689751 273219855 436444310 469176065 386092384 631509304 952408182 877629408 63681114 261483185 953728664 973865965 581507193 193098665 164602261 641206079 386494330 242619145 395041986 18326495 348930419 41823801 523420308 245145142 965905517 129717278 507353166 66455825 529957818 620091646 391933023 616730863 584832299 138245491 248976771 480901428 684105919 565503764 335314729 622756922 461825328 707578343 477924770 61396821 75439622 236372034 526994520 906021818 541220213 361198739 457980819 398551433 909720428 12511165 260749365 418386735 547600616 728425887 994660199 643269993 581869087 346871935 979008657 741952816 731829755 363079106 995592197 315784006 796963395 717946702 302680444 1884852 248625170 174842315 749465570 600028957 71882497 16222799 692890793 759831653 671964674 870346424 37672666 416178220 323317577 688267366 996353125 824974294 791271082 154905609 871481328 702797088 138106754 834742630 704380994 744170317 557978392 50095438 158444596 801584974 726762514 304742629 492872844 929665414 275358945 80337362 225649329 538987849 861518096 885777746 621465661 146693613 531862048 19890493 721688731 585651814 923232127 915341075 844729834 617598386 530970572 195370472 58731788 907688643 56764695 697059028 865474008 676235441 161444914 560803832 64574769 750314184 693678055 207803618 843244393 364230211 554200644 756523049 233791924 598684951 500352069 302972009 92982150 531356785 697230707 688206707 440967900 522738885 394200643 422003050 643573369 601914766 865048683 781674987 710438320 544712585 487057643 547603805 757177346 995472947 271759149 483021764 453507880 403324219 580479011 994624773 140519921 184991812 111718767 932451766 690168820 926946957 491316281 318625660 847438782 437407292 630971510 488736518 151671691 494027064 732893509 12918138 75750302 85226107 370726471 817587783 968313646 305774863 842094359 144569086 701419141 135964634 864609498 922540240 186402258 813110335 797981162 353414311 242452386 535377557 43865117 126170140 387209544 277518196 729483335 607394868 861940080 891127794 513618233 853985521 150858293 270725274 558018904 610569814 866939992 494574928 770459688 882561797 696994972 369134035 631193701 933476626 560399109 82269469 354955535 965302462 567149283 421807409 208453649 354101651 141952549 346925709 13487745 127606254 380699508 346233158 277920284 817215333 257187103 7130470 483620721 962259462 55948867 622777900 773795344 638884785 769237716 660385228 180310968 908844457 542460566 955846025 180343434 797020414 363307317 127171966 494590317 303480901 246915920 921092646 560333325 860831521 443369954 881237729 653047037 287068063 459219846 644399746 190348446 136765997 245975647 587499185 469097952 853394979 679621017 713925721 730497045 970666476 131960399 159208041 112712862 409792101 558677083 172979902 779687327 745590893 791481097 952090949 891958154 400591013 249040998 176283764 19601128 57873507 986646662 736574687 433518393 191159996 775352768 725743498 965231368 637643022 929002080 867847806 748264528 139162033 918638025 974017117 23863100 744637507 342937337 237643123 560665212 950391707 468784702 451803475 819654462 23543984 959735089 434987436 588136752 357457600 260078864 447583375 594046101 601471736 411707126 932528974 821914487 383388400 831108567 950815897 940930700 632035479 965530308 459119475 852437690 389594972 413631048 881898519 494225293 230061089 870448482 423019644 813496818 955012420 706473329 111672200 967202092 732006898 565558136 814507910 849636088 819897693 80534427 934486794 32714562 210911720 135367122 682645740 92530803 453525167 806431923 592864831 879286827 943477798 861956575 656148318 757217223 182425052 604999325 233594407 992257845 857633161 730756953 827744355 309470430 890250755 159913267 698226217 62263999 625493422 820553230 788935468 561247492 124733342 837674603 54279544 393831104 746439064 270076258 25015371 969751717 547888440 880901959 974899284 605204278 829800484 182675185 932677096 442350605 311639691 900166509 51119048 654113984 73927135 779328081 752873251 735355282 179948983 21651183 119807083 204647770 461954435 857349484 825258848 639738616 745457184 521699232 678107274 188021735 362254254 701037517 557300538 175067347 284913859 242565577 38115228 745622350 693633709 377856612 554369615 770717717 265321164 209848638 119556214 340211457 317767398 666352364 976048863 39594305 977559512 510300152 569081180 697974114 995096850 613033652 279423066 515699520 463817454 455225216 248339921 318304238 68088578 469915367 168098275 48765036 69196125 246469713 678236699 872552979 546482617 380393756 920316800 715868536 96526243 890498251 802560961 96778388 219375200 511997409 768766599 585083172 573119769 891971326 913214114 200518497 723393818 816889521 837168628 455837688 188830846 201098829 169513764 113324587 576883526 766640810 72280631 572737075 779441993 392776304 759134108 496124728 768055570 567764414 592635234 11098931 237368876 310227363 131530794 38835645 845872674 396987590 503970241 989611941 286816087 955838088 873412294 655334419 92689867 526476848 918201413 140203892 149174871 652920696 941128740 641549117 360531264 15010056 619848417 186284970 203429197 676503546 542731770 29574205 660294190 67262601 91501848 898656292 969694922 463600657 210486181 886773108 955907846 306294303 504337183 494407990 830811504 871206445 684040808 705114892 874927295 578970679 738055798 682635410 533537454 572311446 657350261 319613510 969593841 976130247 598589933 479148677 911268051 112121304 395735937 471921367 624778535 833206539 596711034 797626868 967478868 846114130 451240860 722320926 570381871 712995201 806641745 213854257 351844684 964040076 675850575 519653210 663352936 779320599 623681632 984115675 440964238 963887019 678378181 607433392 429024893 761704882 978323096 338673813 616213623 792995917 506945263 313400794 398122043 815136723 223430392 797483808 999361135 816390445 508845058 668513485 834342069 646436268 66986167 838546564 315671921 179051549 973710065 375822272 416342125 602995208 671094243 151445705 862147011 207658449 673420148 660466530 590505529 607621923 577934180 702751569 66619172 48232834 577451444 894804116 795684104 800447916 290231564 73323491 682126818 969520654 730815124 256412479 294208389 983444737 797108541 399461086 365322951 666485797 18318085 478124118 854150225 63178008 716689863 753804623 867267710 783194798 971516476 515796069 528074773 498049302 148701283 353056135 902699810 465298963 659119185 932075417 249217645 954041838 835890586 346149588 480358259 461586651 180413097 904859140 967653273 429078557 749883662 42454371 719747016 655463832 521266655 823942677 561448279 338694663 840040813 429077088 221934017 536230241 234940719 395497863 960067949 152755036 80952921 889620073 347145869 879005815 408066529 979195432 254388889 208646944 937106370 330816187 929216063 105249014 811840507 653134236 607436034 522058344 931906390 209566710 639312537 122025762 890650093 536298911 998961664 154603505 595511422 679036159 783790646 725452521 199987418 356348958 228374788 970376671 387484069 670094845 320452984 822700055 622422171 681433996 214312370 192574473 37154096 431685769 180478666 900791817 257967476 815715508 12725262 691815021 727351330 22411451 70071791 733278523 768176999 591884586 63944981 861904728 767150079 618241335 974293037 79937704 766860517 401064326 83666042 728426365 961909310 120566120 480132809 693450579 973920827 638897417 559091902 883748709 8811067 743266970 30752728 628065907 355039564 538116503 874776160 491664279 813008193 485569549 742921383 94468998 435392023 870718543 912217341 381439786 193693256 353726954 297123690 274972455 68573053 362923960 24881526 619344202 140919950 240095013 578666506 459023055 621069405 854158943 829620832 789212219 177902844 510019661 111066978 836510169 570450536 497092277 52311531 614320058 561639898 556217852 681205183 905496315 107807519 358793824 4139287 573245323 47485486 59214247 558687982 434507070 965521475 102958317 490130354 955844161 739779760 99385857 193964503 294884480 22874148 52701411 26106169 412123677 99804681 53736580 512154876 391819330 475704992 566913421 495441855 776573630 523254629 599484136 180938254 818091251 468664113 239612670 452744825 45701061 363475183 165826041 288146727 528626478 479349936 980399825 955251359 362085767 199776372 132794720 847112284 547924792 967135660 132265108 559853323 244652712 726127492 184666528 7266930 682613746 277660576 651017085 738283155 795298359 609194419 731138774 497472524 257679982 216014378 835242095 720196287 579568643 309565443 461472852 42958047 566351611 54439172 604906544 560959596 455031475 488028273 796625232 492204142 661875839 559397163 926935314 789239853 200072212 656402200 823505338 532611033 191637139 863101070 822282996 854099967 912542021 600217719 364897717 890062777 869295590 86233706 815457395 489834794 600150640 154756772 15298887 431135142 539619608 824103309 198567738 366998590 738762937 985410184 245214717 98239199 407537325 856083660 857042873 199253765 743314791 332656758 535896763 797874661 547657644 807854357 26325630 195747284 568764187 720594024 298141189 124317926 588842757 763958084 10054880 764124601 183094505 784498477 5666597 77177072 582358550 774649858 392331270 857836034 59961657 671787116 897329101 154424675 598454600 949465531 104356423 272970119 824661999 932932983 162238621 772628978 326413371 406912328 614992727 814017407 538208869 969346681 731066343 498249194 166586539 822315320 149073849 651646775 131648537 875124888 394285334 371858304 764635821 513395705 956733713 437030735 495430646 633377970 771281938 766520221 671512889 366833628 405358503 612105933 13824162 931049251 647739608 141423343 632240012 659805836 545300783 936361 209510364 197081154 408411598 668911835 818567380 970139968 693682334 946233773 641413681 298835672 212423815 157223411 514318680 322315088 619886074 347812396 672313339 816665100 995469403 252455421 611299102 981328600 777812484 64586159 685826756 984128931 362686764 368694618 998580278 755389621 52505754 880392916 636467364 777350728 648418380 869994129 187459963 126388705 666119235 283712023 23295338 950140964 524025335 4650941 804206568 73401113 88339891 666969115 870932106 424509238 853051674 338248200 93650268 730607425 905107768 59551327 449006636 196684338 414579637 851663294 329602356 545789035 103523482 77432467 898775917 864761078 113571848 53853166 928305 764638145 593577222 400254304 185211532 738218117 281563565 696586613 181258369 789385258 466682273 437446446 679295372 268308826 22814461 899625073 375591898 693544400 580882385 940894862 22354904 995329551 582025701 805984866 13882335 134231959 980476625 896831925 680925989 34488940 756685321 570790357 510506726 450466011 893691798 438579972 895797326 737235515 731895104 478925493 872847915 184937481 478717441 182327561 581980423 873857904 479863286 44718635 121017330 868602402 700689408 412921157 307426229 336641333 289817584 846166182 409173373 878380088 487624089 951365915 949234641 772019162 752250120 299061450 326551379 850408467 317208661 937056802 281202117 826405685 571533022 80555554 87420381 648954148 995428362 579138902 835863420 236779890 649648076 285203876 636150245 73392505 494824650 415463083 242026600 942511391 44948920 737618833 266365233 599317686 392922075 149136409 552407473 592872060 494531352 815918279 467825576 935424831 444694935 856086553 639147328 943924343 729444159 789589861 803809959 527536243 909233680 791541295 975904568 30737024 75317876 33579890 132783027 517781073 324304827 833500219 830138524 827566290 57119895 98665398 8236522 793175768 90746390 905751607 374693808 212876832 498598132 801912511 134304104 119579084 882746000 29738678 437551664 901075022 869494755 538275854 771474519 341674690 624305774 909054640 936399676 864899918 321207546 432721046 524850936 605504291 755969785 152760153 323676804 969839146 278245802 662201080 421402742 256131580 187408299 537116311 197806182 466013788 631303920 523600754 583794839 409770663 833283236 158025918 528132619 237982859 674078349 838249374 822104836 810141045 64660709 531933180 151010606 994429246 652120702 22854283 7908957 517432075 763012080 372994899 623598771 742460986 97626717 623147743 760280992 32422554 921008077 874651372 118649323 304439482 65943995 596143807 382880034 15159332 650517955 907624577 874039023 476740495 557998829 860232216 49627732 269213212 697626435 543886623 706757037 947770235 788361687 251459442 307761170 986215307 380700185 888092997 239507298 268883599 150960630 444665815 101036027 268873508 743281568 790178387 129805921 299433942 178097924 647614881 801139350 132698942 53095345 325745144 503344300 299823827 630920429 715023353 61638866 385222527 150039367 863167046 901801827 30253091 509716987 853859457 980913836 795503807 503110398 157484423 321485677 360820614 652047435 737319766 796374153 810321616 62025133 371138405 174835900 98074163 326539634 469957596 527807995 240707294 506681646 580259342 190635128 105809230 168527144 57760926 977387694 991783711 212992238 326322749 52270625 206553768 264834420 766111402 440706730 451670410 713801529 475172131 681117314 824621516 922663694 556882373 829930956 325337342 68771512 521805911 45408937 200549690 883035711 688202531 893616644 202683532 41370969 767186004 482846096 263400309 820863153 390153776 58558524 273544222 619755003 590818467 699676189 556432712 700282513 773162566 405515343 779894893 868359889 9691657 846585516 799052223 312035162 961978271 98471834 202699578 84116720 34565684 440981811 890407373 353569016 382512860 660318132 274280028 152404819 547913973 482322217 631886960 299958897 197927847 93468995 695947422 662149189 917240759 804151415 127936850 38929156 923602446 995891053 790891952 821652713 708204756 75024694 936514658 416754826 120894599 710787697 26447648 786665503 265392787 44692628 442109866 880795424 879462437 335212951 132735371 469461164 183016847 704495201 419643323 976657791 192531991 287047149 514982975 443318392 243846020 741735824 887310650 75660610 463797908 271356806 54429051 949148296 20470748 212774938 709095341 208897497 793280457 990698674 122219858 770589278 445543072 394043747 504078711 375686521 131875582 62544382 602745827 446783809 924627330 265599806 193348459 617526691 515829642 392788377 874907174 767206189 938343291 236344460 144748099 273071905 866456943 43038041 689664935 915983729 38433223 295566068 459617858 761800706 756662995 242429831 48436947 485835193 661905632 176130921 789406247 565916151 469626252 366587525 98643037 613201657 753218157 926953616 990456066 996984351 58411319 41542854 335707228 623686812 708518341 435385602 210642797 978048991 837014628 472298305 773530924 614512068 22366706 999312950 25890792 450460824 287399412 883767356 41356170 264916874 748194677 806617840 835362836 399471687 912389762 313237659 279574663 993425918 659371945 542431541 613155385 106274086 441154643 376846827 776601005 604759662 565101211 882140010 746996824 472391233 858455409 398379555 90088385 715636060 369123110 80620203 573832405 3719747 123471233 292357332 881825083 12031422 201122268 700543378 354818470 101114799 629072427 12714048 167077494 718277958 16612932 661108171 926487554 838434158 714059532 71402150 37285042 928613014 5883731 189004765 858751871 501190696 594774396 675597801 479481953 789098610 136919882 812715895 230526496 761617765 797649103 454956618 899217017 634210138 163617490 36320263 193395397 608792828 194491170 250709262 858801580 502992070 996830325 730011969 543067683 968278430 118139716 364355612 929543454 154442287 581090723 304801519 997921734 868628589 745089437 743913071 426385912 614478837 431238217 687133260 766185492 632573642 463534932 454466460 942087112 278766933 258569111 404733333 288441636 671632544 737401173 639073170 990484341 742558108 550506111 315509563 933181599 194021392 148833525 402816391 833351289 593308347 450116334 403141458 179974325 880302325 505068979 717576515 92103784 984087313 697254864 456601312 807480844 884632238 199139343 873495805 108837744 295702186 132877014 712499011 128982743 525834824 238719243 347230244 505691289 29906481 575835990 635295128 853267372 672254991 239525811 608402383 24658344 378179418 868349838 994276271 172221593 220387563 292801714 698677766 934359321 452429789 285263358 19135109 881637597 66752439 651349291 767158530 421402383 77542776 425228529 144706224 492012451 882914645 796747385 193145400 18805862 741459702 454894805 513294158 40170224 282565502 366832361 438392631 782498326 49688381 523253841 671796018 732342632 247733737 454458294 623954796 886780020 773309085 964587868 426432317 345019246 462798391 217975726 871372220 900838611 483285181 967853956 885529366 654885609 309264199 397919522 586735914 535271620 876374211 313583079 118446825 684451907 479107546 156761900 880047706 527624249 177490073 48658070 925350937 911768480 566515803 113088425 726256463 367674384 122753630 872849613 744694569 807178390 930653989 785893185 992784758 448469203 650671182 836397830 717269 38406582 561207799 363206152 125439726 174439638 420595089 589682699 438922510 887900294 256319268 408914399 307796600 158815539 830944555 776507909 925050302 165438629 307403753 456042547 950395952 272416600 171722091 556197788 825597875 944822274 233211824 824896455 308752408 828174522 638819615 882375311 782988045 248385381 565347146 887449946 737231822 882495133 330362821 305194371 569942225 501158612 543533247 206107013 531882757 43538575 166657330 336929455 122590893 722291964 526544775 127786625 531900876 891943174 326448042 674517601 983970204 416428636 205171539 477939895 239874416 968346591 72334617 902058559 14621429 385081014 510022907 600067126 736579755 913875406 86993030 290405658 989233871 378592934 364601007 487522802 930328660 41944690 244295249 788748139 359018602 764894856 431028669 882510621 471005379 952943058 731714241 39285954 468426269 942302552 959252442 172944423 951176978 241845453 812162934 695959137 678975488 283369769 800237230 14559578 649096681 565166946 209650805 220873986 849803132 410087425 854910390 161642570 62238851 820287969 796513413 474425496 316056616 86374405 547535266 86736868 704393119 151199372 427853790 179351864 663828792 697920105 333851318 651458258 846061896 63748634 884552642 800404577 631833975 601311147 320465187 394656838 988764826 355472677 436787994 225303841 872036691 428195480 924588072 20087343 890950905 674887653 11940088 434155437 743805965 129362259 306743155 771177665 425593866 24517830 347764366 315879636 286375625 894527955 807188943 669203667 476084941 238725065 249552637 795559267 701320331 20268396 173789451 85147083 511631342 680817886 168065866 492042520 557680810 288122598 346634072 294735636 37145861 34711305 754769218 711028173 202237643 618194383 92812684 424303437 330468644 942706425 86806534 507358848 461946865 776451662 384532920 926852744 717070833 321327352 473891370 255322104 710424710 432516328 12894484 138389249 758991716 606589838 811020376 271454637 6172428 40402288 667231700 831188144 135465494 780628711 651280593 757618977 162128825 878242661 727174770 373579737 418794760 849872802 912899567 891672296 72390450 77177174 641831308 954103001 454306125 214764333 390863310 283320245 197559681 974826069 376764838 104141755 110899501 474373935 73142555 801052858 113952926 320376095 584470214 413710671 506572097 519855878 165138384 732071347 676227632 223489232 56652278 922494302 153109111 790937973 659723179 838363666 216138374 176645749 740999311 910645335 839208721 797178378 907147347 810993071 99514625 51806332 511251882 109022981 965568949 174965742 65179611 47701611 4488167 734985073 800100028 358712769 69703419 392444332 670232294 345471324 514733704 595920199 494828710 864198264 774229864 17914718 542655610 707689991 564071397 774752776 611620015 336825842 142927303 485960831 326489053 575053659 863350640 509504899 769021158 734297517 800001173 458000314 235561315 716900881 291093192 830074920 336116734 700038864 277532706 476044577 666660895 512003080 391097319 53600837 645240128 796580468 651448697 453861402 28157234 995259586 565036342 4812812 338014218 252673472 858590906 860242806 825792158 183626632 241656373 54413313 851099021 208211093 4817381 982044250 870726288 951960307 748668812 514977674 99295561 616202661 739996831 749430239 134864624 191528286 142524803 851969937 968093413 159129334 90103523 40778015 812721955 634072170 533193758 278622699 282246270 317251538 881901897 539662744 137184513 660237594 90077831 357608485 356982417 119660493 288448430 538258340 927203237 955684046 702213728 745002419 809796881 646365409 509949941 481976463 533305288 322003858 540662722 650453087 259309417 923358786 152653791 253381145 889161792 542043801 844399892 868078242 373602414 53711845 110557993 445200801 183834239 64986577 444781587 808094610 682250338 678246980 384232632 527025779 34425110 745073434 718798527 650408695 404978356 559541209 380693448 835994773 480097969 754747473 358949377 542816119 500839132 902388689 407715955 679842022 824697882 626423877 340304062 117309613 10712979 324617669 354853393 907457381 87858113 685425889 449070474 825637133 415046291 20558175 809540113 178305488 922767059 483318825 268455244 784633309 632717373 46508142 598639410 471200509 448705835 3871292 889641084 857008535 391808135 796950012 483728026 176575078 140934922 819638385 78422143 538474612 468646985 723458293 608294730 12158891 96134434 985044571 319633655 897986329 809151601 594006845 94182686 362433051 103847516 283740539 280101181 535725668 35501356 294751555 959370191 305478084 909106289 222444528 263831108 488771834 330764433 658477803 255073942 255806594 456663886 234834841 866553827 58543216 963246544 311761336 740882170 290617670 175952554 921626619 835366921 889794359 939905599 22403791 22649144 26060075 325683874 611376940 48458000 187100670 132090472 834335190 889877955 602418451 913541157 125056129 543026062 822113409 216744158 236369766 764830893 411514870 992511563 182678539 874916643 604280820 216670462 354243459 687226324 113270335 96001521 175130893 987640273 500049047 546488606 481283897 884981271 894066425 733584968 502031055 734019684 975490972 601657638 181649712 416585631 545213697 702307361 901219221 898234517 875798212 703133398 219908599 168902363 798768233 925950616 479511710 524282221 606853491 352493354 990092605 322244968 909285039 917306556 977443105 152715364 157259921 200496657 182851734 907201924 822356866 578196540 958001315 59909747 909794479 265365097 486836639 378592888 362839045 46118836 149765227 193727671 4833231 798155249 468280014 840369797 332754077 730590310 518828079 809825229 836045693 691798878 709781404 356978458 126297618 986976118 233075099 617442342 112183417 390241838 938576441 73843325 696273102 450375735 901365254 293478466 995698425 618700642 240645504 819746135 239079140 180473602 831414077 726922116 214353939 154698689 772854382 202828787 501406156 831360411 641861211 392231068 345334727 813180438 344056321 601381412 587081130 158274292 178020138 250656824 406824028 954803527 430500478 851836266 715786784 965630625 633014188 513690841 125286473 172165781 976844506 71745203 801507177 453722941 779743514 451834376 41170406 488484186 188105431 456341086 943934246 498029075 472150054 863620639 36229857 61489126 57712862 823885735 500824525 829560020 23684554 637832004 229141861 691816200 541464911 368237987 666278200 600556128 855329204 562261824 905140510 854422431 162634374 727923602 838111328 621563519 663807818 32094436 233124956 687316726 675777828 831709325 866533156 354164409 168284575 954679025 297472843 162433031 307754267 528563744 608742774 973081544 204105419 78729392 779507043 917470525 104205332 92084846 680699979 639077892 733092896 571926863 845741016 901089670 400015537 140235989 671165546 514917506 365236332 947631937 513718988 732193467 660363186 362690688 336431915 655289765 70667956 564174548 359160051 397441198 842055264 217012220 692082408 10061174 116422999 968133447 145612641 997959092 856742485 70106487 168333767 323652724 257685377 405570100 820736073 716907485 835545560 411552056 58171409 99080903 403312196 916880573 654381416 313708282 453295976 562795874 363219600 169893893 986793522 113370238 119542325 531637944 982795154 315965334 788212692 664355079 109488645 54076203 391701104 155444775 18032201 421593565 666874128 181345473 656479327 378385290 951506631 745211850 19968121 210537673 445524205 41521060 60824022 843424636 216431507 352835713 159919481 238973842 624166062 741157256 333599173 167059708 759963651 825956891 942483505 147218964 216417371 409361396 11855254 756906039 875704386 778061668 30450864 372674256 364753556 175496835 272487263 403125677 67576588 322414741 619245925 950882353 264084902 994210199 577128930 143799258 314024754 905635781 392519083 174088525 647898150 980084438 979742329 834174084 281468925 692719672 612209002 590933107 212717924 354910033 125092854 666242363 821607011 638267325 859311042 228168935 670680719 359312963 619377835 860379173 875366510 711510055 384766568 747260662 154802635 446313375 897006109 210228773 284474607 529526442 951333808 365351783 269528759 356665329 917321642 822514792 728491622 529649906 350229302 921591774 735481571 901572955 739752687 50783241 831582653 353299655 960223387 208916621 511706175 451137534 774645120 800852229 101561821 985046354 257736591 262267015 944259647 770114952 680959056 367999474 904112189 309638060 806444829 464885873 512595463 173684571 566187587 983371071 389844924 498564944 411009765 372155334 958944138 789488439 743892178 342301621 505828600 778076152 225738553 562938830 589950172 430642366 938091625 606041597 232962572 936066975 242447441 564818671 359130078 701120101 472946119 961642936 744454094 938880268 680328814 156725819 318384714 761883013 597431028 719255731 666101486 96535808 246977599 126074538 631329208 31933391 64547189 560017075 316267061 137912932 51108845 455317538 404411030 358816298 913095149 131740189 534405046 593611544 197640470 841320395 91507753 341054251 68372793 759925104 91753094 940603371 511009161 899263645 283719061 693064479 258400589 783035081 41985577 429952926 405831494 803436612 694547034 675843313 656480352 321030521 717375058 775179930 59993049 28187023 390201822 459851460 786149009 704327838 949997718 669602650 124207534 343708149 536124696 519859360 258081956 262158708 849893418 532032943 985714332 651616755 355903794 608027001 595517399 386945047 334174617 297244770 122067593 557186858 293145169 288207208 860016630 724185225 355051904 755583783 715959333 883856823 230812705 653398057 805376876 658083444 724641374 402304669 179646515 110993663 200288931 367179736 723402051 819574822 341763951 258887454 342462566 341991491 75494794 985041598 83197346 395593969 256430241 241799515 553936393 774810941 917134525 418393704 488462058 183817527 721302441 96282271 417978675 499308898 593678496 215903398 199164022 953977256 661700640 395162933 762155648 878874633 514504379 639958841 734390540 320251820 347523442 715992572 975946752 269644890 312096189 904362659 595850966 59880870 83127260 878085640 225251170 600808251 522188286 4448824 498497569 638950267 950327445 571664585 828319589 977971089 612128998 565727245 388489886 383411732 138885079 411254428 906924509 283476189 98580945 729559741 793433974 410992065 401844480 956621539 948602948 131294512 815225219 344308254 320734596 366938619 655460012 366176868 56845013 463828293 117608351 273724149 85006254 687136889 914578923 206477154 326858726 93611239 259216344 309085665 284383437 158733686 582711096 996629613 85305480 225343701 304246506 473498433 414910791 825909260 305535081 934356430 688706285 128319390 737883717 157113564 223543298 419533149 7463567 41586489 342682663 110615088 867672186 144508095 968955222 76800464 205659915 258485542 172751915 953476899 314310766 51567387 6182966 94061080 173509348 761320732 187563846 74188959 31580070 212706040 437177690 366017118 655386794 210573873 8835856 423124220 322099042 500950957 363164074 439319789 734121383 992173884 598144227 114907102 219470572 228708173 15266428 838813891 893242220 639013978 815150718 903867638 182849924 925492738 143085969 276408239 254231538 278096703 55998176 325949949 86855667 379597409 656490212 981742136 608181577 362838142 979238704 540793062 896788963 990465265 755096955 970180818 876608479 456458616 627776818 58008099 570630281 697554560 529845705 156309166 77260515 753451343 725630900 328781234 846031019 277315506 110424201 326773677 601168431 592867725 761377669 680446311 840025091 499423166 70462238 297868353 470525623 23490659 322319277 797652272 798597337 440896621 122787127 239750351 199495453 71051100 306679206 730233254 760940845 406063167 849114485 261706540 766481747 38500933 92614960 168513798 970350220 502040597 641141413 219697450 426503590 737754342 486582345 768155187 128935967 391386273 701046895 388236410 598753662 627724718 457677282 124838342 778078288 592153991 684821499 165865984 315404032 193201031 149163904 260714861 330721500 869787548 386833617 828733648 389892759 498065787 523612757 237307698 714802458 775574918 289645155 798530036 558490056 214346506 704419271 270334404 962260369 769092612 298982243 857249542 558861320 143271903 538650702 686147141 475285566 492242170 991943528 188690167 376243250 366673147 193537958 452806550 930181506 89233490 62280975 673804152 280079405 453037023 71387400 237956151 370428058 295518551 268095650 88868181 427792995 942659648 441105506 460501138 751450171 122735811 878259697 310166137 398493450 814481771 125536663 403444047 242181601 183119393 481179044 374435340 699648770 575211455 120504941 785479012 144706383 714891233 973740295 542131588 65559354 38769131 688896868 417032737 25819725 684231906 485207627 266876961 89038816 323114745 426997697 900507624 720027463 798716564 133994341 256151471 992395349 248966235 723399931 140134767 210874665 812788922 887124029 780683758 304205117 768882868 285907373 487454854 698713997 717074831 365907052 389826020 182048786 18149018 558975402 335632121 429283767 772182935 159370815 905726431 916657851 770452808 61767036 104740486 885882939 423607770 728878155 497655741 568374841 151224258 752569431 556377662 255536963 465899296 515447992 845277011 155390894 129063415 114587462 861059942 929470620 241348743 884388005 928175241 604135597 685596145 202926579 819479556 472604510 140467694 696913442 547533712 478701944 804431592 26973423 154599132 682951066 815609726 945090201 488149623 478715294 382170689 395781540 119811154 87430261 373349106 244647699 908096899 800695876 783163994 576433369 850167603 964207167 583358561 251138946 190073817 569296461 832918781 806028001 600454689 844772332 420551089 598655492 144705483 169113491 841031463 470717008 803091533 34701192 502140351 786129414 786723490 244585778 919720119 507146743 901378275 374625034 991639230 265542643 482268316 305670718 590315279 575400778 446245496 994995062 288234440 49490260 876127681 276054252 316675859 111323177 220626282 406937111 532201994 712734810 986503616 853564924 975973543 37960745 85608455 345505366 299360421 11585574 862064051 147098219 433648998 441676624 842487827 754839706 550080200 545661167 658015015 568101568 589145633 38268446 869139631 897007502 805244027 836944467 625600788 274212540 359006944 414462962 75049971 240309378 453592723 50013242 433520619 893737882 164552175 617163080 221232492 681550788 433909248 890468635 264407484 178974753 955741625 72650148 840863274 411660813 843072850 929923459 512634743 540825748 325709216 152512268 84715282 291406548 986054951 570809447 268730143 513960877 496950429 186667360 521956217 43815718 177139641 319357591 487846155 560041370 562919263 978017611 384861758 484568311 861065446 575241608 609979962 977272932 964935067 636074081 144092723 985401841 917090545 419790657 372665654 995091957 142117885 66560283 826616037 31163350 485841564 765509348 731677666 581962894 750142781 704711040 832130178 885148485 8162277 836914621 200843770 581324509 679715389 508441053 30705226 557272774 525707684 984660797 960134067 834854076 215533346 250005206 496355464 179467002 485029824 293739109 86750648 546963028 786932219 545071134 672397689 410197908 279362659 285202562 930288550 686946860 897317940 230647898 752161677 40096695 112206392 57579965 667653201 582833745 926251718 711691103 422775619 315544278 322340169 779937216 952619051 118073506 231431389 508739385 225744648 473546893 344150904 687723380 357465055 366225356 785330461 587292588 995549418 689576487 132056597 765499229 411580704 381115650 426380714 783743155 896802259 976583125 565742327 403734403 960563297 854688491 769193047 461417034 160396844 623597511 286432677 777025603 237712132 239250470 802211223 303773590 848087925 739506335 575970249 646683720 647257802 893831424 629060699 872914863 535189067 210991259 930630995 138431769 636050038 964190160 929111223 462930605 360529288 77753380 164976157 349249119 145874334 937433984 186087753 557980832 517233796 943311891 800174469 806787032 852443868 972129099 734892121 416403041 484706545 936711978 611699526 972748113 61876909 966619215 68255630 314404238 833770296 207535351 617800899 132315596 669315231 165858744 966017467 424310667 578730460 489527169 875543727 446803844 515621431 924337507 539414110 184311146 116922293 140799103 616787440 935253942 525269377 645961382 396361208 243378908 607891828 502388903 362239745 658215408 711446427 206806942 206398303 297686639 764234867 865160364 747709268 631134571 405048165 619891216 977753061 793517930 712700378 872123106 15186556 401837843 453208737 453567983 462691671 159824144 856761818 106120611 252550980 534912932 910277757 267849833 243811244 173420902 218338992 50077026 488801959 462236238 795030026 314013430 815904526 240127103 2684432 647339749 767461681 435921377 49597168 686987420 947072508 349781876 443889227 759714931 609769703 704228462 164383169 563701465 772031735 560163295 190183263 569876882 789784333 775446909 512272956 258665146 692280973 420891538 213670697 609646487 639932349 682993720 86089071 728753194 195663095 947035068 200360885 992330158 656343340 134264564 284096115 586921318 422520780 793389638 412318500 99970268 800552193 418670875 37101535 40981098 42843359 71397308 693526986 946959834 861153270 169954581 257543869 303474402 568042961 141038240 827231376 97765612 590251885 951224300 436864239 547009168 357404415 662139870 590801800 326490234 170261905 214877745 346890849 934441236 984252164 816291084 372587641 851049886 669984266 807823420 98987587 866266875 192862969 874071776 742717411 174504879 218161551 771363895 378148583 736710230 620243085 930718253 444443639 202668188 517952760 150165072 916438815 880931118 773972398 326380803 521876407 58056128 958914996 702298155 28301238 877994549 499554395 889873905 887009699 222098575 792636943 153395926 530834279 636705901 152619885 199217836 929200352 2792699 40592320 727709924 123119160 917828361 783479284 795981905 819153494 556958103 886350336 87832079 773300805 436361520 843814510 931782288 941926604 499554465 816267023 314030193 558892173 67628820 28030607 478238646 679395680 77340583 65767224 501999231 788369849 695628166 695467528 826502911 507330793 909371742 1243889 851991377 546343027 444717973 589284548 471342446 239266354 524775658 231261171 995110077 331995324 181860071 999448870 813719374 593337014 730546225 882143993 258105498 406524037 566629586 193133732 853556674 88168987 328893710 431322028 719848857 686658134 705599032 252396737 269625589 455682545 416807435 567757326 290315049 76307938 916267807 321047159 177571373 408925586 31207503 592723965 945809049 147153423 137199238 787864804 589829441 211799819 724644526 909182712 4089940 144339857 225616922 436865213 837483424 147406512 526008104 480891805 771392582 939977949 442995045 659365121 55609382 52052172 58443456 85166068 484319421 297594381 56015841 346317557 321963785 373090256 848948873 770615565 613100302 860141301 477551377 198900845 597647856 976615207 336735274 322611985 444571706 234643276 619946327 996724331 798983979 377370871 897818091 692624360 91474035 81867679 66957293 96437936 281237012 861874726 589837403 269831454 524693400 718961055 825615641 828642533 650400174 354756595 158897974 632736471 518574509 162635496 560253837 805069446 502457985 263415196 827350589 840077122 244770502 892448574 374886706 853614952 561802677 449301802 584196101 277892270 233920152 160299297 716791496 789075225 204249485 505186996 935297399 96360262 416548767 284080194 218024542 690631720 191470115 354119149 199184867 426241666 415795712 96587170 755263530 313711416 948594465 447910806 189463698 187008541 127565498 913989083 149839794 16075901 502358102 454324028 505905903 761279659 411429148 475894999 599679540 515896402 992985416 126577365 950061047 450537556 850484641 509635571 666179798 533335882 421646429 959120105 638909442 892552921 652305121 876280017 976119170 930136450 855375475 694078561 901543121 273137923 322168721 295997948 88390126 716813851 540851432 150992751 299682685 60796001 907527492 151995751 699611418 574322491 897359293 31501614 572228045 149818125 975553619 123562581 863418815 976586007 614050778 298862190 64159290 614537185 896059474 944886317 39790522 671050532 567220675 572017781 131251166 376356349 782987068 21607456 665864814 518365442 216445737 319687179 935869708 34847599 904951019 201764120 664702704 87499426 533061824 488568557 832233134 635708305 687041063 30679361 990421889 25359962 135414159 667461811 25007142 79877490 40867186 136239453 156917090 533669160 331701214 355250496 501783281 763066317 327203508 868637275 857825819 217158113 429943321 804250326 95899293 186295635 351610740 857509522 550512105 349119416 423500940 229739159 564166550 337929279 812556510 591386833 28361246 212327881 874427588 581209951 779462546 454141308 496026892 160729761 328409534 844395883 343595375 591433690 269192754 628404387 909211604 187615161 989030736 310210735 74359805 151075195 731514731 473188999 885511092 730173250 997259941 19879642 530901551 213047227 615169516 579105503 984466401 498327232 314616689 667211108 64922061 989400878 718910866 773506595 383301157 307905763 766378699 130978939 617487039 33834122 116658757 553910683 761236195 255298561 371435609 210559086 813871539 887969192 882487495 181207199 266047243 180898798 182886688 219648711 228505471 76658995 222430080 390566123 347151879 906694448 276986292 784155377 118890186 656958050 553003295 280475275 364960268 447546503 951349548 846212358 359712665 781794174 376606267 609645567 979063945 638384128 52348058 287815032 749314166 791578560 959381813 683776843 53005670 762799679 726494068 691226016 179014091 303006767 123798166 19051890 166950395 786973664 726545435 804295477 906923730 998947773 624406936 438827345 53476202 584722014 845969745 388565342 138592259 582370596 63039364 763631805 997567946 935622220 248976948 793846239 405414666 862557818 471777270 788430186 158805230 127395056 268548524 114107978 447296202 123997556 893187091 781354225 343235081 230771295 141218919 541728842 997673298 517832592 682496384 826200607 287260022 584269959 722065341 982663892 552260148 84971113 206162823 791471163 439086397 618695007 71054690 169704248 157207034 861050457 137828782 519419245 367049094 574133637 670840906 493647765 219593433 498779951 969113514 99886184 874063246 323880613 273469310 304202070 765092563 384903825 425779107 862500481 45056368 954361405 621841992 682754014 365582652 123942019 187072468 127079221 972145781 621391084 953783860 202635707 195956346 139179412 477188332 136586079 607730679 244805835 463584567 36605524 623780215 890516510 767087429 726103678 96291560 688549001 847107876 726125431 967434031 26664690 322717684 593148300 681661467 553382428 562008251 223157833 899476788 449509880 547176676 164524443 387090228 139995601 144167536 474300588 34811472 38382369 404794762 557242260 403791608 41673477 872499956 396607862 459337414 828179184 962441673 984856470 106230176 29222035 91107266 176648317 770798737 459599811 825958273 852096215 284200224 694380596 143076869 918385548 280883288 185275601 486952758 608532761 122540743 855343476 751206324 95147061 100766579 56553703 438123267 268457327 775071979 483318758 456140250 193950837 892189803 49267877 327729010 443779278 872400280 555568294 356467869 500825132 702088038 361653519 200928463 242621386 331921987 521773445 639232100 10410350 845858895 690564294 279956188 107168010 930376757 444833463 916593111 911200337 919648529 318541956 292782498 35927004 776995188 433100397 992261770 211593973 209827794 751544559 870746700 938728197 370677977 90187512 539462036 934899154 819486577 821027906 696601495 993821451 106191034 28035722 405119002 968856004 562991604 613951800 594715218 992520840 77359688 983957738 772611651 568582127 689429424 677540264 686674975 405666024 153024943 833728428 97798049 506028480 476994091 908653171 298615100 975262819 731343281 396818659 698205463 852558226 187860586 460293651 880684697 412459880 141644481 867403274 559532625 456328516 449905336 840879517 749557012 766302840 220740116 22372844 946084685 359888418 471222043 775969516 655611159 423661312 540970723 508492127 119392126 945999388 634511227 608215526 741674805 307069359 372423969 144135686 89740151 593365458 713818484 27447635 885653309 550294839 281805789 120243828 369733483 940422487 961192295 796469927 448078717 858954940 913002809 848787705 320376208 832896616 321511711 639545390 587255991 480217859 13104397 12205307 62452839 323369444 159288846 707804807 531014923 352418373 416068049 140716806 246104953 327531208 387700676 589438175 835569379 490518940 632614213 938781471 576028673 778246859 902563959 706976558 519970680 36115579 148045758 53521157 525125890 236556523 610084052 598620322 292661495 120282086 38141941 427659523 316782552 243534774 659055557 692719074 235105744 975841568 411075885 560844708 234199920 656142457 157891215 548771703 629019566 456551209 891750627 130465216 319345712 502300434 654094172 42784999 798519093 34782114 382684615 874418237 71293892 329411742 808343798 772021509 158702870 606004168 72913895 234033065 445817663 445192728 596979844 935798461 712151616 929555824 706022803 628638463 84360207 977963574 501136561 877117102 987018724 387458997 735208677 648270525 330076192 642367844 87927130 914396994 558905638 762910557 779406134 405652777 903175325 706375619 493926266 411354760 209854138 888080470 403175616 203365161 414662820 177088093 298768270 923728914 712976944 602234109 272249270 721126724 584884974 211607381 308781189 684641713 582007201 267294117 189217679 630486512 630987800 785919576 294108431 278719366 779039564 988762453 900627714 501741098 177044001 174577666 894154922 223503435 757517349 221150858 696471885 78810974 56485263 51446107 44959813 94072148 889953666 796237842 269311653 117050856 745316416 639581326 511758554 177513270 851884412 25218506 11558556 978153813 336823140 325740844 107098320 767640170 249902600 900083826 632627832 769353940 74265589 320279729 9913438 489824342 109500362 109664933 17468311 277884612 261816287 470151037 918211063 716809784 875008029 888836720 539467088 456229306 569047833 796746003 222632943 796937690 54813067 100384258 477849267 819926309 706233388 674936730 939742852 870540090 857202329 534227411 804475250 1424079 99836374 753738577 794166601 192726783 810273124 199756733 897758253 774865682 257570446 68426873 670255834 497124004 842651197 394734667 198794200 966669887 433397820 265939440 137269338 844704457 871885493 233757776 513149265 735341374 808347169 978602573 135459144 67375562 944437732 947491527 599189972 691435166 256223801 244664443 635937499 287945370 888955481 541861576 976455848 317076564 75998555 200123449 195656148 920332181 391236945 481056581 123188243 996243240 230471754 474998963 84110709 54399072 326771774 572498097 928135737 11073 75745371 1567892 779417533 4771439 405593587 847912577 286740567 449993932 108429272 26922045 72423462 67355 123013239 421816344 995728700 496775222 300888179 53288823 306459046 169167057 177772621 647373390 31701811 194067593 984637215 467031103 568277373 593025777 589981915 788407906 222332886 766101225 904905077 363642310 544967907 21153678 970234280 157495762 387663277 991452877 367503290 286810815 650756982 130713405 529091251 242922184 331266901 24704242 693109912 916368529 929427443 682418382 687970596 899615161 484277704 705110289 761128848 788597852 901184591 81108210 457947611 842512017 500888050 418817243 384959863 714275075 348264686 78232257 58388024 560812045 246330493 720692707 398631997 892190711 720607512 804832649 108138806 731773912 61807083 326255030 459378890 463147482 58911746 463894282 365125420 62170786 765872453 42288064 417571557 454656845 528968497 836164111 838195672 348304013 110946066 339526819 282435617 731354469 738271991 242478259 73781560 411579088 293464088 855549696 192103081 428248291 349027682 283071064 852279795 699370457 112252957 289990885 582857942 786652513 676643885 495969485 991720312 741088511 733509461 47249888 876622672 661025444 611145162 823875798 265499910 128287675 9063012 69466621 676335659 583163556 290770397 550754963 280478494 889121473 554327912 217689364 192606696 871850416 527657742 238823097 70700695 356321200 872798384 283546033 568699717 824609013 840826400 27129345 326811685 628152743 406579284 150983743 90092003 948164566 503443022 886701691 237652633 658544569 893967510 338438545 304689584 787340407 413131791 562032083 402168813 555844528 889748331 959100344 443734914 869056878 787500499 486813611 990329315 375450374 883414306 469821693 182653781 812825714 629751615 79166784 319609553 739864746 885599888 648967596 608463901 559171134 50549448 625924827 481720333 659000314 43180287 539153024 180007268 895279229 120122118 729110489 991695480 874880197 431468182 980410145 170607600 982253277 613729880 117840005 884072807 275695744 238206287 80517241 492193969 295614831 154696611 279648517 552222877 999819370 395362049 383767874 326884154 633741535 662198006 58094555 546729910 242259263 367714507 676657161 177858221 149408827 243950733 663170266 770898647 571317609 34320525 980611879 350776726 710337505 501178256 324052137 213565268 945005988 39586396 1909757 160396197 472805423 54195136 893108533 322253778 844612503 728146174 611070709 81906716 184992074 279887239 491317591 738136799 158436141 467294648 763106868 959459623 865493979 425906342 491195198 206803997 344471868 8304132 563859122 645569110 848930393 761536139 694275977 821332731 382087904 804903079 551593186 312648487 402346104 224872262 489532858 106869093 965846321 955007233 329812662 155630075 353146233 187447779 616754643 947528164 716302552 916196619 637304008 640977177 790957053 344497891 252501794 140203022 729012661 315101226 303659042 850270251 823514497 845140724 54904754 269339646 584143400 640038947 593497663 680834339 910980165 590425546 325985324 955753480 960056956 319255104 761440461 5753826 611814705 333823822 833212294 320606619 166083971 887734318 137687971 734535555 104968053 799877213 506216034 549053082 404174953 82502443 912331225 417406101 213403057 881495379 759748492 43450975 348828158 384896532 59139650 206896427 953935549 57501341 549729372 303308697 503350029 140180042 440065728 676117300 213877937 606789149 70106334 898776275 420171904 565527950 122295817 829635924 158656368 508441135 698448912 369481126 858121786 453886306 150546158 73008073 31577778 449051323 270804925 982685552 112322430 656908064 59212233 688862539 897068119 950338142 882925006 28272646 368666792 561582278 905792956 923827800 402545558 733088659 531817521 506482266 847131065 89640697 266127750 893642133 987290807 653795620 348816421 646301237 663894255 424764850 902989400 317813802 905716084 89987087 747579323 965297644 191257697 366941883 646805527 551841047 405225634 3061567 926505055 554235585 469200493 621930390 834342283 498356531 202073612 640348675 151245212 190193849 390688648 227973339 573883313 395820920 912370024 312500513 762092184 362599732 439587283 556194491 489975181 484880545 837713830 804606129 925191850 727643909 255354675 209027676 152752330 711234523 154654490 992249368 830999744 745321072 305572936 628228970 116036128 337907788 28184622 830839573 511621921 123090252 194301118 187029940 164651298 81710267 805806099 579473503 69422189 977388240 442354977 324781548 347359071 7722334 233470401 198466420 488641271 344591526 504784878 8476731 819377770 28725819 488857609 15236529 13506934 974692679 632324969 165231455 447921204 355650891 497337518 509290420 232797511 578056347 691218541 643083994 448576968 98398430 11731682 891215564 519592518 686913399 214315956 261223592 64392877 807897460 751962452 275455733 112231542 629895802 412441723 143586836 883583081 45135534 270350480 510791309 256906642 812822981 619807473 602533995 706539747 703943971 852964195 862507006 752862382 997893241 634164727 579983183 151172045 209759032 831445006 184420024 528027612 192493667 192450927 638307308 48993766 775477277 331665903 202990703 912266320 542636365 6564959 696798049 844765183 318480912 464319183 293907768 444968587 887529158 658307991 156208143 897056613 835605439 479622225 785748433 472767398 965457253 991331934 597529696 916727816 872904711 665283056 898183727 723112660 713777611 718557419 197950719 735960272 932781953 841458811 925801653 239150754 553201558 384240371 158240217 497291234 731370259 917615083 371718504 987548086 863431683 226511066 735134482 186128339 359613592 451663681 430852600 742455433 683107012 714139825 666747607 643817392 519112910 398756705 72379514 82654133 800377222 292553478 470882424 582468224 276822502 22115967 804660026 131772845 195663474 728601005 427207462 552718672 724516654 549643421 134695781 863249637 589331603 82646173 181760777 65838094 279998226 584070686 683085648 394026241 922786778 968428542 690847033 88016835 854650323 437993251 445568435 105179908 753855434 187242209 316434977 901918574 82300856 328170670 483264886 62961372 768436561 661644018 337284920 823512464 877374550 807197159 491422374 533607496 260611058 832129408 608209567 545492321 54967615 351562466 185634902 904350579 475899328 203113891 605729042 191364308 526040850 151041721 550398018 112716039 298369553 229911395 265233552 757678349 150678222 563455919 424356553 746781275 9594906 8074406 717415352 776994908 962324345 416855988 475632819 744440530 465474216 292828274 846577305 718936675 737693570 404869018 193147034 419276531 295688685 261534910 66352941 110284959 652019740 854399411 52638898 607424378 734132214 193427254 130172516 803471701 80510413 288683581 862470495 716848674 322205426 780279063 673954850 371822459 954143129 859666578 684523920 967591606 115743077 27748041 698426832 865556128 807177763 345004468 635454195 334855245 942714952 895133175 278863486 312374675 989179499 278018873 412407651 647659144 712408241 125096027 589356018 165226099 697900078 628810259 914571751 636953548 184931047 924698870 640629960 996450783 208825688 337791586 574459370 444196469 729489426 403336421 503105329 248000065 806492103 621358161 284362659 43965211 766466194 302974760 414733926 812652491 674359525 206241896 896632874 642787622 47845131 900852293 392190535 222759478 625448684 228323787 153296663 995884051 720797029 769801278 576166617 126187822 330764133 32025043 511600892 481303425 599925297 166989202 345931358 784575474 260095286 191809850 861524595 533126418 83480533 563875917 176842169 722526448 830936489 486164262 811234810 600545259 79653499 36137100 142047574 256737973 405959429 17114410 995075376 260918392 545972631 875207273 992056806 415438798 379346191 641176164 750324793 873636621 692672298 516760185 799691044 219109364 356424054 817565464 926567975 915444176 486080478 577303739 799886360 485766700 158895651 49730033 155095286 461914987 451320722 198025643 590747891 257181801 827619518 285700313 185504522 105394315 289642110 12240844 658691562 351963008 524983802 260916310 939846351 177268322 734649533 461037661 735575680 112696379 38606709 196587310 69122209 841216520 933972302 685686868 484510389 474349263 645213921 717453839 438569574 236952103 331529489 29320644 584194786 638592882 56059819 300007390 916960343 398692574 559618402 610759310 403925313 839482840 434005949 233199075 865990010 203885509 907338765 710879019 942861557 192826408 891454160 170210802 628291271 885103963 434239103 64256488 657658090 6121596 584598775 532034497 917309263 356238758 780860774 668259244 588551783 992254740 190904561 600506848 174116311 858178525 607879144 404508032 317705129 927584781 153319809 958352184 50462982 772208393 189530513 64275568 333501092 884691637 438219351 496451362 774630672 557950945 108990875 837866824 976971984 18122591 341917134 766204401 11035216 815488940 636590255 344749398 281204172 358584737 748462590 21042850 710184246 481869656 942028004 10422414 493714343 252038901 640213057 108072818 729492341 800979254 675296582 731829764 901740294 778227242 736559462 432596829 671703781 3873472 854801888 421595773 305268128 639237154 879223025 281540825 161550784 421951080 607011218 773927021 353983938 929163675 976831131 737214711 437177459 911003946 977886153 776384391 906059587 350731856 982411419 112550185 817950394 114402492 27078575 355783089 914464354 157938947 96255927 637575220 811033920 572455717 126511515 385854281 342771781 765227333 457661183 860025438 168319813 951647844 246409306 981058062 833273637 801848780 603766631 133323074 783797234 981913738 74201627 782826563 912360010 768405340 423331602 945594317 215728470 628086285 379026768 584655584 806698849 197917387 106750794 736219327 181046536 644152190 888638947 948443458 389761038 319999617 669683971 960497457 561762144 728525176 707097808 93255231 854530617 323646822 68005262 935976804 47383578 988142060 930642743 98530742 2951383 381039669 202556545 235585300 585690545 677494290 568649151 17238496 352964239 139001347 743225082 10916239 104728896 511642466 368191389 676616043 631173123 274366157 553871264 662653468 135669082 634098688 376383268 83278011 912845208 825015903 677641755 628913099 228915139 159584195 902470545 271811088 795175571 463421063 599614549 439871455 315604595 21491254 324562215 114926099 373782490 791624844 925146327 528310125 40534582 850557678 437174636 424653508 976319161 926788568 818999319 598060606 682225480 762035081 582665795 387095094 150647604 805396458 799686176 518641895 805744133 158657663 770241922 345845311 815984974 369822896 951312810 639355238 66628857 510199308 785278757 671316742 664681277 113921007 831135888 852827855 661938565 694154103 670878778 374179544 738469043 224204602 337549210 608379358 691864183 238425162 815680961 286187227 405571170 292269611 500266160 289052241 131015092 961319418 161206616 934612565 803839696 300161642 51555129 803567460 521640442 852420420 414954644 407403462 143124069 618056134 367907056 966441712 182775161 387192385 147340490 908861776 428826001 288116839 372668200 831204178 720061069 47251348 490187087 961912760 895379712 784926233 164265966 515064545 233990283 527779031 590313053 45290863 137986675 401652341 821353919 883531964 110262865 104673797 547756508 954194086 74519759 221370563 97965837 453187497 596137490 713141434 976472290 713215298 88701855 620103969 812593745 360438982 596749312 462534742 448726527 352614143 841979055 578865261 858057216 172715381 483045321 717686400 634741451 168493759 446225432 849054166 752835045 782094713 64524741 47450468 399189046 465762429 234136284 466711687 792446529 517957104 112747500 300900976 930569166 914618257 719901873 72518904 989473268 289666094 275302355 145117293 449320740 352672512 397118805 622057253 693428630 793361632 988091606 202596268 235512644 527886034 587333341 125256922 42454103 29854262 478056111 243534956 86421673 36018555 964019139 293821189 65544430 740731741 322640404 387994083 477578788 782766586 493994153 197975729 36045554 32245226 604857885 294274656 38524996 871438246 785855769 544233588 278120484 570379935 744943049 988392673 315824716 98897630 127060222 360270327 165594053 124099762 31499491 530101337 230416700 324341814 351077910 515439065 568957964 931293077 422039590 215295166 350285909 643977747 794615068 854955172 652586357 701404119 115958014 98761475 751846077 744806577 984436760 483939782 780532320 286845056 752029531 644398367 156131812 993977884 118767025 672710329 837576952 82561337 876488971 343899459 389173750 485743912 396995444 561311188 49375609 823115703 796683410 846634408 718143931 380483610 152935543 502139680 249135014 33750800 375976778 126903949 526368625 444304140 68585521 65413997 147120728 66125676 689972874 427002270 331698343 239783832 622871517 493756044 317790966 345533985 761566588 596424097 78077466 886075285 701641079 779664258 962072839 635501592 412543869 262866212 915895471 724634033 297440663 543964743 845845965 359169911 21212740 598892667 948855808 434489527 673553611 533225471 292115176 73799530 332266845 599052827 532759692 261857561 613410862 562008461 435141332 915451708 952487218 351248425 187225170 818972073 661311415 671507594 92952109 694128766 680876436 531589086 490333935 971549927 473576799 109179161 996113989 899326735 327662525 863159089 776127097 389715498 72538038 350951224 165139868 763945206 537078441 771872237 838266911 480755959 484604192 151955040 778805552 492571831 678160405 341869695 265996110 736331774 776396694 897712837 429416004 670312694 265288382 304432981 986214987 532064327 735272173 48802093 800327281 716782833 765564250 808056560 891780714 357956163 934949901 980074999 126482651 835512101 112011894 735389948 134781498 950761085 507874033 258270302 609659146 794963719 205259346 381224999 878091215 683602549 977595567 727521305 891051935 989423895 362362425 498874846 487073578 722735967 190919287 702582195 618652276 249237165 990417948 861300252 226270087 909372590 700164391 209023494 321549787 836683187 397459250 326916098 257859974 721612367 393689279 165840627 90464246 983183133 692557784 54861674 286258550 171916286 946382438 65202337 801221062 493775950 432503309 768167430 242410847 621057679 560301125 528230671 280709263 329453617 658343023 115440052 150123998 531204446 509873214 23526087 491886330 294476143 408671732 737616128 905532508 435579279 119606746 77312648 720846389 186230283 915243247 300855468 920063295 383490500 705079090 476477742 483213128 790796418 770117313 454678947 205027093 680957876 810076409 625701419 46249213 478587896 146786168 431842958 349259967 593476705 123922927 597526508 941459769 882402617 14365056 708620321 44614924 388521505 723354853 7111035 278449223 496057713 115139552 857310887 86208096 716523276 146020193 232989991 162975603 818640881 695872453 649184359 358743985 179074478 739476347 786479717 333849901 821852780 236783850 884792152 451476037 930002689 36535052 297442544 74777707 186898468 485967551 324314427 873861717 89111911 415373025 897190031 378193193 88420449 851306963 272617451 173204458 79506581 525694386 503563796 381645043 763303445 354965421 207286378 170562812 508758589 114739107 504663926 610060732 478508735 484012961 820835233 823671901 778301858 186826585 962686607 669013213 664515744 110480314 533774146 527589790 959190926 289572592 567394675 741144927 14748469 440312348 463179590 833198613 13988408 515737603 987074755 774706092 585537268 119521180 695177623 48562943 79302403 946442120 320995361 150029804 5601071 564488860 228563111 286161047 481082496 212676374 192156548 313406559 560669556 314592690 271214397 475052015 612653047 207350208 289037112 393248660 608881500 666735319 903014167 321157092 477493817 176577606 843661076 991030803 351938845 18272620 615454048 334963003 862542418 604678872 743779258 372604009 60142848 285850683 973465843 712843061 128709555 30122074 939645868 551643646 895816055 477967422 287346183 683129578 767162209 760163571 155040829 450556453 224369435 769654752 409376420 34407284 918822828 644511466 415295694 828809596 229016815 412673977 918873078 769502918 30613609 42685417 395876290 999342295 882078125 14823982 604355163 707830147 678317654 844865796 417266362 778646705 852192674 113248630 756788037 954109081 288422403 824554502 603390970 837843698 399370061 587771115 500391140 257445972 409252296 329563087 678606928 52031061 685230420 581216498 225313762 258129560 158118353 165092751 767991625 168161193 259636706 547518954 77494277 281065259 676447087 939741197 308746987 298968167 692394549 397598583 722126636 817934271 655580320 237320979 283301766 827902250 139634137 576711017 632130628 449747465 286611918 761588067 400324161 916476474 778333071 718164856 396013462 737155374 429025146 907193118 670747185 137685361 343256982 885973711 322787307 744123300 719503390 389471957 730994646 638358408 916605939 328025936 560244325 489568307 311717077 264618243 979056549 718730356 855945735 4635912 309485296 111301644 403795956 742556375 145320450 97479152 865871288 104002528 881142402 866680186 213498413 407956349 723533541 129134769 860497283 145233509 898610061 328066227 289630733 728879616 848324800 886670958 599146041 246947485 575993224 390949609 876148922 155819446 437264672 359121614 993728118 517594146 884824142 867331537 305466472 546689128 74599966 782740603 57127888 846117385 37735530 215868828 312978553 871535038 371175339 894585224 45285348 166591131 824181798 873141250 17886550 641455257 72571418 513385888 791815474 913889862 511862454 722880082 93019538 877764564 479563216 385849468 381642371 491738068 854092115 778874639 901726531 52415827 231708952 64978131 205557354 529741766 326324520 678842498 776216617 426505439 5786226 763825495 305050226 596658506 33349779 168552906 142032044 860677911 958367026 673048565 205930842 554869593 472150719 973558178 239295823 857396094 342628697 997042282 859573455 164590489 542654663 540863604 772561942 321830942 361591312 524922701 800031818 15228325 482520237 663439291 162465314 8864772 975080090 68780803 989669873 329772302 499665379 582840850 917889364 409591853 181734402 108299203 247149575 947166563 633757436 355511701 118363335 444506333 419996993 106220549 452432074 465686126 877890135 530869879 352833063 366288869 30083474 201349071 936456561 439709750 18673009 894968939 363186599 960069868 144762036 467537017 86725679 928446642 994191712 691525108 817432307 579822218 572124683 676039641 537447589 486401472 391887722 335004066 906999215 468993282 832321442 649889252 595852866 775502515 846406762 223902341 898944242 203656826 462055619 288741349 89732570 598326940 321135313 498347189 163945768 307401462 321583304 133019621 153453305 773347965 494433240 477824361 563570919 315385979 605543473 316329137 656406289 541186759 626110278 241309592 947086614 414859104 12665054 242874978 932009611 951296434 699118722 65467514 411923585 679759385 930846120 662038911 262819165 675073580 105249086 129256259 54731440 904616188 557969138 2940283 854894072 892297342 799928264 587084632 399240744 791279411 817150433 894935776 324350540 380643615 770807706 10482104 686560704 664610619 997427169 185772893 196656521 792105592 77192122 509696889 32803786 435848003 579661589 816325246 593420463 581861861 492135971 281312515 146178262 602603695 341297024 251858799 495023112 754061878 670091924 678353236 452944698 318737587 877222629 290025762 608146163 835240196 325920193 94086236 115431178 14087456 999759428 456949666 871038204 611252901 654725080 15229549 794233955 867666377 292396323 539032979 361806698 460734271 823181779 99153027 735415883 279338346 679137595 429039388 246802824 682831371 596497742 456867774 120778021 687270271 851503808 551645441 954910533 460771256 833293049 432008568 878396337 957544980 118820287 711495130 829904568 933162675 43070100 72037822 624947254 827832290 186605905 838345057 903794592 11168433 618749580 574329638 415219979 103349271 723242697 526338482 421315688 353759962 813910110 330477660 546424393 988767453 741631019 464951279 857209514 944059290 586465446 184465531 2645460 714727744 670405783 706086266 468878366 119180152 844758297 938615835 288939809 53049166 134799440 407193856 231158468 120884151 124274422 92433330 615281709 97017115 854813811 357069742 228229000 474059424 549812163 380226515 752292722 419166976 787199180 470874070 969804380 135625271 93175512 883209184 651125939 764556459 120612277 420002399 504703734 731163998 120142444 284245610 398307263 200950334 17375572 748485848 151971929 718420659 512986562 999054894 179252387 424696662 648555241 73211067 38129752 773583688 655367299 68366320 395240998 150523470 81967365 687726557 274556053 208104490 799889126 227555379 785887252 6865352 479422157 925296642 783052545 543918994 127798021 442176789 429564050 330908868 322156182 423455983 937644120 903762408 122102644 365721240 185930335 970272541 70395721 169569044 35521243 915645859 957150478 775228065 356753333 472701686 256654296 499292354 625632834 888253809 954398057 663529005 887243706 827238766 582882217 578950933 334358409 738159507 647660039 969911239 871928082 196122645 694007432 713627729 397088382 887174826 344716139 844034250 462753516 454030488 459506904 230088752 857630477 329227252 888478244 19661131 748995091 446697726 91629203 305195597 288932531 103868240 888904662 917264172 981561094 42994805 713518371 236762987 12382518 372956710 974340726 36863676 315074159 637692948 347652906 363216368 39313562 721189958 302769933 665600071 468057391 183360863 527374644 270722079 998342912 665953950 538289486 723072647 897502008 599400677 894341756 868724663 353567310 276563206 820521823 131677481 812711321 770677414 731073404 430308032 45585350 376281942 530749500 355028261 653615965 919279080 837077260 878069521 814105609 295199520 517975755 247851706 687288306 232477369 325343164 514569580 690289544 377818218 917860873 860119553 643646868 818017193 418286820 461894748 404441391 417839220 117092638 16572904 975779187 501101434 477347150 767451039 640667732 209652539 525325426 475063379 911169220 46314364 395835060 213141341 776848658 937232944 408471263 767542499 922567223 405778798 171582443 330738691 870875869 150500629 156392026 233942288 462877377 603809616 219472217 747811150 464639883 571197854 21191488 427153185 400888640 943634883 256668133 622673983 489779991 225026513 269367209 317625692 26326596 23560773 808456041 620933785 898668403 204335278 949201795 352260089 696856616 655494254 711940742 510830179 155487645 196016075 296097420 592443754 9889611 833644079 467685208 841507376 120711121 39445435 613509224 754006553 668270222 930888696 775581824 816716312 785686341 487388624 143442711 736726884 416463721 347880005 333905561 779948244 336641637 390231027 879554965 266066537 7219034 824028755 665071020 16199472 16120201 563761045 174157646 431378157 845098260 291541947 838738068 834538315 933325965 878425148 584805440 104072156 183828586 97567773 157186134 114921260 677902360 174177216 291934966 990840168 972397170 218434787 581166448 513045310 251779336 1240228 899423648 483194482 265007080 798101608 889906075 336131683 167599816 400584501 168692789 106130641 159475470 656372017 711891518 124760787 725623239 894269186 272096831 491819499 614363555 235123179 663676571 936798346 717650089 104388664 583292156 370835349 316253806 274518490 726374020 786602586 525903593 22020058 389232182 423070059 868043754 926479733 199432703 221095672 262491026 885722084 359490098 995317728 463959062 495117285 813022656 710591502 73575321 546130328 416959205 923718371 247423511 104930489 184605989 198552257 775009056 497439743 553151678 588458881 806331118 12956195 289171451 929646080 44228494 138283024 697166285 640832305 62912244 332254924 856247269 264794387 208820812 20147058 354396822 609528239 946486594 66035757 338500881 437755689 554479261 868252471 596973588 777268844 791171051 942069065 510573046 84573605 547727798 224731426 781647390 634465364 975230291 487741576 448468505 736314597 66910808 60149523 252243714 752207736 917467049 446103403 741882740 332104711 799631122 757368085 117202483 81398597 59761066 94037419 834996513 849470920 425756902 340206205 736610736 491300937 269182306 667675627 134757045 713579308 663835391 847740560 500476818 475805160 474647831 209005206 668895632 46731469 752771157 152977668 458409141 483950958 862165972 750282803 777216818 520686274 531302862 103399074 886408126 137287650 536957125 242430861 178685220 669203264 309804262 930366944 690833304 19002897 520519855 727747927 175862345 975878541 649420199 612132738 274475232 857551978 837100925 736899657 213810847 587313767 231012506 578374533 83509204 485460041 488360339 781234197 232249842 812523675 335675462 643687297 943279251 290784 76121823 165868592 171797270 633006259 471072820 917014696 322121786 964051941 438621252 597754137 153188270 909277616 826033089 723332951 40897529 434266789 538214131 275201379 511456741 742899029 300032039 915364682 564294996 620304394 606969580 67061183 703674558 344234968 559830044 548219574 329108094 946742045 820419902 659710081 797290521 458113596 59869453 246193830 68760825 296019436 678296251 488905084 941679063 584283406 10121073 989535461 78977720 645620381 277880819 277943513 794766071 742396205 580368784 731912948 639486006 747053967 709156811 146729152 943171166 370564879 847982769 204527740 735661269 569775296 780139220 106575084 546984097 778890459 196570127 348076488 129606166 735322370 649910300 106784637 969461903 106691987 376118071 554057302 596816107 70476564 866164421 197893907 915621325 52327086 799601096 551160119 361281264 789011761 499893898 223853687 872421880 185390121 284399229 208912888 23998178 43460473 830325659 986014934 684